<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      軟件成分分析(SCA)完全指南

      上一篇文章中,我們討論了 DAST 的概念、重要性及其工作原理。那在開發(fā)過程中如何查找開源軟件包中的漏洞并學(xué)習(xí)如何修復(fù)?本指南帶你一起了解 SCA 工具及其最佳實踐。

      如今,絕大多數(shù)代碼驅(qū)動的應(yīng)用程序都包括開源組件。但是,開源代碼可能包含一些致命的漏洞,比如 Log4Shell 漏洞。

      軟件成分分析(SCA)是查找開源軟件包中的漏洞并學(xué)習(xí)如何修復(fù)它們的最佳選擇,確保代碼和應(yīng)用程序處于安全狀態(tài)。本指南將帶你一起了解使用 SCA 工具時的最佳實踐。

      什么是軟件成分分析 SCA?

      軟件成分分析 Software Compostition Analysis(SCA) 是一種用于管理開源組件應(yīng)用安全的方法。通過 SCA,開發(fā)團(tuán)隊可以快速跟蹤和分析引入項目的開源組件。同時,SCA 工具可以發(fā)現(xiàn)所有相關(guān)組件、支持庫以及它們之間直接和間接依賴關(guān)系。SCA 工具還可以檢測軟件許可證、已棄用的依賴項以及漏洞和潛在威脅。掃描過程會生成物料清單 Bill of Materials(BOM),從而提供項目軟件資產(chǎn)的完整清單。

      SCA 本身并不新奇,但隨著開源組件的普及和廣泛應(yīng)用,SCA 逐漸成為應(yīng)用程序安全項目的關(guān)鍵部分,而 SCA 工具數(shù)量也隨之激增。包括 DevSecOps 在內(nèi)的現(xiàn)代軟件開發(fā)實踐中,SCA 需要便于開發(fā)人員使用,同時也能讓安全團(tuán)隊能夠有能力在軟件開發(fā)生命周期 Software Development Life Cycle (SDLC)內(nèi)引導(dǎo)和指導(dǎo)開發(fā)人員安全地進(jìn)行開發(fā)。

      為什么要使用 SCA?

      開源組件儼然成為每個垂直領(lǐng)域軟件的主要部分。而 SCA 工具有助于跟蹤應(yīng)用程序使用的開源組件,這從生產(chǎn)和安全角度來看都至關(guān)重要。

      安全漏洞帶來的慘痛代價

      Gartner 預(yù)計超過70%的應(yīng)用程序因使用開源組件而產(chǎn)生缺陷和漏洞。正如美國征信巨頭 Equifax 的案例所表明,這些漏洞可能會給企業(yè)和組織帶來災(zāi)難性后果。

      在此事件中,Equifax 最初表示,網(wǎng)絡(luò)犯罪分子利用 Apache Struts 的漏洞獲取文件。隨即,Equifax 在公告中確認(rèn),先前披露和修復(fù)的漏洞是就是在這次數(shù)據(jù)泄露事件中惡意攻擊者所利用的漏洞,當(dāng)時這個漏洞的評分有10 分之高。而 Equifax 在漏洞出現(xiàn)后沒有及時修復(fù),黑客利用其系統(tǒng)中未修復(fù)的 Apache Struts 漏洞發(fā)起攻擊,導(dǎo)致1.43億用戶的信用記錄被泄露,其中包括姓名、出生日期、地址,以及駕駛證號碼等,這是有史以來規(guī)模最大的數(shù)據(jù)泄露案。最終,此案以 Equifax 支付7億美元的賠償金和罰款,索賠期限延長四年落幕。

      Equifax 漏洞事件成為安全行業(yè),尤其是應(yīng)用程序安全的重要標(biāo)志,因為它強調(diào)了控制措施的重要性,開源組件引入的風(fēng)險應(yīng)當(dāng)?shù)玫焦芾怼T撀┒匆步沂玖藢λ俣鹊囊螅髽I(yè)需要能夠快速,重復(fù)地查找和修復(fù)他們正在使用的開源軟件包中的漏洞。而在 Tidelift 2022年開源供應(yīng)鏈報告中顯示,有57%的企業(yè)認(rèn)為,即使有現(xiàn)代安全工具的助力,在使用開源進(jìn)行開發(fā)時識別和解決安全漏洞仍然是一項巨大的挑戰(zhàn)。

      為什么 SCA 這么重要?

      越來越多的應(yīng)用程序由開源代碼組成。據(jù)估計,開源代碼占到了應(yīng)用程序代碼的90%。實際上應(yīng)用程序是由不同的組件組成,企業(yè)需要保證所有的組件成分都是安全的,這樣才能夠有效地管理和降低風(fēng)險。這也正是企業(yè)在確保代碼庫安全時所面臨的挑戰(zhàn)。

      開源已成為軟件領(lǐng)域的中流砥柱

      軟件正在吞噬世界,而開源在吞噬軟件。在當(dāng)今競爭激烈的市場中,開源能夠幫助公司將服務(wù)數(shù)字化,讓企業(yè)在市場中獲得一定的競爭優(yōu)勢。

      開源是怎樣幫助企業(yè)實現(xiàn)服務(wù)數(shù)字化的呢?當(dāng)企業(yè)在進(jìn)行軟件開發(fā)時,從零開始構(gòu)建消耗大量的時間和資源。而使用提供完全相同功能的開源軟件包能夠有效降低這些成本。

      開源本質(zhì)上是高度靈活的。在社區(qū)的支持和嚴(yán)格審查下,開源通常很安全。同時,免費的開源軟件和組件能夠幫助企業(yè)和組織避免軟件廠商的束縛。

      在 Tidelift 最近的一項研究中,68%的受訪者指出,節(jié)省資金和開發(fā)時間是企業(yè)鼓勵使用開源組件進(jìn)行應(yīng)用程序開發(fā)的首要原因。而48%的受訪者則表示,使用開源是為了提高應(yīng)用程序開發(fā)和維護(hù)效率。開源的使用在新冠疫情之前就達(dá)到了頂峰,而疫情的出現(xiàn)加速了采用率。Gartner 預(yù)計,90% 的企業(yè)應(yīng)用程序?qū)⒁蕾囉陂_源的使用。

      當(dāng)今的軟件供應(yīng)鏈

      開源是構(gòu)成現(xiàn)代云原生應(yīng)用程序的一部分。如今,應(yīng)用程序更多是組裝而非從零構(gòu)建。除了開源軟件包之外,應(yīng)用程序還由專有代碼、容器和基礎(chǔ)設(shè)施組裝而成,成為軟件供應(yīng)鏈的組成部分。而軟件供應(yīng)鏈中的這些組件和模塊也是惡意攻擊的潛在目標(biāo)。利用軟件供應(yīng)鏈中的漏洞能對整個應(yīng)用程序,進(jìn)而擴大攻擊面。

      以 Octopus Scanner 惡意軟件為例,它通過濫用構(gòu)建過程影響整個供應(yīng)鏈,經(jīng)過該供應(yīng)鏈產(chǎn)生的工件影響其他項目。受影響的項目可能會被許多不同的系統(tǒng)克隆、Fork 和使用,也就是所說的“套娃”攻擊。而最近的 SolarWinds 攻擊主要針對特定軟件,這也進(jìn)一步證明了現(xiàn)代軟件供應(yīng)鏈給企業(yè)和組織帶來的風(fēng)險越來越大。

      開源 ≠ 安全

      開源項目被認(rèn)為使用起來更安全。畢竟當(dāng)整個社區(qū)參與維護(hù)和開發(fā)項目時,問題常常被更快地識別和修復(fù)。這當(dāng)然包括安全漏洞在內(nèi)的各種 bug。話雖如此,這并不代表開源是沒有風(fēng)險的。

      開源項目是公開的,且對所有人都是可見。當(dāng)然也包括惡意攻擊者。在其中發(fā)現(xiàn)并修復(fù)的任何漏洞都會暴露給潛在的攻擊者。開源項目越受歡迎,該軟件包的吸引力就越大,而對應(yīng)事件的攻擊影響也就越大。

      當(dāng)然企業(yè)使用開源組件需要自擔(dān)風(fēng)險,因為沒有供應(yīng)商通知他們?nèi)毕荩蛘吆炇鸬暮贤屗麄償[脫責(zé)任。

      SCA 五大挑戰(zhàn)

      如前文所述,SCA 是應(yīng)用程序安全方法和工具的總稱,這些方法和工具通常在開發(fā)期間掃描應(yīng)用程序(如 SAST),來定位應(yīng)用程序中使用的開源組件,并隨后識別安全漏洞和軟件許可證問題。為了有效管理和降低這些開源組件帶來的風(fēng)險,企業(yè)將面臨一系列與利用開源構(gòu)建現(xiàn)代應(yīng)用程序的方式相關(guān)的風(fēng)險與挑戰(zhàn)。

      1. 代碼的低可見性

      將開源代碼嵌入到應(yīng)用程序代碼庫中的方式帶來了巨大的可見性挑戰(zhàn)。開發(fā)人員可能會直接在代碼中使用許多開源包,而這些包又包含一些開發(fā)人員不了解的其他開源包。這些直接或可傳遞的依賴關(guān)系復(fù)雜多層,因此很難對應(yīng)用程序?qū)嶋H使用的開源進(jìn)行端到端的可見性。

      而絕大多數(shù)安全漏洞都存在于復(fù)雜多層的關(guān)系中。Snyk State of Open Source Security 報告發(fā)現(xiàn),超過86%的 .js 節(jié)點漏洞是在可傳遞依賴項中發(fā)現(xiàn)的。在 Java 和 Ruby 上也發(fā)現(xiàn)了類似的數(shù)字。這意味著應(yīng)用程序中的絕大多數(shù)安全漏洞通常都能在開源代碼中找到,開發(fā)人員甚至不知道他們使用了這些代碼。

      云原生應(yīng)用程序以另一種方式利用開源,這同樣可能會給企業(yè)帶來代碼可見性的難題。容器鏡像可以由各種開源組件組成,這些組件還需要識別和測試漏洞。容器為開發(fā)人員提供的抽象層,從開發(fā)的角度來看是一個優(yōu)勢,從安全角度來看也是一個弱點。

      2. 依賴關(guān)系錯綜復(fù)雜

      為了準(zhǔn)確識別應(yīng)用程序正在使用的依賴關(guān)系以及它們引入的漏洞,需要深入了解每個生態(tài)系統(tǒng)如何處理依賴關(guān)系。開源包在安裝時的解析、鎖定文件、開發(fā)依賴關(guān)系 - 所有這些都是影響如何識別開源包中的漏洞并將決定后續(xù)修復(fù)步驟的要素。SCA 解決方案需要理解這些細(xì)微差別,以避免產(chǎn)生過多誤報。

      3. 漏洞數(shù)量持續(xù)增加

      由于已識別的漏洞數(shù)量龐大,因此掩蓋了漏洞的可見性及其對企業(yè)構(gòu)成的風(fēng)險。Snyk Intel 漏洞數(shù)據(jù)庫增加了10000多個漏洞,也反映了漏洞數(shù)量的持續(xù)增長。

      這些上升趨勢會體現(xiàn)在已識別且需要注意的漏洞列表中,其中通常由數(shù)千個問題組成。鑒于開發(fā)和安全團(tuán)隊可支配的資源有限,如果沒有一定的安全技能或嵌入高級安全專業(yè)知識的工具,就很難確定工作的優(yōu)先級。基于通用漏洞評分系統(tǒng) CVSS (Common Vulnerability Scoring System)是評估風(fēng)險和確定工作優(yōu)先級的常用方法,但這個方式存在一些固有的弱點需要在使用時特別注意。

      4. 不易找到完善的漏洞數(shù)據(jù)庫

      有關(guān)已知漏洞的信息較為分散。國家漏洞數(shù)據(jù)庫(NVD)通常用于接收有關(guān)漏洞的更新,但其他來源(如問題跟蹤器、在線論壇、安全新聞通訊等)也能提供大量有關(guān)漏洞的安全情報。NVD 也可能無法及時添加漏洞。例如,NVD中92%的 JavaScript 漏洞都是事先添加到 Snyk 中的。及時了解漏洞很重要。

      5. 安全檢查降低開發(fā)速度

      開發(fā)人員的開發(fā)節(jié)奏很快,而安全團(tuán)隊卻很難趕上。由于需要更快、更頻繁地交付代碼,開發(fā)人員越來越多地使用到開源。缺乏人力和資源的安全團(tuán)隊試圖在軟件開發(fā)生命周期的各個不同階段進(jìn)行安全檢查,但這實際上導(dǎo)致開發(fā)速度減慢。然而減慢的開發(fā)節(jié)奏可能對整體應(yīng)用程序安全更不利,因此這些檢查最終會被繞過或忽略。

      因此,在安全模型中出現(xiàn)了 DevSecOps 和安全防護(hù)左移(Shift Left)的概念,即將安全責(zé)任轉(zhuǎn)移到開發(fā)團(tuán)隊中,以確保對開發(fā)工作流的干擾最小,同時確保安全性。

      SCA 的6個最佳實踐

      軟件組合分析 (SCA) 工具是查找開源包中的漏洞并學(xué)習(xí)如何修復(fù)它們的最佳選擇,保護(hù)代碼和應(yīng)用程序的運行狀況。在使用 SCA 工具時,請參考以下六個最佳實踐。

      1. 使用開發(fā)者友好的 SCA 工具

      開發(fā)人員忙于寫代碼。他們需要全面思考,高效設(shè)計,并快速迭代。因此對開發(fā)人員不友好的 SCA 工具會減慢開發(fā)節(jié)奏。而便于開發(fā)人員使用的 SCA 工具能夠輕松設(shè)置和使用。它應(yīng)該簡單地與現(xiàn)有的開發(fā)工作流和工具集成,并盡早在軟件開發(fā)生命周期(SDLC)中集成。

      在確定工具后,也需要給開發(fā)人員普及 SCA 的重要性以及用處。讓開發(fā)人員明確從開發(fā)初期就考慮安全問題,并將安全檢查完善到他們的工作流程中。這將有效避免開發(fā)人員因為修復(fù)安全問題而重寫代碼所花費的時間。

      2. 了解依賴關(guān)系

      開源包有兩種依賴關(guān)系:直接依賴和傳遞依賴。直接依賴項,就是你直接使用在項目里的開源包。而直接依賴項之一使用的開源包,便是傳遞(間接)依賴項了。

      分析表明,開源軟件包中80%的漏洞存在于傳遞依賴關(guān)系中。這意味著代碼中的大多數(shù)漏洞都包含在未知且正在使用的(嵌套)依賴項中。而一個優(yōu)秀的 SCA 工具,應(yīng)該準(zhǔn)確地檢查代碼中的所有依賴項,并且應(yīng)該能夠識別和檢查傳遞依賴項。了解代碼中使用的開源包的深度和復(fù)雜性,能夠確保在各個級別都進(jìn)行合適有效的漏洞檢測。

      3. 自動掃描與可操作修復(fù)

      一個好的 SCA 工具可以為企業(yè)提供定期運行自動掃描的選項。利用這一點,企業(yè)可以來設(shè)置對代碼的主動和持續(xù)監(jiān)控。自動掃描能夠提供有關(guān)漏洞所在位置以及如何修復(fù)漏洞的可操作警報。請認(rèn)真對待 SCA 工具提供的修復(fù)漏洞的方向,采用該方向來應(yīng)用修復(fù)程序。

      4. 將 SCA 集成到 CI/CD 流水線中

      使用SCA 工具并不意味著需要在開發(fā)—測試—生產(chǎn)過程中停滯下來。相反,企業(yè)應(yīng)該將 SCA 掃描集成到 CI/CD 流水線中,以便識別和修復(fù)漏洞,并成為軟件開發(fā)和構(gòu)建過程中的一個功能部分。同時,這也可以幫助開發(fā)人員更輕松地適應(yīng)代碼安全作為其日常工作流程一部分。

      5. 利用報告及物料清單

      包括美國聯(lián)邦政府在內(nèi)的許多組織,在購買軟件時都要求包含軟件物料清單 (SBOM) 報告。在產(chǎn)品中提供詳細(xì)的物料清單表明企業(yè)了解跟蹤應(yīng)用程序內(nèi)每個組件的價值。有關(guān)安全掃描和修復(fù)的清晰報告也非常強大。提供有關(guān)企業(yè)的安全實踐和修復(fù)的漏洞數(shù)量的詳細(xì)報告,表明對軟件安全的承諾和踐行。

      6. 加強安全策略,提高許可證合規(guī)性

      清楚地了解開發(fā)人員使用的開源包,將有助于企業(yè)創(chuàng)建定義和實施安全準(zhǔn)則的策略。企業(yè)可以使用通過漏洞掃描獲得的知識,指導(dǎo)開發(fā)人員在使用開源軟件包時考慮安全性。

      跟蹤開源代碼本身對于應(yīng)用程序安全很重要,同時跟蹤開源許可證對于合規(guī)性也至關(guān)重要。開源許可證明確了開源軟件包的法律使用條款,使用 SCA 工具能夠幫助企業(yè)深入了解開源組件的許可條款和條件。在制定安全策略時,企業(yè)也需要鼓勵開發(fā)人員在軟件開發(fā)生命周期初期采用許可證合規(guī)性的規(guī)范。

      SCA 的未來

      鑒于開源的日益普及,以及最近違規(guī)和網(wǎng)絡(luò)攻擊的宣傳,大眾對 SCA 的關(guān)注熱度逐步上升。開源在推動數(shù)字化轉(zhuǎn)型中所扮演著不可忽視的角色,而這個趨勢在近期幾乎不會發(fā)生改變。

      企業(yè)使用開源來幫助他們在各自的市場中擁有競爭優(yōu)勢。同時,人們逐漸意識到,他們必須控制開源的使用來管理和減少其伴隨的風(fēng)險。當(dāng) SCA 工具能夠滿足我們所提到的這些關(guān)鍵需求,將能成功幫助企業(yè)在市場中更好地競爭。

      參考鏈接:
      Equifax 信息泄露案落幕
      https://www.secrss.com/articles/39075

      TideLift: 2020 managed opensource survey
      https://tidelift.com/subscription/2020-managed-open-source-survey

      posted @ 2022-06-20 11:24  Seal軟件  閱讀(2198)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 蜜桃视频一区二区三区四| 大香伊蕉在人线国产最新2005 | 天天躁夜夜踩很很踩2022| 国产尤物精品自在拍视频首页| 狠狠躁夜夜躁人人爽天天5| 荣昌县| 人妻久久久一区二区三区| 国产精品日韩精品日韩| 亚洲av成人在线一区| 精品人妻少妇嫩草av专区| 国产人妻丰满熟妇嗷嗷叫| 久久妇女高潮喷水多| 一区二区三区精品不卡| 国精偷拍一区二区三区| 久久涩综合一区二区三区| 天天色综网| 国产成人精品亚洲午夜| 国产黄色av一区二区三区| 波多野结衣免费一区视频| 欧美人成精品网站播放| 99精品国产综合久久久久五月天 | 亚洲国产超清无码专区| 一区二区中文字幕av| 久久亚洲精品亚洲人av| 韩国精品一区二区三区| 水蜜桃av无码| 黑森林福利视频导航| 亚洲一本大道在线| 免费人妻av无码专区| 国产精品青青在线观看爽香蕉| 国产精品av中文字幕| 日韩一区二区在线观看的| 一本色道久久88亚洲精品综合| 国产成人亚洲老熟女精品| 亚洲成人av综合一区| 达尔| 亚洲av色综合久久综合| 亚洲AVAV天堂AV在线网阿V| 久热这里只有精品12| 亚洲激情一区二区三区视频| 又大又粗欧美黑人aaaaa片|