牟艷琳 顧佳林 羅君 裴明煜 李燕
摘要:隨著中臺建設愈發(fā)完善,能力標準化治理工作也受到更多地重視。中臺安全作為能力標準化的強大保障,應成為中臺能力標準化治理工作的首要任務。同時,隨著開源組件使用率的飆升,開源風險管理也成為一個不容忽視的課題。本文將重點研究開源漏洞檢測技術在能力標準化治理工作中的實踐應用成效。
關鍵詞:能力標準化;中臺安全;開源安全;靜態(tài)測試分析;漏洞檢測
中臺作為一個靈活快速的成本中心,通過統(tǒng)一的標準將后端技術能力整合為可以隨需調用的“中間件”。相較于傳統(tǒng)的“前臺+后臺”模式,中臺能夠減少相同能力的重復開發(fā),提高效率的同時節(jié)省大量重復造輪子的成本。
在2021年10月,中央發(fā)布了《國家標準化發(fā)展綱要》,指出“標準是經濟活動和社會發(fā)展的技術支撐,也是國家基礎性制度的重要方面”。為積極響應這項標準化工作要求,中臺需要在能力治理等方面持續(xù)開展標準化工作,為中臺的價值應用和價值開放提供規(guī)范和流程指引。安全作為中臺標準化的堅實基礎,是技術研發(fā)的長期課題。
隨著中臺能力規(guī)模的擴大和使用覆蓋率的提高,能力本身的安全愈加重要。同時,開源組件作為當前主流開發(fā)元素,其漏洞風險、合規(guī)風險等安全問題也變得更加突出。因此,需要針對開源安全制定標準,并不斷研究和優(yōu)化安全應用技術,提升能力安全管理水平。
一、SAST漏洞檢測技術在能力標準化治理中的應用研究
此次研究的主要工作流程包含能力安全標準的制定、開源漏洞檢測技術的學習研究、技術應用實踐工作的實施、應用成效結果分析及結論輸出,詳細內容如下。
(一)開源安全標準制定
能力安全管理貫穿了能力設計、研發(fā)、測試、發(fā)布、運營所有階段。作為研發(fā)安全方面的重點工作,對開源組件的使用應符合以下標準:
①規(guī)范開源組件引入流程,要做好開源組件漏洞檢測、漏洞修復及風險管理。
②對開源組件許可證及協(xié)議進行安全審查。
③對開源組件可傳染性、兼容性和安全性進行審計。
其中標準1中“做好開源組件漏洞檢測”的要求可以通過開源漏洞檢測技術來完成。
(二)漏洞檢測技術介紹
1.開源漏洞檢測技術類型
漏洞作為開源組件當前面臨的最大風險,已經成為各大廠商優(yōu)先解決的開源風險問題。漏洞的識別、處理等技術是目前的重要研究方向,目前有三類開源較成熟的漏洞風險檢測工具,詳情如下:
(1)SAST(靜態(tài)分析測試)
SAST是一種白盒測試技術,在開發(fā)階段對源代碼進行安全測試,發(fā)現(xiàn)安全漏洞。SAST通過分析應用程序的源代碼或二進制文件的語法、結構、過程、接口等來發(fā)現(xiàn)程序代碼中存在的安全漏洞。
(2)DAST(動態(tài)分析測試)
DAST是目前應用最廣泛、使用最簡單的一種Web應用安全測試方法,是一種黑盒測試技術。DAST通過從外部查看應用,檢查其運行狀態(tài),并觀察其對工具模擬攻擊的響應來判斷應用是否容易受到攻擊,以及是否容易受到真正的惡意攻擊。DAST的典型工具包括AMVS和AppScan。
(3)IAST(交互式應用安全測試)
IAST (Interactive Application Security Testing)是灰盒測試技術,在整個開發(fā)生命周期中可以不間斷地監(jiān)測應用中的漏洞。它能夠通過在開發(fā)和測試過程中使用工具實時提供報警[1]。
2.靜態(tài)分析關鍵技術說明
靜態(tài)分析方法在處理中臺安全業(yè)務場景復雜且參與方眾多的情況下具有靈活分配分析資源和信息采集較為完整的優(yōu)點。與動態(tài)分析相比,靜態(tài)分析的最大優(yōu)勢在于不對軟件系統(tǒng)進行任何侵入性操作,不帶來額外的風險和資源占用,并且不會影響系統(tǒng)的正常運行,對各個廠商和軟件系統(tǒng)更加友好。以下是靜態(tài)測試分析(SAST)的關鍵技術介紹:
①外部組件信息轉換為軟件物料清單:需獲取組件的類型、發(fā)布組織、所屬包、組件名字、版本信息等。
②從NVD、CNVD網(wǎng)站獲取漏洞信息,并對漏洞數(shù)據(jù)進行清洗、保存。主要對CPE信息進行提取,與組件信息進行比對,從而獲取相應的漏洞信息。
通用平臺枚舉(CPE)是一種標準化方法,用于描述和識別企業(yè)計算資產中存在的應用程序、操作系統(tǒng)和硬件設備。通過使用CPE名稱識別已安裝產品的信息,可以幫助制定有關資產的完全或部分自動化決策。例如,通過識別XYZ Visualizer Enterprise Suite的存在,漏洞管理工具可以檢查系統(tǒng)中是否存在已知軟件漏洞,配置管理工具可以驗證軟件是否按照組織策略進行了安全配置。CPE名稱用作標準化信息源,以便在不同工具之間實施和驗證IT管理策略。
當前的CPE版本為2.3。 CPE 2.3通過基于堆棧的模型中的一組規(guī)范來定義,其中功能基于在堆棧中指定為較低級別、更簡單、更窄的元素。這種設計為創(chuàng)新提供了機會,因為可以通過組合所需的元素來定義新功能,并且可以更好地劃分和管理變更的影響。
CPE 2.3堆棧圖:從下到上依次是命名、名稱匹配、適用性和字典。
CPE的內容格式如下:
cpe:/
其中,part表示目標類型,允許的值有a(應用程序)、h(硬件平臺)、o(操作系統(tǒng));vendor表示供應商;product表示產品名稱;version表示版本號;update表示更新包;edition表示版本;language表示語言項。
(三)技術應用實踐流程
能力研發(fā)作為軟件供應鏈的源頭環(huán)節(jié),是解決開源安全的重點環(huán)節(jié),無疑是最高效的安全管理方式,從供應鏈源頭把控開源安全風險。在研發(fā)過程中,定期上傳已完成部分的代碼包,并利用靜態(tài)分析技術提取代碼包中的組件信息,同時與爬取到的漏洞信息進行匹配,識別研發(fā)過程中所使用的開源組件的漏洞風險。通過了解所用組件的漏洞等級,避免使用存在高危漏洞的組件。同時,實時爬取最新的漏洞情報,更新組件漏洞信息,以掌握組件風險變化情況,并及時調整組件的使用。以下為靜態(tài)漏洞檢測的實施的詳細步驟:
①廠商上傳代碼包,解析代碼包以獲取組件的名稱、版本等信息;
②爬取公開的漏洞信息,并對漏洞信息進行存儲和管理;
③將組件信息與漏洞庫進行比對,以了解組件的風險程度;
④實時更新漏洞信息,并與組件進行比對,及時發(fā)現(xiàn)漏洞風險;
⑤將組件和漏洞信息實時更新到軟件供應鏈的SBOM中,以進行統(tǒng)一管理。
(四)實踐應用成效簡析
1.提升能力標準化治理工作開展效率
相較于人工對各能力研發(fā)階段的漏洞檢測報告進行檢核再進行檢測以核對數(shù)據(jù)真實性的方式,各廠商使用同一工具進行檢測,能力標準化治理運營管理人員可根據(jù)檢測記錄直接判斷各廠商是否完成檢測并可直接查看檢測結果,不僅保證評估標準的一致性,還可提高檢測效率。
據(jù)調研,單一漏洞檢測報告收集溝通需要5—10分鐘,查看需要5—10分鐘,檢測后核對數(shù)據(jù)需要1~2分鐘;使用同一工具檢測后,可節(jié)省報告收集時間5—10分鐘、檢測后數(shù)據(jù)核對時間1~2分鐘,共計提效約55%。
2.降低系統(tǒng)資源消耗,節(jié)約人力成本
通過使用自動化開源漏洞檢測工具獲取開源組件漏洞檢測結果,識別風險開源組件,并將安全開源組件納入制品庫。在能力研發(fā)階段,統(tǒng)一使用制品庫中的組件,并及時更新漏洞庫并與制品庫進行比對,以保證組件的安全性。
通過以上方式,可以直接免去各廠商在能力研發(fā)過程中的漏洞檢測環(huán)節(jié)。根據(jù)實踐結果,靜態(tài)解析及漏洞比對一個代碼包的時間為1~2分鐘,每項能力的代碼包數(shù)量在十幾到幾百個不等。以最少的代碼包數(shù)量15個為例,每項能力的系統(tǒng)檢測時間可節(jié)省約0.5小時。
同時,省去了廠商人工上傳代碼包、反復修改所使用的組件以及運營管理人員的檢核過程,每個能力可節(jié)省約1—2人天的人力成本。
二、結束語
隨著漏洞檢測技術手段逐漸增多且日趨成熟,結合本次研究中靜態(tài)分析技術的應用成果,可以持續(xù)研究其他漏洞檢測技術在中臺能力標準化治理中的可用性,提高業(yè)務場景的覆蓋率。我們可以研究動靜分析相結合的可行性,以提高漏洞檢測的準確率,并降低誤報率。還可以推動廠商的參與度,提升漏洞檢測技術在能力標準化統(tǒng)一管理中的應用效果。同時,后續(xù)可針對每一能力標準研究半自動化及智能工具,整體提升能力標準化治理效率,降低能力治理成本。
作者單位:牟艷琳 顧佳林 羅君 裴明煜 中國移動通信集團有限公司信息安全管理與運行中心
參考文獻
[1] 什么是軟件供應鏈安全?鵬信科技,微信公眾號, 2022-12-02 11:30.
李燕 卓望信息技術(北京)有限公司
牟艷琳(1988.02-),女,漢族,山東煙臺,研究生,工程師,研究方向:網(wǎng)絡與信息安全。