工程开发
semgrep-rule-creator
创建、测试并验证用于检测安全漏洞与代码模式的自定义 Semgrep 规则。
简介
semgrep-rule-creator 技能提供了一个严谨的测试驱动框架,用于开发自定义静态分析规则。专为安全工程师与开发人员设计,它指导规则编写的整个生命周期,从初步的问题分析与 AST(抽象语法树)检查,到反覆运算的测试与最终的规则优化。通过强制执行严格的“测试优先”方法,此技能确保了新的检测模式既能有效识别漏洞,又能防御误报。
-
促进高质量 Semgrep 规则的创建,包括支持污点分析(taint-mode)以追踪从来源到接收端的不受信任数据流。
-
引导使用者完成反覆运算的流程:分析问题、撰写单元测试、探索 AST 结构、实施规则、进行测试验证,并执行最终优化。
-
整合强制性验证步骤,要求使用 'semgrep --test' 以确保在规则定稿前达到 100% 的通过率。
-
协助识别复杂的代码模式、安全漏洞,并确保跨多种语言的内部编码标准遵循。
-
使用此技能来针对特定的漏洞类别,例如注入攻击、不安全 API 的使用,或通用规则常遗漏的硬编码敏感数据。
-
需要在本地执行测试;规则必须组织为每个规则对应一个 YAML 文件,并附带包含有效 ruleid/ok 标注的专用测试文件。
-
严格禁止对特定语言的安全检查使用通用模式匹配,并禁止包含 'todook' 或 'todoruleid' 标记。
-
预期输出包含一个结构化目录,其中包含规则 YAML 与对应的测试原始文件,以便进行自动化验证与生产就绪的部署。
-
旨在通过优先采用污点分析来降低杂讯,该分析能够根据上下文区分安全与危险的函数调用,从而减少处理误报所需的人力。
仓库统计
- Star 数
- 4,874
- Fork 数
- 424
- Open Issue 数
- 21
- 主要语言
- Python
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年4月29日 08:13