SAST 與 DAST

zktq2021發表於2022-12-30
  • DAST 和 SAST 工具採用不同的方法來測試應用程式安全性,在軟體生命週期的不同階段工作,並且具有不同的優勢和侷限性。

  • SAST 工具在原始碼中查詢缺陷漏洞,通常在開發早期。

  • DAST 工具掃描正在執行的應用程式中的漏洞,通常在開發後期和生產中使用。

  • 應用程式安全性的全面方法包括SAST和DAST。

  • 為了在不斷變化的網路威脅環境中保護複雜的Web應用程式,開發團隊通常需要多個應用程式安全工具。其中兩個最重要的工具是靜態應用程式安全測試(SAST)和動態應用程式安全測試(DAST)。在許多情況下,兩者協同工作發揮的作用更強大。

什麼是 SAST?

SAST也被稱為白盒測試。SAST工具透過從內部檢查web應用程式來測試安全性,並透過在開發過程中掃描應用程式原始碼來查詢程式碼缺陷和漏洞。SAST對於在軟體開發生命週期(SDLC)的早期階段查詢和修復程式碼漏洞很有價值。由於SAST工具直接訪問原始碼,因此它們能夠精確地找出存在漏洞的程式碼行。

需要注意的是,SAST工具需要支援所檢測的程式碼語言,如果一個web應用程式是用多種語言編寫的,那麼需要考慮SAST工具是否支援所涉及的語言種類。

什麼是DAST?

DAST 也稱為黑盒測試。DAST工具透過測試已經編寫的 Web 應用程式(在執行時)來查詢漏洞。他們向執行中的應用程式傳送資料,模仿惡意使用者試圖利用漏洞並破壞系統的多種方式。

DAST不需要訪問原始碼,並且可用於測試可透過Web訪問的任何應用程式的整體。也因此DAST還可以測試應用程式元件的安全性,如外掛和應用程式程式設計介面(API)。DAST 還可以檢測執行時問題、配置錯誤、身份驗證錯誤和其他不安全的 Web 應用程式行為。

由於DAST不檢查原始碼,因此通常不能直接在程式碼中定位缺陷。

DAST和SAST有什麼共同點?

SAST 和 DAST 在自動化 Web 應用程式安全測試工作流程中發揮著關鍵作用。已實施持續整合和持續部署 (CI/CD) 和 DevSecOps 方法的組織需要適應軟體的頻繁更改。更重要的是,組織可能同時執行數十個(甚至數百個)Web應用程式,並且某些應用程式可能擁有數百萬使用者分散在世界各地。

在這種情況下,手動進行程式碼審查和滲透測試對於敏捷開發的規模和速度來說耗費時間和成本。開發人員花費大量時間處理安全漏洞,佔用了用來改進應用程式的時間。

SAST 和 DAST 工具有助於自動執行安全測試,快速識別漏洞並確定漏洞的優先順序,並推薦緩解措施。這使得Web應用程式安全測試更加高效,同時還為開發團隊提供了需要優先解決的問題列表。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2930291/,如需轉載,請註明出處,否則將追究法律責任。

相關文章