<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    依賴性問題:解決全球開源軟件安全問題

    VSole2022-05-07 13:11:17

    一個孤獨的程序員依靠自己的天才和技術敏銳度來創建下一個偉大的軟件的想法總是有點牽強。今天,它比以往任何時候都更像是一個神話。競爭激烈的市場力量意味著軟件開發人員必須依賴數量不詳的其他程序員創建的代碼。因此,大多數軟件最好被認為是組裝——多樣化的,通常是開源的組件,通常稱為依賴項,與一些自定義代碼拼接到一個新的應用程序中。

    這種軟件工程范式——程序員重用開源軟件組件,而不是重復他人的勞動——這已經帶來了巨大的經濟收益。根據現有的最佳分析,開源組件現在占大多數軟件應用程序的90%。經濟上重要且廣泛使用的開源組件——谷歌的深度學習框架TensorFlow或其Facebook贊助的競爭對手PyTorch、無處不在的加密庫OpenSSL或容器管理軟件Kubernetes——列表很長,而且還在不斷增長。軍事和情報界也依賴開源軟件:像Palantir這樣的程序已經成為對于反恐行動至關重要,而F-35包含數百萬行代碼。

    問題在于開源軟件供應鏈可能會引入未知的、可能是有意的安全漏洞。先前對所有公開報告的軟件供應鏈危害的一項分析表明,大多數惡意攻擊都針對開源軟件。換言之,針對專有軟件(如SolarWinds)的搶眼軟件供應鏈攻擊實際上只占少數案例。因此,由于現代軟件依賴樹的巨大復雜性,現在阻止攻擊變得很困難:依賴于其他組件的組件無限地依賴于其他組件。了解您的軟件中存在哪些漏洞對于軟件開發人員來說是一項全職且幾乎不可能完成的工作。

    幸運的是,這事還有希望。我們建議軟件生產商和政府監管機構可以采取三個步驟來提高開源軟件的安全性。首先,生產者和消費者應該接受軟件透明度,創建一個可審計的生態系統,其中軟件不僅僅是通過網絡連接傳遞的神秘blob。其次,軟件開發者和消費者應該采用軟件完整性和分析工具來實現知情的供應鏈風險管理。第三,政府改革可以幫助減少開源軟件入侵的數量和影響。

    依賴之路

    關于可重用軟件組件興起的傳統說法通常可以追溯到1960年代。貝爾實驗室的Douglas McIlroy等軟件專家已經注意到構建新軟件的巨大費用。為了使任務更容易,McIlroy呼吁創建一個“軟件組件”子行業,用于大規模生產軟件組件,這些組件將廣泛適用于機器、用戶和應用程序——或者換句話說,這正是現代開源軟件供應。

    當開源開始時,它最初是圍繞提供監督、一些管理和質量控制的技術社區聯合起來的。例如,Debian是基于Linux的操作系統,由全球開源軟件開發人員網絡提供支持,這些開發人員維護和實施關于哪些軟件包將成為和不會成為Debian發行版一部分的標準。但是這種相對密切的監督已經讓位于一個更自由、可以說更具創新性的包注冊系統,主要由編程語言組織。將這些注冊項視為軟件開發人員的應用商店,允許開發人員下載免費的開源組件來構建新的應用程序。一個例子是Python包索引,它是Python編程語言的包注冊表,任何人——從理想主義的志愿者到公司員工再到惡意程序員——都可以在上面發布代碼。這些注冊表的數量是驚人的。

    這種軟件模型的有效性使得社會很大程度上依賴于開源軟件。開源倡導者很快就援引萊納斯定律為當前系統辯護:“只要有足夠的眼睛,所有的錯誤都是淺薄的。” 也就是說,由于軟件源代碼是免費檢查的,軟件開發者在網上工作和共享代碼會在影響社會之前發現問題,因此社會不應該過分擔心它對開源軟件的依賴,因為這支無形的軍隊會保護它。如果你瞇著眼睛,這在1993年可能是正確的。但從那以后發生了很多變化。2022年,屆時將有數億新的幾行開源代碼,眼睛太少,bug就會很深。這就是為什么在2018年8月,花了整整兩個月的時間才發現一個加密貨幣竊取代碼已被溜進下載超過700萬次的軟件中。

    事件流

    故事開始于開發者Dominic Tarr將名為“event-stream”的開源JavaScript包的發布權轉讓給僅通過句柄“right9ctrl”知道的另一方。轉讓發生在GitHub 上,GitHub是數千萬軟件開發人員經常光顧的流行代碼托管平臺。用戶right9ctrl提出維護事件流,當時每周下載近200萬次。Dominic Tarr的決定是明智而平凡的。他在授權許可下免費創建了這款開源軟件——該軟件按原樣提供——但他自己不再使用它。他還已經免費維護了數百個其他開源軟件。因此,當 right9ctrl請求控制權時,Tarr 同意了該請求。

    將一個開源軟件的控制權轉移給另一方總是在沒有任何后果的情況下發生。但這一次卻出現了惡意扭曲。在Tarr轉讓控制權后,right9ctrl添加了一個新組件,該組件試圖從受害者的計算機中竊取比特幣。數以百萬計的計算機下載了這個惡意軟件包,直到開發者Jayden Seric在 2018年10月發現異常。

    事件流只是代碼礦中的金絲雀。近年來,計算機安全研究人員發現攻擊者使用了一系列新技術。有些人在模仿域名搶注:誘騙拼錯軟件包名稱的軟件開發人員下載惡意軟件(dajngo與django)。其他攻擊利用軟件工具錯誤配置,誘使開發人員從錯誤的軟件包注冊表中下載軟件包。這些攻擊的頻率和嚴重程度在過去十年中一直在增加。而且這些統計數據甚至不包括開源軟件中可能更多的意外安全漏洞案例。2021年底以來,廣泛使用的log4j軟件包的無意漏洞促使白宮召開開源軟件安全峰會。發現此漏洞后,一位記者稍稍夸張地為一篇文章命名為“互聯網著火了”。

    三步走計劃

    值得慶幸的是,包括美國政府在內的軟件生產商和消費者可以采取幾個步驟,使社會能夠在最大限度地減少這些風險的同時獲得開源軟件的好處。第一步已經得到了美國商務部和工業界的支持,它涉及使軟件透明化,以便對其進行評估和理解。這始于鼓勵使用軟件物料清單的努力。該清單是一個軟件組件的完整列表或清單。有了這個列表,軟件就可以更容易地搜索可能受到威脅的組件。

    從長遠來看,該措施應該超越簡單的組件列表,包括有關誰編寫軟件以及如何構建軟件的信息。借用日常生活中的邏輯,想象一種食品具有明確指定但未知且未經分析的成分。這份清單是一個好的開始,但如果不進一步分析這些成分,大多數人都會通過。個體程序員、科技巨頭和聯邦組織都應該對軟件組件采取類似的方法。這樣做的一種方法是采用Software Artifacts的供應鏈級別,這是一套用于防篡改組織的軟件供應鏈的指南。

    下一步涉及軟件安全公司和研究人員構建工具。首先,簽署和驗證軟件,其次,分析軟件供應鏈并允許軟件團隊對組件做出明智的選擇。簽名商店項目,Linux基金會、谷歌和許多其他組織之間的合作,就是這樣一項努力,專注于使用數字簽名使開源軟件的監管鏈透明和可審計。這些技術方法相當于防篡改密封的數字等效物。國防部的Platform One軟件團隊已經采用了Sigstore的元素。此外,收集、管理和分析全球軟件供應鏈以應對攻擊的軟件供應鏈“觀察站”也可以提供幫助。一個可能由大學聯盟運營的觀測站可以同時幫助衡量開源軟件入侵的普遍性和嚴重性,提供支持檢測的基礎數據,并定量比較不同解決方案的有效性。Software Heritage Dataset提供了這樣一個觀測站的種子。各國政府應幫助支持這一舉措以及其他類似的以安全為重點的舉措。科技公司還可以采用各種“營養標簽” 項目,這些項目提供軟件項目供應鏈“健康”的概覽。

    然而,這些相對技術性的努力將受益于更廣泛的政府改革。這應該從修復識別和披露開源漏洞的激勵結構開始。例如,軟件許可中通常包含的“ DeWitt 條款”需要供應商在發布對軟件安全性的某些評估之前獲得批準。這減少了社會對哪些安全實踐有效而哪些無效的知識。立法者應該找到一種方法來禁止這種反競爭行為。國土安全部還應考慮為開源軟件漏洞賞金設立一個非營利基金,獎勵發現和修復此類漏洞的研究人員。最后,正如最近的網絡空間日光浴室委員會所提議的那樣,網絡統計局可以跟蹤和評估軟件供應鏈危害數據。這將確保相關方不會被困在構建重復的、特殊的數據集上。

    如果沒有這些改革,現代軟件將變得像弗蘭肯斯坦的怪物,一個笨拙的可疑部分的匯編,最終轉向它的創造者。然而,隨著改革,美國經濟和國家安全基礎設施可以繼續受益于開源合作所帶來的活力和效率。

    原文鏈接:

    https://warontherocks.com/2022/05/dependency-issues-solving-the-worlds-open-source-software-security-problem/



    原文來源:網空閑話

    “投稿聯系方式:010-82992251 sunzhonghao@cert.org.cn”

    軟件供應鏈系統
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    信息通信技術(ICT)供應鏈包括硬件供應鏈軟件供應鏈,通常涵蓋采購、開發、外包、集成等環節。其最終的安全很大程度上取決于這些中間環節,涉及到采購方、系統集成方、網絡提供方以 及軟硬件供應商等【1】。ICT 供應鏈是所有其他供應鏈的基礎,是“供應鏈供應鏈”【2】。
    分析技術如今已經成為企業管理業務的基礎,分析帶來的一些好處實際上是相互疊加的。 越來越多的企業正在使用分析來增強其安全性。他們還使用數據分析工具來幫助簡化物流流程,并確保供應鏈更有效地運作。這些企業意識到,分析對于幫助提高供應鏈系統的安全性是無價的。 到2026年,全球安全分析市場規模將超過250億美元。人們需要了解分析在供應鏈安全中的更多好處。
    鑒于國家關鍵基礎設施和重要資源(Critical Infrastructure and Key Resources, CIKR)對ICT技術的依賴,通過國家安全審查識別和控制ICT供應鏈風險成為保障國家安全的重要手段。國外的做法通常是利用與外國投資相關的國家安全審查手段,我國則是利用網絡安全審查的方式,這在我國的《國家安全法》中有所提及,網絡安全審查是國家安全審查在關鍵信息基礎設施保護方面的延伸。
    新推出的開放框架尋求為公司和安全團隊提供全面且可行的方式深入了解軟件供應鏈攻擊行為及技術。這項名為開放軟件供應鏈攻擊參考(OSC&R)的計劃由以色列軟件物料安全管理公司OX Security主導,評估軟件供應鏈安全威脅,覆蓋一系列攻擊途徑,比如第三方庫和組件漏洞、構建及開發系統供應鏈攻擊,以及被黑或惡意軟件更新包。
    憑借在軟件供應鏈安全的豐富實踐和技術積累,奇安信申報的“基于DevOps的供應鏈安全實踐”和“開源軟件安全治理體系”獲2022安全守衛者計劃優秀案例。中國信通院還公布了“業務安全推進計劃”成員單位,奇安信集團入選為首批成員單位。
    近日,OX Security發布了業界首個軟件供應鏈攻擊框架——OSC&R(開放軟件供應鏈攻擊參考框架),可幫助企業評估軟件供應鏈安全威脅。
    不幸的是,“軟件供應鏈安全指南”再次強化了這種謬誤。該指南要求集中化管理的安全團隊對軟件工程活動施加重大限制,從而實現“將安全作為重中之重”。為了安全起見,速度甚至可靠性都被視為合理的“傷亡代價”。對于政府情報部門而言,國家安全是主要使命,因此他們認為安全摩擦和障礙是值得的。該指南明確表示不鼓勵開源軟件。事實上,為了推銷廠商的安全產品,指南甚至給出了諸如手動發布流程之類的危險建議。
    隨著軟件產業的快速發展,現代軟件大多數是被“組裝”出來的,不是被“開發”出來的。各類信息系統的軟件供應鏈也越發復雜多元,復雜的軟件供應鏈會引入一系列的安全問題,導致信息系統的整體安全防護難度越來越大。如今軟件供應鏈已經成為國內外對抗的焦點,直接影響關鍵基礎設施和重要信息系統安全。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类