面對以上五個嚴重的挑戰(zhàn),從企業(yè)解決的角度來說,可以聚焦為三個主要應(yīng)對舉措:
-
多做行業(yè)頭部最佳實踐調(diào)研:其實近兩年,互聯(lián)網(wǎng)、金融、運營商、智能制造等多個行業(yè)的頭部企業(yè),還是有不少企業(yè)在開源安全治理方面已經(jīng)有自己的一些最佳實踐和成功經(jīng)驗了。雖然說不是100%成熟,但是還是很具參考意義的;
-
資產(chǎn)盤點,分級治理:雖然問題很多很復雜,千頭萬緒,通常這種情況下我們的解法也很簡單,那就是先對企業(yè)使用的開源組件進行一輪摸底,然后根據(jù)相關(guān)業(yè)務(wù)的重要程度及組件本身安全風險程度進行分級治理,確定階段性的治理目標;
-
科學的技術(shù)選型,關(guān)注運營閉環(huán)及降低修復成本:內(nèi)部協(xié)同挑戰(zhàn)大的主要原因還是各方在治理這件事上需要投入的成本太大,與各方取得的收益不成正比,從而導致大家不愿意干,所以核心解法在于降低如何降低治理過程中的成本投入,那么其實關(guān)鍵問題在于降低開源安全問題的修復成本;
接下來,對于以上三個問題,我對其中核心的難點和落地實踐稍微展開做一些分享。
關(guān)于行業(yè)的現(xiàn)狀和調(diào)研
大概從2021年起,log4j2事件及一些國內(nèi)重要企業(yè)(不好直說?。┑闹卮髷?shù)據(jù)泄露事件背后都暴露出來軟件供應(yīng)鏈安全威脅,再之后就是2021年底金融行業(yè)四部委發(fā)文,后來證監(jiān)會及銀保監(jiān)又陸續(xù)發(fā)布了一些行業(yè)要求,公安部及地方公安也陸續(xù)開展了行業(yè)的檢查和發(fā)文要求一些重要企業(yè)自查整改,陸續(xù)金融和運營商行業(yè)就開始有不少企業(yè)開始積極的開展開源安全治理工作。當然,對于互聯(lián)網(wǎng)公司沖擊比較大的還是log4j2和長期以來類似fastjson的0day漏洞。
所以從2021年開始,明顯感覺到最起碼互聯(lián)網(wǎng)、金融、運營商這幾個行業(yè)開始積極調(diào)研和探索企業(yè)的開源組件安全治理的工作及其可行性,后來到2022年開始,以國網(wǎng)為代表的能源行業(yè)也開始啟動深入調(diào)研。在這樣的大背景下,實際上互聯(lián)網(wǎng)第一批開展治理的企業(yè)2022年就已經(jīng)有一些落地積累了,再到2023年,可以說就已經(jīng)積累了比較豐富的經(jīng)驗了,這里面我看到的螞蟻集團一直走在比較前面,內(nèi)部的軟件供應(yīng)鏈安全治理從最早的1.0階段,到2024年已經(jīng)開始3.0階段的治理工作,這里面肯定踩了很多坑,但是也積累了相當多的經(jīng)驗,最起碼是看的比較清楚了。此外,美團、阿里、快手、小紅書等也都有非常不錯的積累。
金融行業(yè)來看,其實從2019年/2020年開始有過一波治理的嘗試,但是到2021年來看,效果并不是很好,主要是一開始也沒有當著重點任務(wù)去看,也是抱著試試看的心態(tài),后來踩的坑多了,才發(fā)現(xiàn)其實挑戰(zhàn)非常的大,所以從2021年開始幾個頭部大行開始組織深入的調(diào)研,包括我了解的工行、農(nóng)行等都從2021年開始又花了1-2年的時間,重新審視開源安全治理工作的重要性,同時總結(jié)過去的經(jīng)驗,開始全面體系化的規(guī)劃如何落地,而2023年開始一些銀行和證券行業(yè)就開始規(guī)?;穆涞亻_源組件安全治理工作,目前來看也都有一些不錯的積累。
而在運營商行業(yè),移動、電信、聯(lián)通等從2021年開始也陸續(xù)探索軟件供應(yīng)鏈安全治理方向,運營商行業(yè)在開源安全治理這個方面近3年發(fā)展速度是非??斓?,這從根本上來說,國家層面的大型攻防演練暴露出來大量的軟件供應(yīng)鏈安全問題是一方面,另外一方面,信通院在軟件供應(yīng)鏈安全方向的大力投入和引導也起到了很關(guān)鍵的作用。目前來看,移動體系是跑的最快的,從集團到省公司都有深入的落地,而電信體系也非常的積極,都積累了不少經(jīng)驗。
所以,總體來說,從2021年開始各行業(yè)開始調(diào)研,2022年有一批試著開始落地,到目前為止,各行業(yè)已經(jīng)有一批先行者積累了豐富的經(jīng)驗,2024年開始我相信會有越來越多的企業(yè)開始對外分享他們的治理經(jīng)驗和最佳實踐,這對于整個行業(yè)開展開源安全治理的工作將會帶來很大的幫助。
分級治理及目標設(shè)定
因為企業(yè)使用的開源軟件/組件的數(shù)量非常的多,引入方式也非常的復雜,加上不同語言的開源組件的包管理生態(tài)成熟度也不一樣,這就導致企業(yè)無法在短時間內(nèi)對所有的開源軟件的安全風險開展治理工作。這個時候通常我們需要做的事情是盤點企業(yè)使用的開源軟件資產(chǎn),并對這些開源軟件進行分類分級,進而對存在高風險的開源軟件進行高優(yōu)先級治理。
在企業(yè)內(nèi)部,一旦一項工作涉及到了分階段治理,那么首要的任務(wù)是說清楚總體的目標是什么?分級的邏輯是什么?預計每個階段解決哪些問題?通常這項工作有哪些挑戰(zhàn)呢:
- 如何識別足夠全的開源軟件資產(chǎn):這關(guān)系到這些治理工作是否能說清楚分母(總體目標),如果沒有這個分母,那么后續(xù)階段性的治理成果也就無法衡量。這一步我們通常建議企業(yè)從代碼倉、容器鏡像倉庫、服務(wù)器主機等維度對公司正在使用的所有開源組件進行識別,這一步會用到一個成熟的SCA(軟件成分分析)工具,這個工具應(yīng)該支持很強的源代碼和二進制檢測能力,因為不用的形態(tài)(源碼、二進制等)的不同語言的軟件識別其依賴的開源組件的技術(shù)原理不盡相同,甚至同一個開發(fā)語言的同一個包管理工具的不同版本,在對開源組件的依賴管理是都不盡相同,所以需要考慮各種語言及版本特性來識別。這是一項非常具挑戰(zhàn)的工作,不容忽視它的重要性。
- 開源軟件資產(chǎn)與業(yè)務(wù)的關(guān)聯(lián):如果不能將開源軟件資產(chǎn)與業(yè)務(wù)進行關(guān)聯(lián),那么我們就沒辦法說清楚開源組件的安全風險對業(yè)務(wù)會有什么影響,而通常公司管理層關(guān)注的是業(yè)務(wù)的風險而不是單純的技術(shù)問題。所以通常我們可以結(jié)合企業(yè)的CMDB及代碼提交人的記錄來識別不同的代碼倉庫及代碼應(yīng)用在業(yè)務(wù)部門的歸屬是什么?當然,更好的一個方案是從一個軟件應(yīng)用的代碼倉庫開始,就對其代碼庫進行配置標識身份。這樣后續(xù)這個代碼在打包、測試、上線發(fā)布過程就像有了身份證,隨時可以讀取它的關(guān)聯(lián)責任人信息,方便在它出了安全問題時及時找到對應(yīng)的負責人。
- 分級策略:分級的策略通常需要考慮三個方面的因素,一方面是首先考慮業(yè)務(wù)的重要程度,該開源軟件影響的業(yè)務(wù)的重要程度;另外一個方面是考慮該開源軟件存在的安全風險危害程度,包括其影響范圍、影響程度、攻擊條件及門檻;最后一方面是該開源軟件的安全缺陷在該業(yè)務(wù)場景中的實際影響,包括是否會被觸發(fā),觸發(fā)的條件及幾率如何。最后我們需要根據(jù)企業(yè)在不同階段對安全風險的容忍度、投入成本、關(guān)聯(lián)基礎(chǔ)設(shè)施的成熟度(這個主要是考慮定的目標是否能落地,因為建設(shè)過程依賴和基礎(chǔ)設(shè)施的集成)幾個方面來確定我們具體的分級策略和治理規(guī)劃。
- 目標設(shè)定:很多企業(yè)非常關(guān)心階段性目標怎么設(shè)定,指標如何定的問題。我個人建議設(shè)定兩方面的目標,一方面是A面目標(主要是業(yè)務(wù)效果),另外一方面是B面目標(主要是能力積累);A面目標通常有3個,一個是存量的風險收斂率,比如我們?nèi)Χㄒ黄诘闹卫矸秶?個業(yè)務(wù),涉及20個應(yīng)用系統(tǒng)。那么我們可以定這20個應(yīng)用系統(tǒng)的xx級別漏洞風險收斂率100%;此外一個目標是這5個業(yè)務(wù)的新增風險,上線前高危及嚴重風險整改率指標,第三個目標是這5個業(yè)務(wù)線上一旦發(fā)現(xiàn)新的安全風險的處置時效性目標;而B面目標我們通常建議以開源安全管控流程的覆蓋率及成熟度來定,比如這5個業(yè)務(wù)線的研發(fā)、測試及發(fā)布流程,開源安全管控流程覆蓋100%。
科學的技術(shù)選型,關(guān)注治理成本
當前,國內(nèi)大多數(shù)的開源安全治理相關(guān)產(chǎn)品及技術(shù),相對來說都非常不成熟,這個不成熟主要體現(xiàn)在三個方面:
問題 | 結(jié)果 | 原因 |
檢測能力不成熟 | 主要體現(xiàn)在檢測結(jié)果的誤報和漏報大,且不穩(wěn)定,這會導致企業(yè)研發(fā)人員增加大量無效工作,從而質(zhì)疑安全部門的專業(yè)性,抵觸安全部門。 | 以SCA為代表的開源安全治理工具,過去大家對它的技術(shù)難度有錯誤的預估,覺得這個工具實際上很簡單,但是當你面對十多種開發(fā)語言、不同語言的包管理方式、不同語言的軟件運行環(huán)境及不同軟件的形態(tài),這些因素疊加在一起,數(shù)億版本的開源組件乘于數(shù)十萬通用漏洞,如何準確檢測其運行環(huán)境下的依賴及安全風險,成為一個巨大的難題和挑戰(zhàn)。但是很遺憾,過去大家并沒有對這項工作難度有正確的認知。 |
企業(yè)對開源安全問題處置成本高 | 發(fā)現(xiàn)大量開源組件的安全漏洞,但是無法修復,安全團隊陷入尷尬的境地 | 過去行業(yè)通用的檢測工具多數(shù)是對代碼中使用的開源組件的版本進行匹配從而判定是否存在漏洞,這會導致大量的檢測結(jié)果是誤報;另外一方面單個漏洞的修復大多數(shù)時候需要升級組件版本,這對于研發(fā)來說,簡直就是災難,升級完就掛了,導致問題無法處置。 |
企業(yè)接入和持續(xù)漏洞知識庫運營成本高 | 安全團隊無法將安全能力潛入到企業(yè)軟件開發(fā)及管理流程,同時無法及時跟蹤行業(yè)發(fā)現(xiàn)的最新漏洞并轉(zhuǎn)化成安全檢測能力,導致風險漏報進而產(chǎn)生線上事故 | 1)很多企業(yè)的研發(fā)流程不規(guī)范不統(tǒng)一,這導致如果要將安全能力接入進軟件開發(fā)流程,適配成本高,而且這個流程也一直都在變化和迭代,持續(xù)適配成本高。2)市面上每天都會曝出數(shù)十上百個新的安全漏洞,這些漏洞都有可能對企業(yè)使用的開源軟件造成影響,企業(yè)想要及時分析這些漏洞數(shù)據(jù)并維護進漏洞檢測能力,成本極高 |
過去我們創(chuàng)始團隊在百度、貝殼、華為工作的時候,開展此項工作時往往也都會遇到這三個問題,這些問題其實很多企業(yè)和安全廠商其實也知道,但是為什么當下行業(yè)大多數(shù)的解決方案仍然并不成熟呢。我們仔細分析就會發(fā)現(xiàn),在數(shù)千萬的開源組件及數(shù)億的開源軟件中,我們想要把這個安全產(chǎn)品工具做好,實際需要三個方面的綜合能力:
- 漏洞研究技術(shù)積累:數(shù)十萬的存量漏洞及數(shù)百個/周的新增漏洞,還有投毒的分析,如何準確的判斷漏洞的真實影響和實際觸發(fā)情況,NVD和CNVD都很難解決的問題(官方漏洞庫也只能做到基礎(chǔ)的分析),可想而知多么復雜,這不僅需要大量專業(yè)的漏洞研究人才,同時還需要大量的經(jīng)驗積累;
- 工程技術(shù)積累:包括各種語言特性、各種包管理工具生態(tài)、各種軟件運行環(huán)境、開發(fā)環(huán)境的適配,而且這幾塊都是有很強的相關(guān)性的,這加在一起就是一個非常復雜的工程技術(shù)問題;
- 對企業(yè)軟件管理及安全管理場景的深入理解:每一個行業(yè),每一個企業(yè)都有自己的管理風格,自己的軟件開發(fā)流程及對安全不同的管理理念,而這項工作又需要各個團隊在全軟件管理流程中協(xié)作起來,實際難度是非常大的。
過去三年,墨菲安全的團隊90%的人員都主要圍繞在解決以上三個問題,我們的實驗室團隊過去在百度、烏云一直都在專注漏洞的研究和攻防,而我們的工程技術(shù)團隊在華為、貝殼都應(yīng)對過非常復雜的技術(shù)架構(gòu)場景,同時我們過去公司一直專注在不斷打磨各類的應(yīng)用場景的適配,這是一項非常需要耐心的工作。而我們的產(chǎn)品團隊有超過十年的企業(yè)安全建設(shè)的經(jīng)驗,都是第一份工作就從發(fā)漏洞工單干起的。
今天我們深刻的感受到,這項工作的難度,過去非常有幸,墨菲安全能夠服務(wù)互聯(lián)網(wǎng)top20中的80%企業(yè)、金融行業(yè)的國有行、股份行、頭部城商行、證券及保險客戶,運營商里的移動和電信的多家企業(yè)客戶,能源的國家電網(wǎng)這樣的大型企業(yè),這些客戶在開源安全治理過程中的經(jīng)驗和問題反饋讓我們能夠快速成長和更加深入的理解客戶需求。也很開心能夠幫助這些企業(yè)一起完成階段性的開源安全治理目標。未來沿著這條路,我們還有很多工作要做,當然,我們堅信這個方向的對于企業(yè)的業(yè)務(wù)價值,所以我們會持續(xù)專注的大量投入把這件事情做好。
有獎?wù){(diào)研
當然,我們也需要持續(xù)學習不同企業(yè)在開源安全治理過程中遇到的不同的問題,基于這些問題出發(fā),我們才能在產(chǎn)品及技術(shù)方案上不斷的適應(yīng)企業(yè)安全治理的需求,才能一起推動行業(yè)的成熟和進步,這對于參與這個行業(yè)的每一個人來說都是非常重要的,所以借此機會我也準備開展一個有獎?wù){(diào)研活動。
有獎?wù){(diào)研,說出你在你的公司里開展開源安全治理工作中遇到的問題和挑戰(zhàn)?參與調(diào)研你會獲得什么:
- 我們會抽取其中提交高質(zhì)量的問題的用戶,送出一個定制的充電寶;
- 對于大家提出的問題,我們內(nèi)部會認真研討后給出答復,并組織行業(yè)大佬一起交流,盡力幫大家解決問題;
- 墨菲安全提供最新商業(yè)版的SCA/漏洞情報/源安全網(wǎng)關(guān)產(chǎn)品免費試用(時長按需提供);
參與方式(問卷)
其中本文有一些細節(jié),因為篇幅的原因,沒辦法寫的很細,也歡迎大家加我企業(yè)微信/飛書交流(添加請備注公司名-姓名)。
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。
深知大多數(shù)網(wǎng)絡(luò)安全工程師,想要提升技能,往往是自己摸索成長,但自己不成體系的自學效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年網(wǎng)絡(luò)安全全套學習資料》,初衷也很簡單,就是希望能夠幫助到想自學提升又不知道該從何學起的朋友。
既有適合小白學習的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗的小伙伴深入學習提升的進階課程,基本涵蓋了95%以上網(wǎng)絡(luò)安全知識點,真正體系化!
由于文件比較大,這里只是將部分目錄大綱截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學習筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且后續(xù)會持續(xù)更新
如果你覺得這些內(nèi)容對你有幫助,可以添加VX:vip204888 (備注網(wǎng)絡(luò)安全獲?。?/strong>
給大家的福利
零基礎(chǔ)入門
對于從來沒有接觸過網(wǎng)絡(luò)安全的同學,我們幫你準備了詳細的學習成長路線圖。可以說是最科學最系統(tǒng)的學習路線,大家跟著這個大的方向?qū)W習準沒問題。
同時每個成長路線對應(yīng)的板塊都有配套的視頻提供:
因篇幅有限,僅展示部分資料
網(wǎng)絡(luò)安全面試題
綠盟護網(wǎng)行動
還有大家最喜歡的黑客技術(shù)
網(wǎng)絡(luò)安全源碼合集+工具包
所有資料共282G,朋友們?nèi)绻行枰住毒W(wǎng)絡(luò)安全入門+黑客進階學習資源包》,可以掃描下方二維碼領(lǐng)?。ㄈ缬鰭叽a問題,可以在評論區(qū)留言領(lǐng)取哦)~
一個人可以走的很快,但一群人才能走的更遠。如果你從事以下工作或?qū)σ韵赂信d趣,歡迎戳這里加入程序員的圈子,讓我們一起學習成長!
AI人工智能、Android移動開發(fā)、AIGC大模型、C C#、Go語言、Java、Linux運維、云計算、MySQL、PMP、網(wǎng)絡(luò)安全、Python爬蟲、UE5、UI設(shè)計、Unity3D、Web前端開發(fā)、產(chǎn)品經(jīng)理、車載開發(fā)、大數(shù)據(jù)、鴻蒙、計算機網(wǎng)絡(luò)、嵌入式物聯(lián)網(wǎng)、軟件測試、數(shù)據(jù)結(jié)構(gòu)與算法、音視頻開發(fā)、Flutter、IOS開發(fā)、PHP開發(fā)、.NET、安卓逆向、云計算文章來源地址http://www.zghlxwxcb.cn/news/detail-847585.html
389e65ecb71ac0)文章來源:http://www.zghlxwxcb.cn/news/detail-847585.html
AI人工智能、Android移動開發(fā)、AIGC大模型、C C#、Go語言、Java、Linux運維、云計算、MySQL、PMP、網(wǎng)絡(luò)安全、Python爬蟲、UE5、UI設(shè)計、Unity3D、Web前端開發(fā)、產(chǎn)品經(jīng)理、車載開發(fā)、大數(shù)據(jù)、鴻蒙、計算機網(wǎng)絡(luò)、嵌入式物聯(lián)網(wǎng)、軟件測試、數(shù)據(jù)結(jié)構(gòu)與算法、音視頻開發(fā)、Flutter、IOS開發(fā)、PHP開發(fā)、.NET、安卓逆向、云計算
到了這里,關(guān)于企業(yè)開展開源安全治理必要性及可行性詳細分析,瘋狂漲知識的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!