如今,為了全面保護(hù)軟件的安全,相關(guān)企業(yè)必須考慮整個(gè)攻擊面。這意味著除了傳統(tǒng)的靜態(tài)應(yīng)用安全測(cè)試 (SAST) 和軟件組成分析 (SCA) 之外,還對(duì) Web、移動(dòng)和 API 應(yīng)用實(shí)施持續(xù)的動(dòng)態(tài)應(yīng)用安全測(cè)試 (DAST),在開(kāi)發(fā)和生產(chǎn)中能驗(yàn)證web應(yīng)用程序的安全性。
獨(dú)立技術(shù)和市場(chǎng)研究公司Forrester發(fā)布的《2022年度應(yīng)用程序安全狀況報(bào)告》顯示,應(yīng)用程序是最常見(jiàn)的攻擊媒介,“Web 應(yīng)用程序漏洞利用”是最常見(jiàn)的攻擊之一。有鑒于此,新思科技建議企業(yè)以惡意攻擊者的視角去測(cè)試其運(yùn)行的 Web 應(yīng)用程序,以便在被黑客發(fā)現(xiàn)和利用之前識(shí)別并修復(fù)漏洞。
新思科技軟件質(zhì)量與安全部門軟件工程師Rui Paquete介紹道:“動(dòng)態(tài)應(yīng)用安全測(cè)試 (DAST) 運(yùn)行的 Web 應(yīng)用程序是否存在 SQL 注入和跨站點(diǎn)腳本等漏洞(換句話說(shuō),如果一個(gè)應(yīng)用程序正在運(yùn)行,它就是動(dòng)態(tài)的)。這些在生產(chǎn)應(yīng)用程序中被利用的常見(jiàn)漏洞在源代碼中并不存在;它們只有在部署到生產(chǎn)環(huán)境后才會(huì)出現(xiàn)。這使得 DAST成為任何應(yīng)用安全測(cè)試計(jì)劃的重要組成部分。測(cè)試過(guò)程是通過(guò)HTTP請(qǐng)求和響應(yīng)進(jìn)行的。DAST通常也被稱為‘黑盒’測(cè)試?!?/p>
雖然有許多方法可用于測(cè)試應(yīng)用代碼的安全和質(zhì)量,但 DAST 適用于應(yīng)用已啟動(dòng)到生產(chǎn)中的場(chǎng)景。因此,DAST 可以評(píng)估尚未識(shí)別和/或修復(fù)的潛在軟件風(fēng)險(xiǎn)。
DAST可以在應(yīng)用生命周期的最后階段執(zhí)行。雖然仍然可以添加或修改新功能,但應(yīng)用程序的總體范圍已經(jīng)定義?;诖耍珼AST 工具可以成為開(kāi)發(fā)團(tuán)隊(duì)在應(yīng)用程序維護(hù)方面的強(qiáng)大盟友。如果執(zhí)行得當(dāng),DAST 測(cè)試可以顯著減少重復(fù)工作或技術(shù)債務(wù)。
DAST的作用類似于拼寫檢查器。而且,隨著時(shí)間的推移,默認(rèn)情況下,DAST還可以被視為更安全的開(kāi)發(fā)實(shí)踐的教育工具,啟發(fā)開(kāi)發(fā)人員了解什么方法有效,什么無(wú)效。
Rui Paquete指出,編寫代碼的方法有很多種,加固代碼的方法也有很多種。持續(xù)執(zhí)行DAST測(cè)試,隨著時(shí)間推移,這種強(qiáng)化代碼過(guò)程變得越來(lái)越高效,因?yàn)槟J阶兊酶用黠@。例如,您的底層代碼中可能存在特定問(wèn)題,允許Javascript惡意運(yùn)行。從表面上看,問(wèn)題在哪里或如何發(fā)生可能并不明顯。但當(dāng)使用 DAST 掃描時(shí),您可以清晰地掌握這些信息,并快速確定根本原因——而不是在很長(zhǎng)一段時(shí)間內(nèi)單獨(dú)評(píng)估這些問(wèn)題。這樣一來(lái),企業(yè)就能夠?qū)⒏噘Y源投入到其它領(lǐng)域,以不斷提高生產(chǎn)力。
企業(yè)的首席信息安全官(CISO)應(yīng)該了解DAST并將其視為編程增強(qiáng)器。企業(yè)構(gòu)建的軟件是否安全?測(cè)試機(jī)制是否貫穿于整個(gè)軟件開(kāi)發(fā)過(guò)程? DAST就是這個(gè)過(guò)程中不可或缺的環(huán)節(jié)。它不僅能識(shí)別現(xiàn)有軟件產(chǎn)品中存在的漏洞類別,而且還可以彌補(bǔ)在軟件開(kāi)發(fā)過(guò)程早期進(jìn)行的其它測(cè)試的不足。DAST 是一種可以連續(xù)自動(dòng)運(yùn)行的測(cè)試方法。團(tuán)隊(duì)可以輕松、持續(xù)構(gòu)建應(yīng)用程序,并一直維護(hù)它們。
值得注意的是,人們對(duì)靜態(tài)應(yīng)用安全測(cè)試 (SAST) 、軟件組成分析 (SCA) 及DAST 的功能和應(yīng)用感到困惑。由于測(cè)試方式存在根本差異,SAST、SCA以及DAST的掃描結(jié)果不盡相同。因此,大多數(shù)企業(yè)在開(kāi)發(fā)過(guò)程的不同階段采用了這三種技術(shù)。
當(dāng)開(kāi)發(fā)人員編寫代碼時(shí),SAST 在軟件開(kāi)發(fā)生命周期的早期處理專有代碼; SCA 解決開(kāi)源代碼中的質(zhì)量、安全和許可證合規(guī)性問(wèn)題。 DAST 涵蓋應(yīng)用程序中通過(guò) HTTP 請(qǐng)求和響應(yīng)傳輸?shù)男畔ⅲ且环N有針對(duì)性的測(cè)試方法。在軟件開(kāi)發(fā)過(guò)程的各個(gè)階段應(yīng)用不同工具解決方案是創(chuàng)建強(qiáng)大安全態(tài)勢(shì)的關(guān)鍵。
新思科技中國(guó)區(qū)軟件應(yīng)用安全技術(shù)總監(jiān)付紅勛表示:“軟件驅(qū)動(dòng)創(chuàng)新,現(xiàn)在幾乎所有業(yè)務(wù)都基于軟件進(jìn)行。但這些不斷演變的應(yīng)用和系統(tǒng)也可能包含漏洞,不法分子可以利用它們來(lái)破壞和竊取關(guān)鍵數(shù)據(jù)。幸運(yùn)的是,我們可以通過(guò)強(qiáng)大的安全流程來(lái)降低大部分風(fēng)險(xiǎn),并確保新功能和更新得到正確測(cè)試。通過(guò)將DAST納入安全流程,企業(yè)可以對(duì)其生產(chǎn)環(huán)境進(jìn)行徹底和安全的掃描。這使他們能夠在功能和安全之間取得平衡,并能夠在不影響安全的情況下向客戶提供全新特性和功能。”
現(xiàn)在互聯(lián)網(wǎng)上有超過(guò) 20 億個(gè)網(wǎng)站,而且還在不斷增多。DAST在大規(guī)模測(cè)試中大有可為,能隨著安全測(cè)試需求的變化而快速擴(kuò)展。DAST為開(kāi)發(fā)團(tuán)隊(duì)提供不拖慢開(kāi)發(fā)速度的關(guān)鍵測(cè)試能力,以提高代碼的安全性和質(zhì)量。