Black Hat 2022大會焦點:軟件供應鏈安全
黑帽大會以硬件和傳統軟件利用而為人熟知,不過今年展現了更多軟件供應鏈安全問題,表明威脅局面正在發生改變。
以往,黑帽大會及其姐妹會議 DEF CON 以高層次的硬件和軟件利用而頻上頭條。除上述內容外,今年舉行的第25屆黑帽大會將討論針對支持現代 DevOps 組織機構的開發人員、開源模塊和底層基礎設施。這些演講標志著威脅局面的轉變以及軟件供應鏈面臨的越來越多的安全威脅。
01 參會人員關心什么?
黑帽大會發布了《供應鏈和云安全風險是首要考慮》的調查報告。180多名經驗豐富的網絡安全專業人員的研究結果表示,針對云服務的攻擊、勒索軟件和全球供應鏈風險最令人擔憂。
2021年是供應鏈攻擊之年,組織機構了解到全球供應鏈可被濫用于攻陷大量受害者。當問到供應鏈以及廠商和客戶之間的關系時,53%的受訪人員表示,由第三方提供商向所在企業提供的云服務或網絡服務中的漏洞是最擔心的網絡安全問題;同樣比例的受訪人員認為,由合同承包商、供應商和客戶維護的系統、應用程序和網絡中的漏洞是最令人擔心的;34%的受訪者認為從第三方購買的系統中現成可用軟件中的漏洞是最關心的兩大問題之一;26%的受訪人員表示最擔心的是位于開源組件所引入商業軟件或云服務中的漏洞。
與2021年的黑帽大會參會人員調查報告顯示,擔心第三方系統和應用程序中的漏洞、云服務或網絡服務中的漏洞和現成可用軟件中的漏洞的受訪人員比例分別是60%、55%和47%。這一結果與61%的安全專業人員擔心微軟 Exchange 和其它現成可用應用程序中的漏洞這一結果一致。
當提到當前面臨的最大的威脅和挑戰時,39%的參會人員表示最擔心的是:釣魚攻擊和其它形式的社工攻擊 (39%),具有針對性的復雜攻擊 (35%),針對供應商、合同承包商或其它合作伙伴等的攻擊 (28%),以及云服務提供商的潛在攻陷 (26%)。
幾年來,勒索軟件從以加密數據交換勒索金演變為破壞系統或擦除數據的復雜攻擊。59%的受訪人員認為,近兩年來自己所在組織機構遭受的勒索威脅在增多。雖然遭受的攻擊在增多,但96%的安全專業人員表示已能夠成功攔截或將勒索攻擊的影響最小化。
如下是本次大會與軟件開發和供應鏈風險相關的演講和部分相關主題。
02 開發團隊成為攻擊目標
今年大會的一個很明確的主題是DevOps 組織機構使用的工具和平臺的安全性,很多演講解決的是閉源和開源軟件的源代碼管理系統中的威脅問題。
例如,NCC Group 公司的研究人員的演講“RCE即服務:從五年真實CI/CD管道攻陷事件中獲得的經驗教訓”,講述了自己多年來在多家規模不一的企業中測試開發團隊安全性的工作。他們將CI/CD管道稱為“軟件供應鏈中最危險的潛在攻擊面”,認為這些開發平臺是任何企業IT基礎設施中的“明珠”,使得攻擊者能將本意在加速軟件開發的工具轉變為惡意的“遠程代碼執行即服務”平臺。另外,他們還討論了抵御CI/CD管道遭攻擊的最佳方法。
IBM X-Force 團隊的研究員圍繞“DevOps 環境中的威脅”主題,挖掘了源代碼管理系統如 GitHub Enterprise、GitLab Enterprise 和 Bitbucket 等可遭攻擊和攻陷的多種方式。
Hawkin 的演講題目為“控制來源:濫用源代碼管理系統”,講述了可導致惡意人員訪問SCM系統的多種攻擊場景。他還發布了便于實施SCM攻擊如偵察、用戶角色操縱、倉庫接管和用戶模擬等的開源工具,以及給出如何抵御SCM系統攻擊的指南。
03 開源:風險生意
鑒于軟件行業在開發過程中對開源組件的嚴重依賴,以及通過開源平臺和代碼進行攻擊變得普遍,開源網絡風險是本次大會的另外一個中心議題。例如,Synopsys 公司發現,2021年平均每款軟件應用依賴于500多個開源庫和組件,近兩年來增加了77%。攻擊者也注意到了這一點,很多攻擊針對的是嚴重依賴于開源倉庫如 PyPi 和 npm。
黑帽大會注意到了這一點,多個演講探索的正是開源代碼帶來的風險以及如何進行修復。
例如,三名研究員 Jonathan Leitschuh、Patrick Way 和 Shyam Mehta 在演講中試圖解決開源安全中的一個關鍵問題:如何批量從安全響應角度應對大規模開源平臺如GitHub 等帶來的挑戰。雖然現代工具可能允許我們自動化漏洞掃描和識別工作,但結果往往使安全人員不得不擔負評估、分類和響應大量已識別缺陷的壓力。為此,他們提出了一種解決方案:自動化批量拉取請求生成以及使用工具如OpenRewrite來進行大規模的安全響應。
另外,隨著企業在大規模的開源代碼倉庫中使用人工智能,期待有一天開發編程機器人取代開發人員,紐約大學和卡爾加里大學的研究員給出演講“‘配對’審查的必要性:GitHub Copilot 做出的易受攻擊代碼貢獻”,分析了Copilot 的輸出。這款基于AI的配對機器人基于開源的GitHub代碼訓練深度學習模型。然而,研究人員發現很多代碼“寫得不好”。另外,微軟基于AI的推特聊天機器人表明,人工智能在吸收輸入和梳理模式方面很優秀,但在評估所獲得信息的底層質量方面非常糟糕。
對Copilot 代碼的分析發現很多常見缺陷,如SQL注入、緩沖區溢出和釋放后使用漏洞等。實際上,在89個不同場景通過 Copilot AI生成的1689條建議中,大約40%的建議易受攻擊。當然,這一演講說明開發組織機構應將低層次的編碼工作交給機器人,但GitHub 倉庫中存在高密度的缺陷也是組織機構需要特別注意的,它們應當在依賴關系創建之前而不是創建之后,評估開源組件的質量和穩定性。
04 開發人員:安全房間里的大象
DevOps 安全房間中的大象(即非常顯而易見但一直被忽略的問題),當然是開發人員本身。雖然源代碼分析工具能夠改進專有和開源代碼的安全性評估,漏洞掃描可以識別出所開發代碼中的缺陷和弱點,但最佳安全“修復方案”源自更好地編寫的高質量代碼。
而這就是Adam Shostack 在演講中提到的。他是一名在威脅建模、安全開發和DevOps方面的專家,講述了很多組織機構在培訓開發人員使其在不犧牲其它優先事項的情況下安全編碼時面臨的“好高騖遠”的問題。在演講中他提到組織機構應如何衡量對開發人員的安全培訓效果。培訓的目的不是出品“絕地武士般質量”的安全編碼開發人員,而是提升開發人員的安全意識和技能,減少困擾所開發應用程序的常見且普遍的安全問題。他指出,“反叛不是由一個絕地武士實施的。”為此,他提到應提供“知識腳手架和分層學習方法”,擴展到開發組織機構中。