<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          供應鏈攻擊:保護軟件供應鏈的 6 個步驟 | IDCF

          共 5129字,需瀏覽 11分鐘

           ·

          2022-02-22 15:30

          來源:云原生技術愛好者社區(qū)
          作者:MACKENZIE

          本文著眼于軟件供應鏈攻擊,它們究竟是什么,以及您可以遵循的 6 個步驟來保護您的軟件供應鏈并限制供應鏈攻擊的影響。

          在過去幾年中,我們看到軟件供應鏈攻擊大幅增加。什么是供應鏈攻擊?這是一種網絡安全攻擊,攻擊者將惡意代碼或組件放入受信任的軟件或硬件中。這種攻擊的目標是能夠滲透到受影響組件鏈下游的組織。

          在最近的歷史中,供應鏈攻擊的重點一直是受損的硬件,但隨著一些引人注目的事件發(fā)生,我們已經看到話題轉向了軟件。本文將專門研究與軟件相關的供應鏈攻擊,并使用最近的示例來展示公司可以采取哪些措施來保護自己免受此類攻擊。


          一、軟件供應鏈



          要理解這種類型的攻擊,我們需要熟悉當今應用程序不是單一軟件的概念。它們由數(shù)百個構建塊、開源庫和包、SaaS 工具、DevOps 系統(tǒng)、云基礎設施等組成。這變得更加復雜,因為這些構建塊中的每一個也是由許多不同的構建塊構建而成的。如果您分層考慮這一點,一個軟件可能有數(shù)百層深,每個組件都有依賴關系,直到您一直深入到 CPU 指令集。您經常會聽到開發(fā)人員使用的一句話,“全都是烏龜”。這是一個描述無限回歸問題的表達,指的是海龜無限地站在對方的背上。轉化為軟件,我們在軟件供應鏈中面臨的一些問題和對與軟件供應鏈相關的無限范圍問題的看法。

          “世界每天都在變得越來越互聯(lián),但在安全方面,我們的行為不像它的互聯(lián)”

          使供應鏈攻擊如此令人擔憂的是,受其影響的組織往往無力阻止它。您可以控制源代碼,可以控制您選擇使用的組件和工具,但幾乎無法控制他們依賴的組件和工具。如果您承認 100% 安全或“不可破解”是不可能的,那么即使您非常小心地處理軟件供應鏈中的元素,您也永遠無法消除供應鏈攻擊的風險。但是,您可以降低風險,在本文中,我們將介紹您可以采取的 6 個步驟來限制此類攻擊的風險和損害。

          以下是供應鏈中多個攻擊面的示例:

          (供應鏈中多個攻擊面的示例)

          我們想要一個完全免疫的供應鏈,但實際上它是不存在的。


          二、供應鏈攻擊的最新例子



          有許多不同類型的軟件供應鏈攻擊針對不同的組件以在組織中立足。為了更好的理解,我們將查看最近三個不同類型的此類攻擊的示例。

          2.1 SolarWinds - 通過具有特權訪問權限的受信任系統(tǒng)進行攻擊

          (SolarWinds 供應鏈攻擊)

          如果不提及 SolarWinds 攻擊,那么就無法撰寫關于供應鏈攻擊的文章。它已成為它們所代表的危險的典型代表。在 SolarWinds 的案例中,攻擊使用了具有提升權限的 IT 基礎設施監(jiān)控. 這種攻擊是最糟糕的情況之一,受感染的系統(tǒng)不僅被數(shù)以萬計的高端客戶端所使用。

          例如在軍隊和政府內的其他領域,名為 SolarWinds Orion 的目標早在 2019 年 9 月就遭到入侵,因為該軟件在網絡上具有管理員級別的訪問權限,所以可以隨意進行軟件安裝。攻擊者用于測試漏洞的第一批代碼痕跡于 2019 年 10 月被注入。直到 2020 年 2 月,被稱為 Sunburst 的惡意代碼才被注入, 被注入到 Orion 軟件中,并于 3 月開始部署到其 18,000 名用戶。

          Orion 代碼中的 Sunburst 攻擊為攻擊者提供了進入 SolarWinds 客戶的后門,其中一些受影響的客戶包括國土安全部、國家商務和財政部、FireEye、微軟、英特爾、思科和德勤等。

          通過以 SolarWinds 軟件為目標并利用安全漏洞(仍在爭論中),攻擊者能夠訪問世界上一些最受保護的組織。其中許多組織被認為是“不可入侵的”(盡管任何稱職的安全專家都會告訴您這是不可能的),或者至少擁有最先進的安全保護措施。但是,通過利用他們擁有特權訪問權限的部分供應鏈,他們能夠滲透到這些不可攻擊的組織中,并在很長一段時間內不被發(fā)現(xiàn),從而繞過防御點。

          2.2 Codecov - 通過軟件部署和測試工具進行攻擊

          (CodeCov 供應鏈攻擊)

          接下來,我們將研究軟件部署工具中的攻擊,特別是 CI/CD 環(huán)境。如果您不熟悉 CI/CD(持續(xù)集成/持續(xù)部署)流程,我可以進一步進行解釋,它是一個可以在軟件自動部署之前進行自動測試的過程。這已成為軟件供應鏈的基本組成部分,組織利用許多不同的工具來測試他們的軟件,這通常發(fā)生在每次將新代碼推送到代碼存儲庫的生產分支(以及其他分支)時。

          Codecov 再次被成千上萬的客戶使用,這是一種代碼覆蓋工具,可讓用戶了解在 CI 環(huán)境中測試了多少應用程序。由于此工具位于 CI 環(huán)境中,因此它可以訪問應用程序在測試時使用的機密(或憑據)。例如,它需要訪問數(shù)據庫、第三方服務和代碼存儲庫,以便測試應用程序。

          在 Codecov 的例子中,攻擊者首先能夠訪問 Codecov 的私有代碼庫,并將惡意代碼注入到他們的源代碼中。這個惡意代碼只有一行,做了一些非常簡單的事情:它獲取 CI 環(huán)境中的機密(例如 git 令牌)并將它們發(fā)送到攻擊者的遠程服務器。或者更簡單地說,它將用于構建和測試應用程序的憑據提供給攻擊者。這允許攻擊者訪問許多 Codecov 客戶的私有代碼存儲庫,包括 Twilio Rapid7、HashiCorp 和 Monday.com 等。私有代碼存儲庫已成為攻擊者的高價值目標,因為它們通常包含包括機密在內的敏感信息。在某些情況下,通過正確的訪問,攻擊者甚至可以使用這些令牌注入惡意代碼。

          2.3 EventStream - 通過軟件依賴進行攻擊

          (開源依賴供應鏈攻擊)

          在最近一次供應鏈攻擊的最后一個示例中,我們將研究開源依賴項。幾乎所有現(xiàn)代軟件應用程序都使用開源依賴項。Synopsys 的一項研究表明,91% 的現(xiàn)代應用程序實際上是開源代碼。能夠使用這個開源代碼非常有幫助,因為這意味著工程師不需要為他們構建的每個應用程序重新設計組件,而是可以專注于它們的獨特價值。如果攻擊者可以破壞下游依賴項,那么他們就可以實現(xiàn)初始訪問的關鍵步驟。

          EventStream 就是一個很好的例子。這個包是一個工具包,可以讓流在 Node.js 中更容易實現(xiàn),它非常受歡迎,被數(shù)以百萬計的應用程序使用。但是,這個 EventStream 本身有依賴項,包括一個名為 Flatmap 的模塊。在這種情況下,攻擊者偽裝成 FlatMap 的維護者并最終獲得了開源模塊的所有權。攻擊者隨后將惡意代碼注入模塊,將其變成攻擊下游用戶的武器。它還為他們提供了進入 EventStream 并最終進入 EventStream 用戶的后門。因此,攻擊者能夠通過破壞依賴項的依賴項來訪問目標用戶。


          三、如何防止供應鏈攻擊



          現(xiàn)在我們了解了供應鏈攻擊可能發(fā)生的一些不同方式,讓我們看看我們如何加強我們的供應鏈并保護自己免受攻擊。這些類型的攻擊的困難在于,雖然您可以采取措施保護自己,但很多時候您僅僅是一名乘客而已。

          3.1 僅在您的應用程序中使用受信任的依賴項

          在選擇在您的應用程序中使用哪些依賴項和模塊時,您必須確保您使用的軟件:

          • 維護良好,持續(xù)跟蹤更新記錄,這可確保對發(fā)現(xiàn)的任何漏洞進行研究并更新補丁。它還降低了惡意維護者注入惡意代碼的風險。
          • 拼寫錯誤!有一種稱為類型占用的攻擊,其中惡意行為者會拼錯流行的開源依賴項,通常,該模塊將執(zhí)行與原始模塊相同的工作,因此不會引起懷疑,但具有額外的好處惡意代碼也是如此。
          3.2 掃描開源軟件的已知漏洞
          開源掃描或 OSS 軟件(如 Snyk 或 WhiteSource)是強化供應鏈的基礎。該軟件將搜索您的軟件包使用的依賴項,并將它們與易受攻擊的軟件包和版本的廣泛數(shù)據庫進行比較,以查看您的應用程序是否存在任何已知漏洞。如果某個依賴項存在已知漏洞,尤其是被歸類為嚴重漏洞的漏洞,那么在許多情況下,這些包甚至可以自動將其更新到最新的安全版本。但是,如果沒有可用的更新,那么使用不同的模塊或包非常重要,因為這表明該軟件不再維護。
          3.3 智能修補(通常不是立即)
          如果您曾經閱讀過安全文章,通常您會在其中看到一條說明,告訴您定期更新或修補系統(tǒng)。這當然是有道理的,您需要最新版本,以便確保發(fā)現(xiàn)的任何漏洞都不再是威脅。雖然這是真的,但這并不意味著您應該立即更新。這聽起來可能違反直覺,但如果我們看看本文中的所有示例,它們的一個相似之處是如果用戶沒有立即更新,他們就不會受到影響?,F(xiàn)在,在你對著屏幕大喊大叫之前,我不是主張我們不打補丁,或者不定期打補丁,但我們需要對此進行思考,不要盲目修復漏洞。
          來自 Snyk 的開發(fā)者倡導者 Liran Tal 表示,發(fā)現(xiàn)、報告和修補漏洞大約需要 60 天的時間。
          這與本文給出的示例一致。因此,考慮到這一點,您需要創(chuàng)建一個智能補丁策略,如果在相關系統(tǒng)中發(fā)現(xiàn)安全漏洞,您將立即更新到最新版本,否則請遵循初始等待期。
          3.4 細分您的網絡
          如果攻擊者可以通過供應鏈攻擊訪問您的組織,他們將希望快速進入您網絡的不同區(qū)域。網絡分段是在發(fā)生攻擊時限制爆炸半徑的有效方法。它是指將一個較大的網絡劃分為較小的子網絡,它們之間的互連性有限。通過控制各個子網絡之間的流量并限制攻擊者的橫向移動,網絡分段可防止未經授權的用戶訪問組織的數(shù)據。對網絡進行分段的一些常見方法包括:
          • VLAN 網絡分段:這涉及在具有 VLAN 或子網的網絡中創(chuàng)建分段,使用 IP 地址進行分區(qū)。
          • 防火墻分段:網段內的防火墻限制攻擊面并防止威脅傳播。由于這種方法需要數(shù)千條防火墻規(guī)則,因此給系統(tǒng)帶來了相當大的復雜性和成本。
          • 使用軟件定義網絡進行分段:基于 SDN 的網絡分段支持更高的自動化和可編程性。但是,它較少關注安全可見性,而更多地關注網絡策略實施。
          • 微分段:該技術使用主機工作負載來實施分段網絡,并使用白名單模型來阻止除允許之外的所有流量。
          3.5 實現(xiàn)高級認證和最小權限
          安全中有一個概念叫做零信任。這意味著僅僅因為某人擁有身份驗證憑據,我們仍然不信任他們。這方面的示例包括使用多因素身份驗證和限制可以訪問系統(tǒng)的 IP 地址。在供應鏈攻擊中,我們希望限制攻擊者最終擁有的信任程度,使用零信任原則實施強身份驗證,以阻止攻擊者的追蹤。
          確保我們使用最少訪問原則也很重要,這意味著用戶和服務對額外數(shù)據和服務的訪問量只有最低限度。因為攻擊者可以從受信任的系統(tǒng)發(fā)起攻擊,通常即使使用零信任原則,我們也無法完全檢測和阻止他們,但是,我們可以限制他們可以訪問的信息量。
          3.6 確保你的倉庫沒有密鑰
          通過這些類型的攻擊瞄準代碼存儲庫和備份服務器已成為攻擊者的經典策略。這正是 Codecov 攻擊者針對 git 存儲庫的情況。這是因為這些是為攻擊者尋找憑據以驗證自己并深入組織的完美初始訪問點。我們必須確保這些系統(tǒng)沒有攻擊者可以使用的敏感信息。
          一個簡單的事實是,即使我們采取一切預防措施并實施最佳實踐,我們也無法始終防止供應鏈攻擊,因此我們必須確保不會給攻擊者留下任何禮物。使用像 GitGuardian 這樣的秘密掃描工具是必不可少的,他們將對存儲庫進行完整的歷史掃描,包括它們的歷史記錄,并繼續(xù)實時掃描,以確保您在這些 git 存儲庫中永遠不會有任何密鑰。

          四、總結



          供應鏈攻擊一直在急劇增加,一個簡單的事實是,沒有人能幸免于難。用于構建應用程序的分布式架構為攻擊者提供了絕佳機會,可以同時針對數(shù)百甚至數(shù)千個組織。這一轉變徹底改變了攻擊者的經濟狀況,與針對單個公司相比,他們現(xiàn)在可以分配更多的資源來針對供應鏈。
          雖然不可能沒有成為供應鏈攻擊受害者的風險,但我們可以實施一些最佳實踐來降低成為受害者的風險以及在攻擊期間造成的潛在損害。
          原文:https://blog.gitguardian.com/supply-chain-attack-6-step-to-harden-your-supply-chain/
          #IDCF DevOps黑客馬拉松,獨創(chuàng)端到端DevOps體驗,精益創(chuàng)業(yè)+敏捷開發(fā)+DevOps流水線的完美結合。

          #規(guī)?;艚萋?lián)合作戰(zhàn)沙盤之「烏托邦計劃」,玩樂高,學敏捷,將“多團隊敏捷協(xié)同”基因內化在研發(fā)流程中,為規(guī)?;嵘邪l(fā)效能保駕護航!!??

          2022年社區(qū)開年賦能計劃,#DevOps黑客馬拉松#規(guī)模化敏捷聯(lián)合作戰(zhàn)沙盤之「烏托邦計劃」兩大公開課,將在北京、上海、深圳、大連、成都等多個城市開啟

          企業(yè)組隊參賽&個人參賽均可,趕緊上車~??


          瀏覽 70
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产乱码一区二区三区的解决方法 | 91女人18毛片水多的意思 | A级成人网站 | 日韩三级毛片 | 成人午夜啪免费视频在线观看软件 |