×

八款免費(fèi)開(kāi)發(fā)安全測(cè)試工具

分類:互聯(lián)網(wǎng)熱點(diǎn) 編輯:聊聊云計(jì)算 瀏覽量:405
2020-07-13 16:55:23

所謂“左移開(kāi)發(fā)安全”就是在開(kāi)發(fā)流程中的所有階段都考慮到安全性問(wèn)題,研發(fā)人員承擔(dān)更多的軟件安全責(zé)任。很多研發(fā)會(huì)認(rèn)為考慮軟件的安全性會(huì)給他們徒增更多工作量,但實(shí)際上安全能力是研發(fā)工作中錦上添花的東西,比如可以幫他們節(jié)約大量修復(fù)bug的時(shí)間。

靠單個(gè)產(chǎn)品修復(fù)所有的應(yīng)用安全漏洞幾乎不可能。開(kāi)發(fā)安全需要在開(kāi)發(fā)各個(gè)階段實(shí)施不同的防御措施,層層遞進(jìn)地去實(shí)現(xiàn)。

開(kāi)發(fā)安全類工具一般包括:

    SAST - 靜態(tài)應(yīng)用安全測(cè)試 DAST - 動(dòng)態(tài)應(yīng)用安全測(cè)試 IAST - 交互式應(yīng)用安全測(cè)試 RASP - 運(yùn)行時(shí)應(yīng)用自我保護(hù) 依賴項(xiàng)安全掃描 Secrets Detection(機(jī)密信息檢測(cè))

盡早修復(fù)漏洞確實(shí)更加容易,成本也更低,但在開(kāi)發(fā)早期階段發(fā)現(xiàn)所有漏洞也不太可能。安全應(yīng)貫穿軟件開(kāi)發(fā)生命周期的整個(gè)過(guò)程。

縱軸:修復(fù)成本;橫軸:軟件開(kāi)發(fā)生命周期

SAST

靜態(tài)應(yīng)用安全測(cè)試,也稱為“白盒測(cè)試”,通過(guò)掃描源代碼發(fā)現(xiàn)代碼中的已知漏洞,是最常見(jiàn)也是最早出現(xiàn)的自動(dòng)化應(yīng)用安全測(cè)試。市場(chǎng)上的SAST工具非常多。確定使用某個(gè)工具前,需要評(píng)估工具的支持和維護(hù)情況以及是否適配自身的技術(shù)棧。這里推薦一些免費(fèi)的SAST工具。

1. NodeJsScan

NodeJs Scan有一個(gè)命令行接口,可輕松與DevSecOps CI/CD管道集成,并以JSON格式生成掃描結(jié)果。每種語(yǔ)言都有一個(gè)配置文件,可以根據(jù)自定義檢索進(jìn)行修改。文件總覽和整個(gè)代碼庫(kù)都可以通過(guò)統(tǒng)計(jì)數(shù)據(jù)和餅圖做到可視化。它還可以檢測(cè)緩沖區(qū)溢出漏洞和針對(duì)Java的十大OWASP漏洞。

2. SonarQube

SonarQube被譽(yù)為是“最好用的免費(fèi)自動(dòng)化代碼審計(jì)工具之一”,具備上千種自動(dòng)化靜態(tài)代碼分析規(guī)則,且支持27種開(kāi)發(fā)語(yǔ)言,能夠很好地覆蓋整個(gè)開(kāi)發(fā)項(xiàng)目的發(fā)展。

DAST

DAST,動(dòng)態(tài)應(yīng)用安全測(cè)試,也被稱為“黑盒測(cè)試”,不像SAST那樣從源代碼中發(fā)現(xiàn)漏洞,而是在應(yīng)用運(yùn)行時(shí),通過(guò)注入故障的方式進(jìn)行安全測(cè)試。DAST可以發(fā)現(xiàn)SQL注入、跨站腳本等常見(jiàn)的安全漏洞,識(shí)別應(yīng)用程序運(yùn)行時(shí)的安全風(fēng)險(xiǎn),如身份驗(yàn)證和服務(wù)器配置問(wèn)題,以及只有在已知用戶登錄時(shí)才有可能發(fā)現(xiàn)的安全問(wèn)題。

