隨著組織轉(zhuǎn)向云優(yōu)先方法,云原生應(yīng)用程序開發(fā)的挑戰(zhàn)可能正在減緩開發(fā)周期。根據(jù)Tigera 4 月份的一項調(diào)查,隨著這種轉(zhuǎn)變,需要更高的安全能力。事實上,大多數(shù)開發(fā)人員將安全性視為云原生開發(fā)周期中的最大挑戰(zhàn)。
根據(jù)Secure Code Warrior最近的一項研究,開發(fā)人員在面臨相互競爭的優(yōu)先事項時,正在努力為他們的軟件設(shè)計安全性。三分之二的參與者承認(rèn),他們經(jīng)常在代碼中留下已知的漏洞和漏洞利用,只有 14% 的參與者將應(yīng)用程序安全列為重中之重。
這是因為,盡管他們想做正確的事,但“他們的工作環(huán)境并不總是讓他們很容易將其作為優(yōu)先事項,”Secure Code Warrior 聯(lián)合創(chuàng)始人兼首席執(zhí)行官 Pieter Danhieux 在一份聲明中說。
可能的原因包括代碼復(fù)雜性增加和開發(fā)人員勞動力短缺。公司文化和發(fā)展方法,以及缺乏安全技能,也可能有所貢獻(xiàn)。
正如 Secure Code Warrior 研究所說,“許多組織仍在采用傳統(tǒng)的軟件開發(fā)方法,同時應(yīng)對不斷變化的網(wǎng)絡(luò)安全風(fēng)險和需求。”
然而,安全團隊知道 DevSecOps,或者至少是 DevOps,在軟件開發(fā)開始時強調(diào)安全考慮的方法是至關(guān)重要的。根據(jù) Secure Code Warrior 的說法,如果做得好,安全方面的開發(fā)人員可以“通過減少導(dǎo)致返工的漏洞、保持軟件發(fā)布速度并在不影響創(chuàng)新的情況下確保代碼質(zhì)量來提高生產(chǎn)力”。
盡管 41% 的開發(fā)人員表示功能和安全性在他們的組織中同樣重要,但他們也表示,新特性和功能、應(yīng)用程序性能和按時完成比安全性更重要,是管理層的首要任務(wù)。
“我們的研究表明,開發(fā)人員實際上非常關(guān)注返工,而不一定是新功能,或者以安全的方式創(chuàng)建新功能,”Secure Code Warrior 的首席技術(shù)官 Matias Madou 告訴 EE Times。“他們的最終客戶需要新功能,并認(rèn)為質(zhì)量是給定的。因此,開發(fā)人員專注于讓產(chǎn)品更好、更快、更流暢,而不是將安全作為重中之重。”
您的代碼中有哪些漏洞?向左移動安全代碼并非易事
阻礙在開發(fā)周期早期集成安全代碼的三大障礙——向左移動——是缺乏時間、計劃和優(yōu)先級。
缺乏時間可能與勞動力短缺直接相關(guān)。“永遠(yuǎn)不會有足夠的人來確保安全,”麻豆說。“對于軟件安全,打破這種模式的唯一方法是確保開發(fā)人員成為安全故事的一部分。”
Jon Jarboe
Cycode 的產(chǎn)品營銷總監(jiān) Jon Jarboe 告訴 EE Times,開發(fā)人員和安全團隊都從管理層那里獲得了他們的優(yōu)先事項和方向。
“這份報告揭示的一件事是它們經(jīng)常不一致:安全團隊的優(yōu)先級可能與開發(fā)團隊的優(yōu)先級不一致。因此,開發(fā)人員可能被迫在開發(fā)目標(biāo)和安全性之間做出選擇。”
近三分之二的受訪者表示很難編寫沒有漏洞的安全代碼。工具和培訓(xùn)最常被認(rèn)為是整個開發(fā)生命周期中最重要的安全需求。
但Jarboe 說,安全工具通常是為安全團隊設(shè)計的,而不是為開發(fā)人員設(shè)計的,因此它們可能更具破壞性而不是有用。“這些安全工具也必須為開發(fā)人員設(shè)計。大多數(shù)安全公司現(xiàn)在可能正在解決這個問題,但他們在這方面的進(jìn)展或成功程度各不相同。”
在開發(fā)過程中使用工具的地方也很重要。在產(chǎn)品發(fā)布之前運行測試工具不會有足夠的時間來解決所有問題。Jarboe 解釋說,安全工具的使用方式以及它們在開發(fā)中的使用位置必須改變。
該報告還指出,開發(fā)人員表示,他們的公司依賴于現(xiàn)有或預(yù)先批準(zhǔn)的安全代碼和工具,這些代碼和工具只能解決已知漏洞,而不是使用所需的技能來編寫新的、無漏洞的代碼。
向左轉(zhuǎn)移安全代碼的主要障礙。
代碼、開發(fā)環(huán)境變得越來越復(fù)雜
麻豆說,代碼和開發(fā)環(huán)境的日益復(fù)雜絕對是一個問題。
“如果你問開發(fā)人員在做什么,那就是代碼質(zhì)量和讓事情變得更簡單,”他說。“他們在編寫代碼時列出的首要任務(wù)是代碼質(zhì)量和技術(shù)債務(wù)減少,同樣的數(shù)字表示他們的首要任務(wù)是應(yīng)用程序性能。”
環(huán)境復(fù)雜性的增加部分是由于開發(fā)人員繼續(xù)在新舊語言和環(huán)境中工作。例如,Secure Code Warrior 提供 60 種不同語言和框架的培訓(xùn)。
“隨著應(yīng)用程序向微服務(wù)轉(zhuǎn)移,軟件復(fù)雜性肯定會隨著向云原生的轉(zhuǎn)變而增長,”Jarboe 說。“這些現(xiàn)在由不同的團隊開發(fā),他們必須相互溝通并與安全團隊溝通,這可能很困難,并增加了公司內(nèi)部的復(fù)雜性。”
所有這些都給公司文化帶來了壓力。“因此,要取得成功,組織的文化必須改變一直以來的做事方式,”Jarboe 說。
然而,這些變化現(xiàn)在特別困難,因為開發(fā)人員必須應(yīng)對所有并行轉(zhuǎn)換,包括 DevOps 和敏捷運動,以及大流行。
可以提供幫助的一件事是自動安全網(wǎng)或護(hù)欄。“沒有[這些],開發(fā)人員無法始終以他們需要的速度解決問題,以滿足最后期限,”Jarboe 說。“但如果你有自動測試來告訴你代碼何時被破壞,你就可以專注于修復(fù)問題,而不是擔(dān)心破壞問題。”
培訓(xùn)和技能提升的需要
開發(fā)人員對是否需要更多培訓(xùn)給出了相互矛盾的回應(yīng)。雖然大多數(shù)人認(rèn)為他們之前的安全代碼培訓(xùn)良好或優(yōu)秀,但 92% 的受訪者表示他們團隊中的其他人需要更多的安全框架培訓(xùn)。
盡管仍然存在包含漏洞的代碼,但 81% 的人表示他們會定期在工作中進(jìn)行安全培訓(xùn)。然而,只有 43% 的人表示培訓(xùn)與他們的工作高度相關(guān),超過一半的人表示不熟悉常見的軟件漏洞、如何利用這些漏洞以及避免這些漏洞的方法。
“組織并不總是給開發(fā)人員時間來提高自己的技能,”麻豆說。“項目的最后期限通常是昨天,因此他們必須開發(fā)新的特性和功能,而不考慮安全性,而只關(guān)注組織的短期目標(biāo)。”
從代碼中創(chuàng)建漏洞到發(fā)現(xiàn)漏洞平均需要大約兩年時間。因此,以軟件安全為目標(biāo)的組織必須提前數(shù)年進(jìn)行規(guī)劃,麻豆解釋說。“他們還必須考慮新員工的技能和培訓(xùn)。”
通常,開發(fā)人員無法明確說明安全編碼的實際含義。這是因為大學(xué)課程中很少有關(guān)于如何創(chuàng)建安全代碼的課程。
“為什么要提高自己的編碼水平?因為在開發(fā)周期開始時你會犯錯誤,每個人都會犯錯,”麻豆說。“只有在周期結(jié)束時,您才會意識到您的代碼具有安全影響并且可能被濫用。因此,如果您學(xué)習(xí)如何編寫安全代碼,您將被視為優(yōu)秀的開發(fā)人員。在報告中,大多數(shù)經(jīng)理表示他們在雇用新開發(fā)人員時需要安全技能。”
審核編輯 黃昊宇
-
代碼
+關(guān)注
關(guān)注
30文章
4887瀏覽量
70266 -
開發(fā)人員
+關(guān)注
關(guān)注
0文章
19瀏覽量
6752
發(fā)布評論請先 登錄
如何在恩智浦FRDM開發(fā)平臺上實現(xiàn)代碼的高效復(fù)用

Thingy:91 X 為開發(fā)人員提供了一個經(jīng)過全球認(rèn)證的、多傳感器、電池供電的蜂窩物聯(lián)網(wǎng)原型平臺
適用于Versal的AMD Vivado 加快FPGA開發(fā)完成Versal自適應(yīng)SoC設(shè)計

Java開發(fā)者必備的效率工具——Perforce JRebel是什么?為什么很多Java開發(fā)者在用?

NanoEdge AI Studio 面向STM32開發(fā)人員機器學(xué)習(xí)(ML)技術(shù)

使用Tracealyzer調(diào)試Zephyr中的優(yōu)先級反轉(zhuǎn)

安波福攜手風(fēng)河助力開發(fā)人員開展測試左移
GoPoint嵌入式開發(fā)平臺 釋放i.MX潛力 簡化Linux開發(fā)

QNX發(fā)布創(chuàng)新汽車軟件解決方案QNX Cabin
低代碼在敏捷開發(fā)中的應(yīng)用
Wine開發(fā)系列——如何使用Wine日志調(diào)試問題
MSPDebugStack開發(fā)人員指南

汽車異構(gòu)硬件平臺開發(fā)如何進(jìn)行靜態(tài)代碼分析

評論