近日,根據根據WhiteHat Security的一項新研究,在制造業、公共服務、醫療保健、零售、教育和公用事業等行業中使用的應用程序中,至少有50%包含一個或多個嚴重的可利用漏洞。
而根據AppSec Stats Flash 今年啟動的應用安全調查報告,制造業的應用安全“暴露窗口”風險最大,該行業近70%的應用程序至少具有一個嚴重的可利用漏洞。
WhiteHat在過去三個月中記錄的前五大類漏洞分別是信息泄漏、會話到期、跨站點腳本、傳輸層保護不足和內容欺騙。報告的作者指出:“發現和利用上述漏洞所需的工作和技能門檻很低,很容易受到攻擊。”
與此同時,行業用戶緩解關鍵漏洞的平均時間偏長。報告發現,所有行業的平均漏洞緩解時間為189天。不過令人欣慰的是,過去12個月的平均天數呈下降趨勢(同比減少了5天)。漏洞緩解表現最糟糕的三個行業——教育、公共管理和房地產,緩解關鍵漏洞平均用時都超過了一年之久。
應用安全人才需求激增
應用程序開發安全已經成為網絡安全未來發展的關鍵所在。一項最新的行業研究表明,開發安全已經成為增長最快的網絡安全技能。預計未來五年開發安全技能的需求將增長164%。五年內,開發安全人才的職位缺口將從2020年的29635人擴大到48601人。
上述調查發現提出了重要的問題:什么是應用程序開發安全性?是什么在推動“安全左移”和開發安全需求的快速增長?
什么是應用開發安全
首先,開發安全是通過查找和修復漏洞來增強應用程序的防御能力。顧名思義,此過程通常發生在應用程序投入生產環境之前的開發階段。但也可能在所有者部署了這些應用程序之后發生。
測試應用程序開發安全性的方法有很多,統稱為應用程序安全性測試(AST),主要有以下三大類:
根據Verocode發布的《2020年軟件安全現狀報告》,結合使用多種掃描類型(包括靜態分析(SAST)、動態分析(DAST)和軟件組成分析(SCA))的團隊可以提高修復率。那些同時使用SAST和DAST的人可以把漏洞修復工作縮短24天。而在SDLC中進行自動化安全測試比非自動化測試發現半數漏洞的速度要快17.5天。
總之,用于軟件安全測試的(自動化)工具需要與研發團隊現有的研發流程和安全實踐匹配融合,并具備與研發管理平臺融合的能力。
為什么需要應用程序開發安全性?
對應用程序開發安全性的需求不斷增長反映了兩個持續的趨勢。
沒有開發安全就沒有業務安全
軟件漏洞對企業構成重大威脅。弱的服務器端控制、不安全的數據存儲、破解的密碼以及其他問題為外部攻擊者竊取信息打開了方便之門。潛在的客戶可能會因為應用程序開發安全性問題而選擇不與容易遭受數據泄露的實體打交道。
最后,客戶和業務合作伙伴可能比監管部門和消費者更加關注供應鏈合作方的應用開發安全問題。企業應當在遭受攻擊之前就告訴客戶,他們使用了哪些應用程序和工具來編寫安全代碼。在某些情況下,客戶對開發安全施加對壓力比監管機構和合規審計員更大。這表明開發安全已成為一種關鍵的業務方法,企業可以通過這種方法與客戶一起開展業務,同時保持保持緊密互信的伙伴關系,而不是數據泄露事件披露之后。
開發人員的最佳做法
正如工作場所所需的安全防御技能始終在變化一樣,開發安全的技能本身也在變化。開發人員工具鏈內置的軟件組件分析工具以及有限的防御測試, 可能會在未來幾年內取代舊的AST方法。行業專家預測,到2022年,自動化解決方案將能夠修復SAST工具發現的10%的漏洞。
這些預測揭示了應用程序開發安全發展方向的趨勢。但是,這些趨勢與當下開發人員的安全開發最佳實踐并不沖突。例如,開發人員應當意識到,他們幾乎不需要從頭開始編寫自己的代碼。他們不能寄希望于“右側的”安全防護。相反,開發人員可以使用安全框架來推動其代碼開發流程,他們還應確保使用的是最新版本的第三方代碼或庫。
開發人員還應該注重團隊合作的力量,與安全架構師和運營團隊通力合作實施威脅建模。此過程不僅有助于發現和分類潛在威脅,還可以促進溝通和相互理解,這是建設DevSecOps文化的基礎工作。