靜態分析(SAST):掃 code 本身

在 code 還沒執行的時候找漏洞——SQL injection 模式、硬編碼 secret、不安全的加密用法。

Semgrep:規則可自定義,支援多語言,速度快。有豐富的開源規則集(包括 OWASP Top 10 模式)。可以整合進 CI/CD,在 PR 時掃描。

CodeQL(GitHub):GitHub 平台內建,對 repo 做語意分析,找複雜的資料流漏洞(例如「用戶輸入沒有驗證就進了 SQL query」)。

Bandit(Python 專用):Python 程式碼的常見安全問題掃描。

ESLint security plugins(JavaScript/TypeScript):eslint-plugin-security@microsoft/eslint-plugin-sdl


依賴掃描:第三方套件的 CVE

你的 code 可能很安全,但你用的依賴有已知 CVE。

Grype(Anchore):掃 container image 和 SBom,速度快,offline 模式可用。

Trivy(Aqua Security):掃 container image、filesystem、git repo、IaC(Terraform、Helm chart)。功能最廣泛的開源工具,是很多 CI/CD pipeline 的預設選擇。

Snyk:SaaS 平台,整合 GitHub / GitLab / Bitbucket,PR 時自動掃描,有 fix PR 功能。免費層對開源 repo 夠用。

npm audit / pip-audit / cargo audit:語言生態內建或生態標準,最低門檻的依賴掃描。


動態分析(DAST):對跑起來的系統測試

靜態分析看 code,動態分析看行為——跑起來的應用有沒有 XSS、SQL injection、不安全的 header。

OWASP ZAP(Zed Attack Proxy):開源,有 GUI 和 API 模式,可以自動化爬網站並測常見漏洞。適合整合進 CI/CD 做自動化安全測試。

Burp Suite:安全工程師和滲透測試的事實標準。Professional 版有主動掃描,Community 版可以手動 intercept 和修改 request。學習資安的必學工具。


Threat Modeling 工具

把威脅建模視覺化,讓設計評審更有效率。

OWASP Threat Dragon:開源,web 版和桌面版都有,可以畫 DFD 並標記 STRIDE 威脅。輸出可以 export 為 JSON 版控。

Microsoft Threat Modeling Tool:Windows 桌面應用,Azure 生態整合好,有豐富的模板和威脅庫。

draw.io / Miro + STRIDE 標籤:不一定要用專用工具,在設計評審的白板上標出每個元件的 STRIDE 威脅,效果同樣好。工具是輔助,思維才是關鍵。


Secret 掃描:防止 credential 進入 git

git-secrets(AWS Labs):本機 git hook,push 前掃描 commit 裡有沒有 AWS key、密碼等 pattern。

TruffleHog:掃 git history 裡的 secret,找已經不小心 commit 進去的憑證。支援 100+ 種 credential 類型。

GitHub Secret Scanning:GitHub 平台功能,自動掃 push 的 commit,發現 known secret pattern(AWS key、Stripe key 等)就告警,某些情況會通知發行者撤銷。

gitleaks:快速,可以整合 pre-commit hook 和 CI。


滲透測試 / 紅隊工具

Metasploit Framework:開源滲透測試框架,有大量已知漏洞的 exploit 模組。學習用途和授權的安全測試才用。

Nmap:網路掃描,發現開放 port 和服務版本。

HackTheBox / TryHackMe:學習實際滲透技術的練習平台,在合法環境裡學真實技術。


工具整合建議

安全工具最大的問題不是「哪個最好」,而是「沒有整合進開發流程」——工具安裝了但沒人跑,或者警告太多沒人看。

最小可行的安全 CI pipeline:

  1. PR 時:Semgrep(SAST)+ npm audit / pip-audit(依賴掃描)
  2. Build 時:Trivy 掃 container image
  3. 部署後:OWASP ZAP 對 staging 跑自動掃描
  4. pre-commit:gitleaks 防 secret 進 git

不要一次全部上,從影響最大的(secret 掃描 + 依賴 CVE)開始,逐步增加。


深入的運維安全工具(SIEM、WAF、IDS/IPS、EDR、Vault)在 infra/security-governance(I06)章節,本篇聚焦開發階段的工具選型。