9月25日,由CNCF大使、開源意見領(lǐng)袖共同發(fā)起的,國內(nèi)最大的獨立第三方云原生終端用戶和泛開發(fā)者社區(qū)——云原生社區(qū),在騰訊大廈成功舉辦深圳站首屆MeetUp。
本屆MeetUp聚焦云原生,火線安全洞態(tài)產(chǎn)品負(fù)責(zé)人董志勇分享了“使用IAST構(gòu)建高效的DevSecOps流程”,從IAST的時代需要到IAST含義,從洞態(tài)IAST的功能與實現(xiàn)原理到洞態(tài)IAST與DevOps的高效融合均做了詳細(xì)介紹。
01 IAST的時代需要
#安全測試是應(yīng)用開發(fā)的必要環(huán)節(jié)
自2016年以來,隨著《中華人民共和國網(wǎng)絡(luò)安全法》、《中華人民共和國數(shù)據(jù)安全法》、《中華人民共和國個人信息保護(hù)法》等相關(guān)法律相繼頒布并施行,企業(yè)安全運行能力要求不斷提高。
此外,網(wǎng)絡(luò)攻擊頻發(fā)也引起網(wǎng)絡(luò)界的關(guān)注。被勒索軟件勒索、數(shù)據(jù)泄露、服務(wù)器被入侵等在近年來出現(xiàn)的網(wǎng)絡(luò)安全問題中占據(jù)極大比例,這些都是應(yīng)用本身安全性不足所導(dǎo)致的。
安全測試成為應(yīng)用開發(fā)的必要環(huán)節(jié)。
#IAST是安全測試的最優(yōu)選擇
在瀑布開發(fā)與敏捷開發(fā)時代,應(yīng)用迭代速度相對較慢,企業(yè)安全團(tuán)隊人員數(shù)量足夠cover住應(yīng)用開發(fā)上線的測試頻率。
但隨著開發(fā)流程理念的更新,DevOps逐漸出現(xiàn)并成為主流。DevOps在“提高企業(yè)生產(chǎn)效率、實現(xiàn)應(yīng)用迭代大加速“的同時,也帶來了“安全測試任務(wù)密度變大,待上線應(yīng)用的數(shù)量與安全測試人員數(shù)量嚴(yán)重不對等”的問題。原有的安全測試手段已不合時宜,高效可靠的自動化檢測成為安全團(tuán)隊的不二之選。
雖然SAST和DAST也可以承擔(dān)自動化檢測的角色,但二者都具有致命的缺點。相比之下,IAST則是不偏科,且各方面都突出的優(yōu)等生。目前來說,IAST才是自動化安全檢測的最優(yōu)選擇。
02 洞態(tài)IAST
IAST全稱為 “交互式應(yīng)用程序安全測試” ,通過利用Agent來監(jiān)控應(yīng)用程序運行時的函數(shù)執(zhí)行情況,采集相關(guān)數(shù)據(jù),與服務(wù)端進(jìn)行實時交互,從而高效、準(zhǔn)確地識別出應(yīng)用程序中的漏洞。同時可準(zhǔn)確定位到漏洞所在的文件、行數(shù)、方法及參數(shù),方便開發(fā)團(tuán)隊及時修復(fù)漏洞。
洞態(tài)IAST由火線安全于9月1日正式開源發(fā)布,是全球第一款開源IAST產(chǎn)品。憑借高效的檢測效率、極高的檢出率、極低的誤報率、極少的臟數(shù)據(jù)以及極詳細(xì)的漏洞詳細(xì),洞態(tài)IAST在發(fā)布之際便受到了諸多廠商的關(guān)注。
#檢測原理
作為一款創(chuàng)新的漏洞檢測產(chǎn)品,洞態(tài)IAST的技術(shù)優(yōu)勢十分顯著。 洞態(tài)完全基于“值匹配算法“和”污點跟蹤算法”對漏洞進(jìn)行檢測。這種算法檢測準(zhǔn)確率高,無需采集和重放流量,可以適配各種場景下的漏洞檢測(如:API網(wǎng)關(guān)、分布式、微服務(wù)等架構(gòu)下的后端服務(wù)漏洞檢測),還不會產(chǎn)生臟數(shù)據(jù),干擾正常的開發(fā)測試流程。
對于檢測發(fā)現(xiàn)的漏洞,洞態(tài)根據(jù)外部可控數(shù)據(jù)的傳播過程,完整的還原漏洞觸發(fā)流程,幫助DevOps團(tuán)隊快速理解漏洞、定位漏洞,更好的解決漏洞。通過賦能研發(fā)人員,提高漏洞修復(fù)的效率。
和業(yè)內(nèi)同類產(chǎn)品“重Agent端、輕服務(wù)端”的架構(gòu)不同,洞態(tài)的Agent端僅用于實現(xiàn)數(shù)據(jù)監(jiān)聽,漏洞檢測全部在服務(wù)端完成。這種方法的好處是Agent端代碼和邏輯簡單,單點故障率更低也極少需要升級,降低了維護(hù)成本。另外,傳統(tǒng)IAST產(chǎn)品對于未檢測的漏洞都在Agent端直接丟棄,產(chǎn)品出現(xiàn)新的檢測策略后,需要重新發(fā)起應(yīng)用的測試,而洞態(tài)IAST將檢測數(shù)據(jù)保存在服務(wù)端,可以輕松在服務(wù)端進(jìn)行回歸測試。
#洞態(tài)功能優(yōu)勢
● 支持多種漏洞檢測
● 依賴組件的供應(yīng)鏈風(fēng)險檢查
洞態(tài)IAST支持應(yīng)用程序內(nèi)部所依賴組件的供應(yīng)鏈風(fēng)險檢查,一是支持對應(yīng)用程序內(nèi)部所使用的第三方組件進(jìn)行梳理:當(dāng)某個組件爆發(fā)漏洞時,可以利用這個組件,快速反查出企業(yè)內(nèi)部運用此組件的應(yīng)用和服務(wù)器。快速響應(yīng),避免企業(yè)內(nèi)部程序受到外部攻擊;
二是針對已經(jīng)爆發(fā)的漏洞:依靠內(nèi)部漏洞庫,企業(yè)安全人員便可以知曉使用的組件是不是有風(fēng)險,從而及時升級組件,避免漏洞風(fēng)險的出現(xiàn)。
●支持各種業(yè)務(wù)場景
傳統(tǒng)Web應(yīng)用;
前后端分離場景下的漏洞檢測;
驗證碼場景下的漏洞檢測;
數(shù)據(jù)包加密場景;
防重放簽名等場景;
分布式架構(gòu)下的漏洞檢測;
微服務(wù)架構(gòu)下的漏洞檢測;
●API Sitemap
類Swagger的API Sitemap,方便各部門人員查看;
提供測試覆蓋率,精確的反饋出未測試到的接口;
準(zhǔn)確的參數(shù)名稱及數(shù)據(jù)類型,可用于直接發(fā)送HTTP請求,提高接口覆蓋率;
●統(tǒng)一數(shù)據(jù)格式,實現(xiàn)離線檢測
洞態(tài)IAST將探針上報的數(shù)據(jù)格式進(jìn)行了統(tǒng)一,通過利用不同語言返回的數(shù)據(jù),構(gòu)建數(shù)據(jù)底座。基于數(shù)據(jù)底座,對數(shù)據(jù)進(jìn)行分析,實現(xiàn)漏洞的離線檢測。
●支持檢測策略自定義
企業(yè)安全人員可通過自定義策略,快速檢測對應(yīng)漏洞,并可通過增加策略類型實現(xiàn)檢測類型的補充(針對新發(fā)現(xiàn)的漏洞)。
03 洞態(tài)IAST+DevOps
# IAST+Kubernetes
應(yīng)用運行時,無狀態(tài)地安裝于應(yīng)用程序的探針集群便會采集對應(yīng)的數(shù)據(jù),并發(fā)送到OPENAPI。當(dāng)探針集群數(shù)量過大時,基于探針集群數(shù)量,橫向擴(kuò)展OPENAPI服務(wù)數(shù)量。此時,OPENAPI足夠cover探針集群的流量,后續(xù)的存儲集群與分析引擎也將支持彈性擴(kuò)容,并做安全風(fēng)險檢測。
#Agent+Docker
通過構(gòu)建DongTai的基礎(chǔ)鏡像,實現(xiàn)自動安裝探針。
#Agent+Kubernetes
基于數(shù)據(jù)底座,通過sidecar方式配置DongTai的容器,自動化安裝探針。
#洞態(tài)IAST+DevOps
DevOps中有各種各樣的工具,洞態(tài)IAST所有的數(shù)據(jù)都可通過OpenAPI接口進(jìn)行操作,快速與CI/CD集成,實現(xiàn)探針的下載、部署、獲取風(fēng)險等。
洞態(tài)IAST是火線安全于2021年9月1日發(fā)布的全球第一款開源專業(yè)IAST產(chǎn)品,企業(yè)可根據(jù)需要調(diào)配,以適應(yīng)自身業(yè)務(wù)和使用場景,我們也期待大家參與洞態(tài)IAST開源項目。