3. OWASP ZAP

OWASP ZAP是一個(gè)功能非常全面的開(kāi)源DAST工具,不但能夠自動(dòng)進(jìn)行漏掃,還能協(xié)助測(cè)試人員完成web應(yīng)用的滲透 測(cè)試。ZAP的漏洞庫(kù)也非常豐富。

IAST

IAST,交互式應(yīng)用安全測(cè)試,有時(shí)也稱為“灰盒測(cè)試”,是一種綜合了SAST和DAST的檢測(cè)技術(shù),一般會(huì)在測(cè)試環(huán)境中以agent的形式(例如針對(duì)Java虛擬機(jī)或.NET CLR的插樁技術(shù))監(jiān)測(cè)運(yùn)營(yíng)與攻擊情況,從而發(fā)現(xiàn)風(fēng)險(xiǎn)點(diǎn)。

4. Contrast Security - Community

Contrast也是一個(gè)聲稱“開(kāi)發(fā)者至上”的產(chǎn)品,能更深入地發(fā)現(xiàn)漏洞。應(yīng)用程序運(yùn)行時(shí)的上下文信息對(duì)于其它的SAST和DAST工具完全是盲區(qū),如控制器、業(yè)務(wù)邏輯、數(shù)據(jù)層、視圖,用戶庫(kù),開(kāi)源組件和應(yīng)用程序服務(wù)器。

RASP

RASP,運(yùn)行時(shí)應(yīng)用程序自我保護(hù),一般部署在某個(gè)服務(wù)器上,當(dāng)應(yīng)用運(yùn)行時(shí)即開(kāi)始工作,能夠?qū)崟r(shí)發(fā)現(xiàn)目標(biāo)應(yīng)用中的攻擊活動(dòng)。應(yīng)用程序一旦開(kāi)始運(yùn)行,RASP就會(huì)分析應(yīng)用的行為和上下文信息,防止惡意輸入或惡意行為的發(fā)生。通過(guò)對(duì)應(yīng)用行為的持續(xù)監(jiān)控,不用人為干預(yù)就可以發(fā)現(xiàn)攻擊活動(dòng)并且做到及時(shí)修復(fù)。

5. Sqreen

Sqreen的RASP可通過(guò)請(qǐng)求的完整執(zhí)行上下文信息來(lái)發(fā)現(xiàn)應(yīng)用上線后的漏洞利用和攻擊活動(dòng),覆蓋OWASP十大安全漏洞,如SQL注入、XSS和SSRF等。它的強(qiáng)大之處在于能夠根據(jù)請(qǐng)求的執(zhí)行邏輯進(jìn)行攻擊攔截,比其它解決方案的誤報(bào)率低得多。Sqreen還能自動(dòng)適配不同的應(yīng)用程序技術(shù)棧,無(wú)需重新部署或配置。

依賴項(xiàng)安全掃描

依賴項(xiàng)安全掃描(Dependency Scanning)能夠在應(yīng)用程序開(kāi)發(fā)和測(cè)試時(shí)檢測(cè)依賴項(xiàng)的安全漏洞,例如正在使用的外部(開(kāi)源)依賴庫(kù)是否存在風(fēng)險(xiǎn)。

6. Snyk

據(jù)說(shuō)Snyk也是一個(gè)開(kāi)發(fā)者之上的企業(yè),為開(kāi)發(fā)人員提供一些開(kāi)源的解決方案。Snyk自帶很多比較好的功能,比如能在IDE中檢測(cè)漏洞,掃描本地git測(cè)試存儲(chǔ)庫(kù)中的項(xiàng)目等等。Snyk有一個(gè)能夠防止新漏洞通過(guò)構(gòu)建過(guò)程進(jìn)入開(kāi)發(fā)環(huán)境的安全網(wǎng)關(guān),還有一個(gè)用于測(cè)試運(yùn)行環(huán)境中是否存在暴露風(fēng)險(xiǎn)點(diǎn)的生產(chǎn)環(huán)境。

