semgrep-rule-creator
建立生產級別的客製化 Semgrep 規則,用於安全漏洞檢測與程式碼規範執行,採用嚴格的測試驅動開發工作流程。
簡介
semgrep-rule-creator 是一個專為安全工程師和開發人員打造的專業工具,旨在增強靜態分析能力。它提供了一個強大且以測試為導向的架構,用於編寫客製化的 Semgrep 規則,以識別漏洞、錯誤模式及程式碼規範違規。透過強制執行嚴格的迭代流程,該技能確保所有產生的規則皆經過易受攻擊與安全程式碼範例的驗證,從而避免了諸如高誤報率和過於寬泛的模式比對等常見陷阱。使用者可運用此技能超越通用的靜態分析,創建針對其獨特程式碼庫需求的高度特定檢測規則。
-
採用強制性的「測試優先」開發方法,要求在規則部署前必須達到 100% 的測試通過率。
-
優先採用污點分析(Taint Analysis),以高精確度檢測使用者輸入到達危險匯入點(Sinks)的資料流漏洞。
-
提供抽象語法樹(AST)分析輔助,確保規則模式能夠適應不同的語法變體與邊緣情況。
-
鼓勵透過分析安全案例來排除誤報,並透過驗證漏洞案例來確保檢測覆蓋率。
-
強制執行結構化輸出,要求每個規則皆需經過說明、測試,並放置於獨立的目錄結構中。
-
適用於開發客製化安全規則、強制執行內部函式庫使用規範,以及檢測特定的歷史漏洞類型。
-
輸入通常包含目標程式碼片段或有關特定漏洞的說明文件,輸出則為結構化的 YAML 規則檔及配套的測試案例。
-
需要執行 'semgrep --test' 指令;此技能可作為防止反模式(Anti-patterns)的守門員,例如防止匹配過於廣泛的模式或跳過安全案例驗證。
-
請注意,此技能不適用於執行現有的規則集;針對一般的靜態掃描,請改用 static-analysis 技能。使用者應閱讀隨附的說明文件並遵循工作流程檢查表,以確保所有規則的一致性與品質。
倉庫統計
- Star 數
- 4,872
- Fork 數
- 424
- Open Issue 數
- 21
- 主要語言
- Python
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年4月29日 上午01:43