信創企業如何落地軟件開發安全
現如今,是“軟件定義一切”的(de)時(shí)代,軟件已然成爲人(rén)類社會基礎設施的(de)一部分(fēn),與個(gè)人(rén)生活、社會民生、國家發展高(gāo)度融合。而大(dà)力發展信創是我國目前重要的(de)一項國家戰略,爲當今形勢下(xià)國家經濟發展注入了(le)新動能。
發展信創是爲了(le)解決本質安全的(de)問題。本質安全也(yě)就是将以前依賴國外的(de)産品和(hé)技術變成自己可(kě)掌控、可(kě)研究、可(kě)發展、可(kě)生産的(de)産品與技術,通(tōng)過發展信創産業構建自己的(de)IT産業标準和(hé)生态,使得(de)IT産品和(hé)技術安全可(kě)控。國産操作系統、數據庫、中間件、應用(yòng)軟件快(kuài)速發展,持續構建完善且豐富的(de)行業生态。
軟件開發安全
當下(xià)因軟件存在的(de)缺陷而導緻的(de)網絡安全問題越來(lái)越嚴重,CNVD 已收錄各類安全漏洞信息超16.6萬條,其中:超過95%的(de)安全漏洞都發生在各類軟件本身,而當中又因爲軟件開發相關問題造成的(de)安全漏洞占96% 以上。由此可(kě)判斷,在開發階段産生的(de)軟件缺陷會成爲阻礙信創發展的(de)一道技術難關。
如果我們把軟件開發類比建築工程,一棟建築從設計到建設再到落成的(de)過程中:設計決定了(le)建築的(de)品質,基礎決定了(le)建築的(de)高(gāo)度,材料結構決定了(le)建築的(de)安全程度。同理(lǐ),構造軟件的(de)每一行代碼、每一個(gè)組件都将影(yǐng)響整個(gè)軟件的(de)可(kě)用(yòng)性和(hé)安全性。我們需要像修建高(gāo)樓一樣構造軟件,從規劃圖紙到著(zhe)手建設的(de)每個(gè)環節都要做(zuò)好相應的(de)安全措施,才能保證最終交付良好的(de)産品。
由于軟件本身存在的(de)安全隐患會被人(rén)有意或無意的(de)攻擊後造成的(de)數據洩漏、系統崩潰,需要我們對(duì)軟件本身的(de)安全性額外加以重視。可(kě)以舉個(gè)更形象的(de)例子,就像胎兒(ér)要進行産檢一樣,在整個(gè)胎兒(ér)發育過程中,我們需要持續地對(duì)胎兒(ér)進行觀察檢測,包括B超、基因篩查、唐氏篩查等等,通(tōng)過各種指标來(lái)确定胎兒(ér)在發育過程中是否是健康的(de)狀态。如果發現問題,就能趕在胎兒(ér)出生之前做(zuò)好防護工作,如果等胎兒(ér)出生後再發現問題就爲時(shí)已晚了(le)。
我們的(de)開發安全理(lǐ)念就類似于胎兒(ér)産檢,我們通(tōng)過在開發過程中的(de)各個(gè)階段做(zuò)好相應的(de)安全設計或安全檢測等,來(lái)解決軟件的(de)“先天缺陷”,如此一來(lái)軟件的(de)交付就會像胎兒(ér)健康出生一樣有保障。
安全開發是從源頭減少損失
從更實際的(de)角度看,開發安全不僅僅是爲了(le)降低安全風險。一方面, 我們都希望将軟件維護成本控制在合理(lǐ)範圍内。但如果忽視軟件開發安全,往往需要在軟件交付後花費大(dà)量資金填補安全漏洞,導緻維護成本遠(yuǎn)超預期。
早在多(duō)年前,國外調研機構就做(zuò)過一項數據分(fēn)析,分(fēn)析表明(míng):如果一個(gè)軟件在發布後進行漏洞修複的(de)成本,約是漏洞在研發階段被解決時(shí)投入的(de)成本的(de)上百倍,約是在設計階段被解決時(shí)投入的(de)成本的(de)上千倍,而這(zhè)還(hái)不包括上線後漏洞所帶來(lái)的(de)額外損失。
所以,我們希望在軟件開發中,安全是從設計源頭開始,通(tōng)過開發安全的(de)賦能引入自動化(huà)的(de)安全工具并且爲相應的(de)開發人(rén)員(yuán)進行安全技能的(de)培訓,來(lái)消除安全風險,爲未來(lái)降低安全維護的(de)成本。
但從目前的(de)企業情況來(lái)看,安全開發的(de)能力普遍欠缺,缺失的(de)方面有很多(duō),包括架構上的(de)缺失、人(rén)員(yuán)上的(de)缺失、資金上的(de)缺失等等。
另一方面,很多(duō)開發人(rén)員(yuán)不具備軟件開發安全的(de)意識和(hé)技能,同時(shí)安全人(rén)員(yuán)對(duì)開發又不熟悉,兩種人(rén)員(yuán)在職責上有分(fēn)歧,所以在此情況下(xià)也(yě)就造成了(le)開發團隊和(hé)安全團隊專業知識的(de)不對(duì)稱,無法在開發階段做(zuò)好安全防護。
軟件開發安全方法
軟件工程發展過程就是管理(lǐ)和(hé)技術并行,共同迎接挑戰的(de)曆史。軟件工程的(de)發展曆史分(fēn)爲了(le)三個(gè)階段:
第一個(gè)階段:上世紀五十年代開始,軟件屬于高(gāo)精尖的(de)技術,主要客戶以航天航空業和(hé)金融業爲主。由于軟件複雜(zá)度上升,軟件質量出現了(le)問題,造成工程進度不斷延期,在此階段,人(rén)們借鑒硬件制造業的(de)管理(lǐ)方法,初步解決了(le)軟件開發中質量差、不可(kě)控、無序等問題,項目從“混亂”逐漸走向“穩定可(kě)靠”。
第二個(gè)階段,上世紀八十年代開始,軟件行業爆發增長(cháng),各行業對(duì)軟件的(de)需求開始增加,軟件行業開始注重人(rén)與技術的(de)思維問題,創造出面向對(duì)象的(de)方法。開發效率和(hé)交付速度成了(le)該階段最大(dà)的(de)問題,而軟件工程的(de)發展出敏捷、精益、DevOps 等概念來(lái)解決研發效率問題,項目從“穩定+可(kě)靠”走向“速度+可(kě)靠”。
第三階段,正是現在我們處于的(de)“軟件定義一切”的(de)時(shí)代,在上個(gè)階段保障了(le)開發效率和(hé)交付速度的(de)開發方式下(xià),解決軟件産品可(kě)信的(de)問題成了(le)重點任務,我們需要從“速度+可(kě)靠”開始向“可(kě)信+速度”演進, DevSecOps、S-SDLC、内生安全等理(lǐ)念也(yě)随之而誕生。
從軟件工程學的(de)角度看軟件開發安全
根據國家标準《GB/T 11457-2006 軟件工程術語》“軟件開發過程(2.1491)”是把用(yòng)戶要求轉化(huà)爲軟件産品的(de)過程,此過程包括:把用(yòng)戶要求轉換爲軟件需求,把軟件需求轉化(huà)爲設計,用(yòng)代碼來(lái)實現設計,對(duì)代碼進行測試,包括安裝和(hé)驗收。
我們通(tōng)常把軟件開發生命周期(SDLC)定義爲:需求、設計、實現、驗證、發布、運維6個(gè)生命周期階段。随之産生的(de)是我們典型的(de)兩種開發模式,就是瀑布式開發、敏捷式開發,這(zhè)兩種開發模式都有自己的(de)适用(yòng)場(chǎng)景和(hé)優勢,針對(duì)軟件開發安全,兩種模式也(yě)都有各自的(de)方法。
首先我們來(lái)看瀑布式開發,由于瀑布式是随著(zhe)這(zhè)個(gè)整個(gè)開發生命周期開展,所以在每一個(gè)階段融入相應的(de)安全過程和(hé)安全實踐,就形成了(le)我們的(de) S-SDLC 模型和(hé)方法論便得(de)以形成。
作爲軟件開發安全的(de)開山鼻祖,微軟在前幾年更新了(le)之前早期的(de) SDL 模型,包括适用(yòng)于瀑布開發和(hé)敏捷開發的(de)實踐。在新的(de)方法論中适用(yòng)于瀑布式開發的(de) SDL 中不在強調流程,而是強調實踐,這(zhè)就對(duì)應上了(le) S-SDLC 模型。在 S-SDLC 中我們強調對(duì)開發過程中自動化(huà)檢測(包括:SAST、DAST、IAST 等),同時(shí)也(yě)強調對(duì)開發過程中人(rén)員(yuán)、工具、組件的(de)管理(lǐ)。
第二個(gè)是面向敏捷開發的(de)軟件開發安全方法。由于敏捷開發是針對(duì)需求頻(pín)繁變更和(hé)細化(huà)的(de)一種開發模式,同時(shí)伴随著(zhe)互聯網的(de)快(kuài)速發展,用(yòng)戶需求快(kuài)速變化(huà),企業業務也(yě)相應的(de)快(kuài)速變化(huà),再加上 DevOps 開發運營一體化(huà)的(de)理(lǐ)念,推動敏捷開發下(xià)開發安全方法向 DevSecOps 這(zhè)種快(kuài)速交付保障安全的(de)方式來(lái)實現。
軟件開發安全相關政策與标準
針對(duì)軟件開發安全,國家在政策上、安全标準上都有相應的(de)文件,也(yě)有行業标準來(lái)針對(duì)開發源代碼缺陷的(de)規範。以下(xià)摘選了(le)一些與軟件開發安全密切相關的(de)标準與政策,可(kě)以在各軟件企業在執行開發安全落地時(shí)提供參考。
國家政策
《國家網絡空間安全戰略》
第四章(zhāng)“戰略任務”
第七條
“夯實網絡安全基礎”。堅持創新驅動發展,盡快(kuài)在核心技術上取得(de)突破。重視軟件安全,加快(kuài)安全可(kě)信産品推廣應用(yòng)。
《新時(shí)期促進集成電路産業和(hé)軟件産業高(gāo)質量發展若幹政策》
第十八條
鼓勵軟件企業執行軟件質量、信息安全、開發管理(lǐ)等國家标準。加強集成電路标準化(huà)組織建設,完善标準體系,加強标準驗證,提升研發能力。提高(gāo)集成電路和(hé)軟件質量,增強行業競争力。
《網絡安全産業高(gāo)質量發展三年行動計劃(2021-2023年)(征求意見稿)》
二、重點任務
(一)産業供給強化(huà)行動
6. 加強共性基礎支撐。持續建設高(gāo)質量威脅信息、漏洞、惡意代碼、惡意地址、攻擊行爲特征等網絡安全基礎知識庫,強化(huà)網絡安全知識支撐能力。加快(kuài)發展惡意代碼檢測、高(gāo)級威脅監測分(fēn)析、信息處理(lǐ)、逆向分(fēn)析、漏洞分(fēn)析、密碼安全性分(fēn)析等底層引擎和(hé)工具,提升網絡安全知識使用(yòng)水(shuǐ)平。加快(kuài)發展源代碼分(fēn)析、組件成分(fēn)分(fēn)析等軟件供應鏈安全工具,提升網絡安全産品安全開發水(shuǐ)平。積極推進網絡靶場(chǎng)技術研究,建設結合虛拟環境和(hé)真實設備的(de)安全孿生試驗床,提升網絡安全技術産品測試驗證能力。
等保2.0
自行軟件開發
二級
a) 應将開發環境與實際運行環境物(wù)理(lǐ)分(fēn)開,測試數據和(hé)測試結果受到控制;
b) 應在軟件開發過程中對(duì)安全性進行測試,在軟件安裝前可(kě)能存在的(de)惡意代碼進行檢測。
三級、四級
a) 應将開發環境與實際運行環境物(wù)理(lǐ)分(fēn)開,測試數據和(hé)測試結果受到控制;
b) 應制定軟件開發管理(lǐ)制度,明(míng)确說明(míng)開發過程的(de)控制方法和(hé)人(rén)員(yuán)行爲準則;
c) 應制定代碼編寫安全規範,要求開發人(rén)員(yuán)參照(zhào)規範編寫代碼;
d) 應具備軟件設計的(de)相關文檔和(hé)使用(yòng)指南(nán),并對(duì)文檔使用(yòng)進行控制;
e) 應保證在軟件開發過程中對(duì)安全性進行測試,在軟件安裝前可(kě)能存在的(de)惡意代碼進行檢測;
f) 應對(duì)程序資源庫的(de)修改、更新、發布進行授權和(hé)批準,并嚴格進行版本控制;
g) 應保證開發人(rén)員(yuán)爲專職人(rén)員(yuán),開發人(rén)員(yuán)的(de)開發活動受到控制、監視和(hé)審查。
外包軟件開發
二級
a) 應在軟件交付前檢測其中可(kě)能存在的(de)惡意代碼;
b) 應保證開發單位提供軟件設計文檔和(hé)使用(yòng)指南(nán)。
三級、四級
a) 應在軟件交付前檢測其中可(kě)能存在的(de)惡意代碼;
b) 應保證開發單位提供軟件設計文檔和(hé)使用(yòng)指南(nán);
c) 應保證開發單位提供軟件源代碼,并審查軟件中可(kě)能存在的(de)後門和(hé)隐藏信道。
國家信息安全标準:應用(yòng)軟件安全編程指南(nán)
該标準提出了(le)應用(yòng)軟件安全編程的(de)通(tōng)用(yòng)框架,從提升軟件安全性的(de)角度對(duì)應用(yòng)軟件編程過程進行指導。
該标準适用(yòng)于客戶端/服務器架構的(de)應用(yòng)軟件開發,其他(tā)架構的(de)應用(yòng)軟件也(yě)可(kě)參照(zhào)使用(yòng)。
标準内容:
1. 安全功能實現
2. 日志安全
3. 代碼實現安全
4. 資源使用(yòng)安全
5. 環境安全
代碼示例:
提供基于Java和(hé)C/C++的(de)對(duì)應代碼示例。
國家信息安全标準:代碼安全審計規範
該标準規定了(le)代碼安全的(de)審計過程以及安全功能缺陷、代碼實現安全缺陷、資源使用(yòng)安全缺陷、環境安全缺陷等典型審計指标及對(duì)應的(de)證實方法。
該标準适用(yòng)于指導代碼安全審計相關工作。
标準内容:
1. 審計概述
2. 審計過程
3. 安全功能缺陷審計
4. 代碼實現安全缺陷審計
5. 資源使用(yòng)安全缺陷審計
6. 環境安全缺陷審計
代碼示例:
提供基于Java和(hé)C/C++的(de)對(duì)應代碼示例。
電子行業标準:開發語言源代碼缺陷控制與測試規範
《SJ/T 11681-2017 C#語言源代碼缺陷控制與測試指南(nán)》
《SJ/T11682-2017 C/C++語言源代碼缺陷控制與測試規範》
《SJ/T11683-2017 Java語言源代碼缺陷控制與測試指南(nán)》
• 規定了(le)各語言程序中典型類型源代碼缺陷的(de)表象說明(míng)、控制活動和(hé)測試方法。
• 适用(yòng)于各類語言程序設計與測試。
給信創軟件企業落地的(de)一些建議(yì)
信創軟件企業如何落地軟件開發安全?這(zhè)裏從組織管理(lǐ)層面和(hé)技術層面分(fēn)别提出4點建議(yì):
管理(lǐ)層面
管理(lǐ)建議(yì)1:自上而下(xià)推行軟件開發安全落地,且有組織結構支撐
信創企業在軟件開發安全落地的(de)時(shí)候,僅依賴傳統的(de)信息安全部門或者網絡安全部門的(de)規劃是遠(yuǎn)遠(yuǎn)不夠的(de),必須要有公司領導層自上而下(xià)的(de)推動。其中一個(gè)非常重要的(de)原因,是軟件開發安全需要和(hé)開發各個(gè)環節深度地結合,需要得(de)到研發部門所有人(rén)全力的(de)支持,還(hái)需要在各個(gè)開發環節給出相應的(de)開發規範、相應的(de)開發安全技能和(hé)工具——這(zhè)些我們都需要去大(dà)力地做(zuò)融合調整工作。因此,企業需要領導自上而下(xià)的(de)推動,來(lái)引導開發安全的(de)落地。
另一方面看,開發安全的(de)成本投入是比較大(dà)的(de),但産生的(de)收益卻是隐性的(de)。開發安全所創造的(de)價值主要體現在軟件的(de)質量層面,一是減少了(le)漏洞的(de)存在,使得(de)這(zhè)個(gè)軟件的(de)質量更加可(kě)信;二是降低了(le)運維的(de)成本,使軟件公司不必爲補救漏洞而疲于奔命但這(zhè)項價值并不能給軟件銷售額帶來(lái)直觀增長(cháng),無法創造近在眼前的(de)利益、難以直接刺激員(yuán)工積極性,必須使用(yòng)眼界更開闊、目光(guāng)更長(cháng)遠(yuǎn)的(de)戰略加以支持。
除了(le)自上而下(xià)的(de)要求,企業還(hái)需要有相應的(de)組織結構來(lái)做(zuò)支撐,因爲軟件開發安全在實施過程中,會産生大(dà)量的(de)新工作内容和(hé)工作流程,如果在工作職責上混亂不清的(de)話(huà),會直接影(yǐng)響軟件開發安全的(de)執行效率和(hé)實施效果。
管理(lǐ)建議(yì)2:軟件開發安全要與企業的(de)質量管理(lǐ)體系相結合
大(dà)部分(fēn)企業都設有質量管理(lǐ)部門,并有相應的(de)質量管理(lǐ)人(rén)員(yuán)。但是,質量管理(lǐ)部門通(tōng)常不關心産品的(de)安全問題,卻忽略了(le)安全在本質上也(yě)是産品的(de)一項質量指标。
在質量管理(lǐ)領域裏好的(de)質量應該是設計出來(lái)的(de),同樣軟件安全也(yě)應該是在前期就應該做(zuò)好的(de)。業界已有成熟的(de)方法和(hé)流程,如:ISO 9001、CMM等級,這(zhè)些都用(yòng)來(lái)保障産品的(de)質量的(de)方法。
在軟件開發安全落地的(de)過程中,需要将一些具體的(de)軟件安全指标作爲質量管理(lǐ)的(de)标準,比如說普通(tōng)缺陷和(hé)高(gāo)危漏洞的(de)數量、漏洞修複情況等,質量管理(lǐ)部門可(kě)以根據這(zhè)些指标來(lái)決定産品是否可(kě)以上線或交付。
管理(lǐ)建議(yì)3:用(yòng)度量體系将軟件開發安全實施效果可(kě)視化(huà)
一套成型的(de)度量體系,能夠将軟件開發安全實施的(de)效果形象化(huà)地呈現出來(lái)。爲何要做(zuò)效果可(kě)視化(huà),原因可(kě)見于第1點管理(lǐ)建議(yì),軟件開發安全需要通(tōng)過自上而下(xià)的(de)推動。若要普及安全意識,就必須讓其他(tā)公司員(yuán)工親眼“看見”安全的(de)重要性。隻有将安全的(de)效果可(kě)視化(huà),才能更容易地獲得(de)管理(lǐ)層和(hé)團隊其他(tā)人(rén)的(de)持續性支持。
在做(zuò)這(zhè)個(gè)度量體系之前,我們還(hái)需要達成一個(gè)共識,就是“世界上沒有百分(fēn)之百的(de)安全,因爲安全本身就是動态變化(huà)的(de)。”我們不能保證實施了(le)開發安全就不會有漏洞存在,但可(kě)以給出一個(gè)相對(duì)合理(lǐ)的(de)預期,通(tōng)過軟件開發安全實施後,我們盡可(kě)能減少了(le)缺陷的(de)存在,把風險控制在一個(gè)可(kě)控範圍以内,在這(zhè)種情況下(xià)建立一套度量體系,通(tōng)過度量方法把軟件開發安全成果呈現出來(lái)。
一般而言,成果呈現有兩種方式。一種是通(tōng)過軟件開發安全能力成熟度來(lái)體現,能力成熟度的(de)提升可(kě)以證明(míng)團隊的(de)軟件開發安全能力得(de)到了(le)提高(gāo),能夠開發出更加安全可(kě)信的(de)軟件産品。
另一種,是通(tōng)過一些結果性的(de)數據來(lái)判斷我們開發安全是有效的(de)。比如說我們能夠在軟件上線前做(zuò)了(le)相應的(de)測試和(hé)修複工作,來(lái)表明(míng)軟件上線時(shí)是不帶有嚴重高(gāo)危漏洞,這(zhè)種情況下(xià)也(yě)是一個(gè)非常好的(de)這(zhè)麽一種結果的(de)一種展示。
在開發安全業界中,比較成熟的(de)度量體系有兩種,一個(gè)是 OWASP SAMM 模型,另一個(gè)是 BSIMM 模型,這(zhè)兩個(gè)模型在行業裏面有很高(gāo)的(de)知名度,也(yě)是很多(duō)團隊在做(zuò)軟件開發安全能力評估的(de)時(shí)候常用(yòng)的(de)方法。
管理(lǐ)建議(yì)4:建立合适的(de)軟件開發安全人(rén)員(yuán)培訓體系
軟件開發安全不僅僅是偏重于方法和(hé)實踐, “人(rén)”也(yě)是其中非常重要的(de)一個(gè)因素。想讓開發人(rén)員(yuán)了(le)解并且關注軟件開發安全,就需要建立起一套合适的(de)安全人(rén)員(yuán)培訓體系。與信息安全培訓不同,安全人(rén)員(yuán)培訓更聚焦在軟件開發安全的(de)意識理(lǐ)念和(hé)技術能力方面,其中的(de)意識培訓闆塊包括了(le)軟件開發安全的(de)基本知識,開發流程與典型的(de)實踐,還(hái)有一些國家法律法規以及行業标準層面的(de)信息。
除了(le)軟件安全意識培訓外,還(hái)有相應的(de)技術能力培訓,其中包括安全編碼的(de)能力、代碼審計能力、威脅建模能力等。在整個(gè)培訓體系下(xià),我們需要把培訓分(fēn)成不同等級,再去面向不同類型的(de)開發人(rén)員(yuán)和(hé)安全人(rén)員(yuán)來(lái)提供培訓内容。
技術層面
技術建議(yì)1:威脅模型可(kě)以使産品避免大(dà)的(de)設計風險
在信創軟件開發過程中,增加一些威脅建模的(de)設計工作。它能建立起産品的(de)威脅模型,通(tōng)過模型化(huà)的(de)方法來(lái)管理(lǐ)軟件的(de)安全威脅,能有效偵察風險與推進緩解措施的(de)實施。
STRIDE 威脅建模方法可(kě)以将大(dà)顆粒度的(de)威脅結構化(huà),避免威脅模型遺漏大(dà)顆粒度的(de)威脅,保證威脅的(de)完整性;
一套威脅模型的(de)最核心價值,就在于能發現軟件的(de)設計漏洞,即發現某個(gè)具體的(de)威脅沒有相應的(de)緩解措施或緩解措施不足。
技術建議(yì)2:安全特性組件化(huà)可(kě)盡量避免編碼漏洞
安全功能的(de)組件化(huà),能幫助我們有效規避編碼漏洞。固然,安全掃描工具能夠識别一些已經存在的(de)編碼漏洞,卻無法從防治編碼漏洞的(de)産生。安全功能的(de)組件化(huà)的(de)意義,就在于從根源上遏制漏洞的(de)産生。
雖然之前提到了(le)通(tōng)過培訓提高(gāo)安全編碼能力,但我們還(hái)是不能保證所有開發人(rén)員(yuán)編寫的(de)代碼都不含漏洞。而如果我們能把一些安全功能組件化(huà),盡可(kě)能簡化(huà)開發人(rén)員(yuán)自主編寫的(de)流程,就能降低代碼出錯的(de)風險、提高(gāo)代碼編寫的(de)規範性。因爲這(zhè)些組件在成爲開發團隊的(de)公共組件時(shí),本身就獲得(de)了(le)安全團隊的(de)重點保障。
技術建議(yì)3:管理(lǐ)第三方組件和(hé)第三方軟件的(de)風險
第三點是管理(lǐ)好開發過程中應用(yòng)的(de)第三方組件的(de)風險。這(zhè)裏的(de)“第三方組件”不僅僅包括開源組件,還(hái)包括商業性的(de)組件,這(zhè)些組件不僅多(duō)見于信創行業,在其他(tā)行業所應用(yòng)的(de)占比也(yě)是非常大(dà)的(de)。
尤其是現在對(duì)軟件供應鏈安全的(de)高(gāo)度重視,大(dà)家對(duì)組件自帶安全漏洞而造成的(de)破壞力也(yě)是有目共睹。所以,我們有必要做(zuò)好第三方組件和(hé)軟件的(de)資産管理(lǐ),通(tōng)過相應的(de)資産清單,來(lái)确定團隊研發的(de)軟件哪些使用(yòng)了(le)第三方,一旦軟件發生漏洞事件,可(kě)以根據清單迅速排查處理(lǐ)。
技術建議(yì)4:使用(yòng)自動化(huà)軟件安全測試工具鏈
無論是瀑布式開發場(chǎng)景下(xià)的(de) S-SDLC 還(hái)是敏捷開發場(chǎng)景下(xià)的(de) DevSecOps,軟件開發安全的(de)落地始終離不開流程體系和(hé)高(gāo)度自動化(huà)的(de)工具鏈的(de)融合,常見的(de)應用(yòng)檢測工具包括 SAST、DAST、IAST、SCA 、FUZZ 等,都是有助于軟件開發安全落地工作的(de)自動化(huà)工具,我們可(kě)以通(tōng)過使用(yòng)這(zhè)些工具來(lái)提升真正軟件安全測試的(de)效率和(hé)軟件開發安全的(de)工作效率。