7. WhiteSource Bolt for GitHub

Whitesource和Snyk一樣有一些面向開(kāi)發(fā)人員的免費(fèi)工具。WhiteSource Bolt for GitHub是一款免費(fèi)的應(yīng)用,能夠持續(xù)掃描自有和公開(kāi)的存儲(chǔ)庫(kù),檢測(cè)開(kāi)源組件中的漏洞并提供修復(fù)建議,支持200多種編程語(yǔ)言,能夠像美國(guó)國(guó)家安全漏洞庫(kù)NVD一樣持續(xù)跟蹤多個(gè)開(kāi)源漏洞庫(kù)。

Secrets Detection(機(jī)密信息檢測(cè))

API密鑰、數(shù)據(jù)庫(kù)憑證和安全證書等是一個(gè)組織的機(jī)密信息(secrets),拿到這些東西就能訪問(wèn)很多敏感系統(tǒng)。因此需要secrets detection這樣的技術(shù)加以保護(hù)。secrets detection可掃描源代碼、日志等文件,發(fā)現(xiàn)其中隱藏的機(jī)密。這是一項(xiàng)技術(shù)要求較高的專業(yè)服務(wù),因?yàn)榇蠖鄶?shù)機(jī)密都是以隨機(jī)字符串的形式存儲(chǔ),而且很多隨機(jī)字符串都不是機(jī)密信息,因此需要通過(guò)分類算法,才能以較高的準(zhǔn)確度檢測(cè)到機(jī)密信息。

很多人可能會(huì)把secrets detection和SAST搞混,因?yàn)閮烧叨际菕呙柙创a的技術(shù)。但SAST只掃描目標(biāo)應(yīng)用的當(dāng)前版本,而secrets detection檢測(cè)的是該項(xiàng)目的所有開(kāi)發(fā)版本。像git這樣的版本控制系統(tǒng)會(huì)對(duì)項(xiàng)目的所有變更信息進(jìn)行跟蹤和存儲(chǔ)。如果源碼的上一個(gè)版本含有硬編碼的機(jī)密信息,卻在后面的階段被刪除了,代碼審計(jì)和SAST工具就無(wú)法發(fā)現(xiàn)這個(gè)問(wèn)題,遺留在git存儲(chǔ)庫(kù)中容易遭到惡意利用。所以secrets detection成為了一個(gè)獨(dú)立的分類。

8. GitGuardian

GitGuardian可通過(guò)掃描開(kāi)發(fā)人員存儲(chǔ)庫(kù),持續(xù)發(fā)現(xiàn)機(jī)密信息,涵蓋300多種不同類型的機(jī)密類型,從密鑰到數(shù)據(jù)庫(kù)連接字符串、SSL證書、用戶名和密碼,通過(guò)復(fù)雜的模型匹配等多種算法技術(shù)進(jìn)行檢測(cè)。GitGuardian可以與GitHub帳戶實(shí)現(xiàn)集成,幾分鐘即可完成配置。開(kāi)發(fā)人員可以通過(guò)GitGuardian API檢測(cè)目錄、郵件客戶端或Slack channel等服務(wù)中的機(jī)密信息。

總結(jié)

眼花繚亂的解決方案容易讓人選擇困難,一個(gè)重要標(biāo)準(zhǔn)就是思考這個(gè)工具是否能夠適配當(dāng)前的工作流程。

上述的開(kāi)源工具都只能提供最基本的保護(hù),實(shí)際運(yùn)營(yíng)過(guò)程中還是需要更多功能更加豐富的商業(yè)軟件和方案。確保應(yīng)用的安全是開(kāi)發(fā)人員中最有價(jià)值的技能之一,雖然將安全性“左移”看起來(lái)是一項(xiàng)艱巨的任務(wù),但在整個(gè)開(kāi)發(fā)生命周期中融合安全測(cè)試系統(tǒng)肯


聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)

送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)

需注明出處:新網(wǎng)idc知識(shí)百科

免費(fèi)咨詢獲取折扣

Loading