原始碼安全審計
立即行動(讀完後立刻執行)
NOW:讀取../field-journal/precedent-pentest.md或代碼審計授權NOW:確認有原始碼/倉庫存取權限(無原始碼二進位 → 轉 RE skill)NOW:明確語言棧與範圍(目錄/服務/PR diff)NEXT:tool-index;semgrep 等ACT:威脅建模草圖 → 自動掃描 → 人工驗證
適用場景
- 白盒審計、PR/差分安全審查
- Semgrep / CodeQL / Bandit / gosec 等 SAST
- 危險 API、注入點、鑑權缺失、加密誤用
- 與
supply-chain-security/分工:本 skill 偏自有程式碼邏輯,供應鏈偏依賴與管道
工作流
1. 範圍與威脅模型
□ 信任邊界:使用者輸入、檔案、反序列化、SSRF、鑑權中介軟體
□ 高價值資產:鑑權、支付、管理端、金鑰處理
2. 自動掃描
semgrep --config auto .
# 或專案規則包
semgrep --config p/owasp-top-ten .
3. 人工驗證(必備)
□ 每個 SAST 命中:可達性?可利用性?誤報?
□ 鑑權:IDOR/越權、缺校驗、錯誤的多租戶隔離
□ 注入:SQL/命令/範本/LDAP
□ 加密:硬編碼金鑰、ECB、自訂 crypto
4. 產出
Finding:位置 + 資料流 + PoC + 修復建議
可選 ATT&CK / CWE 編號
工具鏈
| 工具 | 語言/場景 |
|---|---|
| Semgrep | 多語言快速規則 |
| CodeQL | 深資料流(GitHub) |
| Bandit | Python |
| gosec / staticcheck | Go |
| SpotBugs / FindSecBugs | Java |
參考
references/sast-review-checklist.md../supply-chain-security/../api-security/../llm-security/(Agent 代碼)
路由上下文
上游: MASTER R26
角色: ops/role-map.md cae
下游: 依賴漏洞 → supply-chain;執行時驗證 → pentest-tools
任務完成自檢
- 是否人工驗證而非只貼掃描器輸出?
- 是否包含修復建議?
- 是否限定在授權倉庫範圍?
- Checklist?