SuperAPI AI 工具集

static-analysis

安全与审计

查看项目

更新于 10-16 05:07

技能介绍

用途:面向安全漏洞检测的静态分析工具集,基于 Trail of Bits 应用安全测试手册,整合 CodeQL、Semgrep 与 SARIF 解析三个子技能。

主要能力:CodeQL 提供语义化代码分析与数据库查询,擅长深层数据流追踪、污点分析和跨函数分析;Semgrep 提供快速模式匹配静态分析,适合快速扫描、自定义规则、CI 集成和轻量检查;SARIF 解析用于解析和处理分析工具输出的 SARIF 结果文件,便于聚合结果、CI/CD 集成与多工具分诊。

工具选择:快速安全扫描用 Semgrep;深度漏洞分析、数据流与污点追踪用 CodeQL(Semgrep 污点模式亦可);自定义模式检测可选 Semgrep(较简单)或 CodeQL(更强大);CI/CD 集成建议 Semgrep 加快速度、CodeQL 保证覆盖;处理扫描结果用 SARIF 解析;无法构建的代码库可用 Semgrep 处理不完整代码。

必要用法:Semgrep 安装命令为 pip install semgrep,运行推荐规则集用 semgrep --config=auto .,运行特定规则集用 semgrep --config=p/security-audit .。CodeQL 建库命令为 codeql database create mydb --language=python --source-root=.,分析命令为 codeql database analyze mydb codeql/python-queries:codeql-suites/python-security-extended.qls --format=sarif-latest --output=results.sarif。SARIF 结果可用 jq '.runs[].results[] | {ruleId, message: .message.text, location: .locations[0].physicalLocation.artifactLocation.uri}' results.sarif 解析。

典型流程:先用 Semgrep 快速扫描,再用 CodeQL 深度分析,随后通过 SARIF 解析聚合结果,按严重性与可利用性分诊,并为项目特定模式编写自定义规则。

适用场景:对任意语言代码库运行安全扫描、编写自定义 CodeQL 查询或 Semgrep 规则、处理与分诊 SARIF 输出文件、在 CI/CD 管道中设置静态分析、比较并聚合多个工具的结果。

限制:不适用于该工具集 CodeQL、Semgrep、SARIF 范围之外的全新检测工作流;不用于动态分析或模糊测试(建议使用 testing-handbook-skills);不用于智能合约审计或特定链的审查工作。相关技能 testing-handbook-skills 可将静态分析与模糊测试、sanitizer 和覆盖率驱动测试配合使用。