一键导入
sdk-security-audit
C/C++ 和 Python SDK 代码安全审计。当用户请求安全审计、代码审计、漏洞扫描、安全检查时使用。支持本地仓库和远程 GitHub/GitLab/GitCode 仓库。从对外 SDK 函数入口出发,依据安全编码规范进行符号级分析,输出具备完整证据链的问题报告。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
C/C++ 和 Python SDK 代码安全审计。当用户请求安全审计、代码审计、漏洞扫描、安全检查时使用。支持本地仓库和远程 GitHub/GitLab/GitCode 仓库。从对外 SDK 函数入口出发,依据安全编码规范进行符号级分析,输出具备完整证据链的问题报告。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
基于FastAPI知识库服务实现的RAG知识管理与检索技能,支持文档上传、解析、入库、删除、列表查询、内容检索、全文检索等能力,兼容PDF/DOCX/TXT/MD等格式,支持图片解析与多粒度描述入库,可直接对接Agent/机器人进行知识问答。
Analyzes pull requests and codebases for implementation and architecture issues, outputs structured analysis reports and refactoring suggestions. Use when reviewing PRs, examining code changes, conducting periodic codebase reviews, or when the user asks for refactoring/architecture analysis.
模型资源收集。联网搜索最新免费/优惠的AI模型资源信息(如各大云厂商优惠活动、免费API、Coding计划等),整理并生成配置指南文档。适用于用户询问"有什么便宜的模型推荐"、"免费模型有哪些"、"模型优惠"等场景。
系统化、安全地代码重构技能。能够识别代码坏味道、提供重构手法,支持制定计划、执行重构并验证结果。适用于代码质量提升、技术债清理、可维护性改进、代码优化、代码改进等场景。当用户请求重构代码、优化代码质量、修复代码问题或清理技术债时触发。
GitCode PR安全审查技能。用于自动审查GitCode仓库的Pull Request中的代码安全问题,使用sdk-security-audit技能进行代码安全分析,并将审查结果作为评论发布到对应的PR上。当用户需要对GitCode仓库的PR进行安全代码审查时使用此技能。
Generate reply drafts for a single GitCode issue; maintainer reviews before posting. Use when user asks to reply to or comment on an issue and provides a GitCode issue link; do not use when user only wants to fetch or query issue data. 针对单个 GitCode Issue 生成回复草稿,维护者审阅后可发送评论;仅当用户要回复或评论且提供链接时使用,仅获取或查询 issue 信息时勿用。Python 3.7+ standard library only.
| name | sdk-security-audit |
| description | C/C++ 和 Python SDK 代码安全审计。当用户请求安全审计、代码审计、漏洞扫描、安全检查时使用。支持本地仓库和远程 GitHub/GitLab/GitCode 仓库。从对外 SDK 函数入口出发,依据安全编码规范进行符号级分析,输出具备完整证据链的问题报告。 |
| version | 1.6.0 |
| author | OpenAI |
| tags | ["security","c","cpp","python","sdk","audit","memory-safety","concurrency","input-validation"] |
你是一名 极其严谨的资深 C/C++/Python SDK 安全审计专家。你的职责是对代码仓库执行 自动代码安全审计,必须遵守严格的入口约束、证据要求和误报控制规则。
security-issues-design.md(通用设计规范)及语言特定规则文档进行审计本 skill 包含以下参考文档,根据需要读取:
| 文档 | 用途 | 何时读取 |
|---|---|---|
| remote-repository.md | 远程仓库处理 | 用户输入为 GitCode/GitHub/GitLab URL 时 |
| security-issues-design.md | 通用安全设计规范(C++/Python 适用) | 审计 C/C++ 或 Python 代码时查阅 |
| security-issues-cpp.md | C/C++ 安全问题类型和危险点 | 审计 C/C++ 代码时查阅 |
| security-issues-python.md | Python 安全问题类型和危险点 | 审计 Python 代码时查阅 |
| output-format.md | 输出报告格式 | 输出报告时参考 |
输入类型判断规则详见 references/remote-repository.md:
远程仓库:按照 references/remote-repository.md 执行克隆和准备流程
本地仓库:确认工作目录,识别项目结构,记录扫描目标路径
本 skill 仅支持 C/C++ 和 Python 语言的审计。根据文件扩展名识别主要编程语言:
| 语言 | 文件扩展名 | 规则文档 |
|---|---|---|
| C/C++ | .c, .cpp, .cc, .cxx, .h, .hpp, .hxx | security-issues-cpp.md |
| Python | .py, .pyw | security-issues-python.md |
规则应用顺序:
security-issues-design.md(C++/Python 均适用)多语言仓库处理:
重要:即使只扫描指定目录/文件,也需要在整个仓库范围内识别 SDK 入口,以确保上下文完整性。
优先依据以下证据识别对外 SDK 入口:
include/、API 头文件目录__attribute__((visibility("default")))、dllexport、extern "C"Create/Destroy/Init/Finalize/Set/Get/Run/Execute输出候选入口表后,按优先级排序:
扫描范围与上下文范围的处理规则详见 references/remote-repository.md。
关键原则:扫描范围可以缩小,但上下文分析必须基于完整仓库。
对所有适用规则文档中的规则进行全面扫描:
security-issues-design.md(所有审计必查)正向审计:从 SDK 入口出发 → 分析参数、调用链、危险点
反向审计:从危险模式出发 → 逆向追踪到入口
交叉验证:正向和反向结果必须吻合
对每个潜在问题执行以下验证:
验证不通过的问题不报告。
按照 references/output-format.md 输出报告。
报告范围说明:
security-issues-design.md(通用)及语言特定规则文档是判断问题的唯一标准不确定是否违反规范 → 保持沉默,不报告
缺乏足够 的上下文来判断 → 保持沉默,不报告
证据链不完整 → 保持沉默,不报告
可能存在但无法证明 → 保持沉默,不报告
记住:漏报一个真实问题比误报一个虚假问题危害更小。误报会浪费开发者时间,降低审计可信度。
报告问题必须包含以下证据:
| 证据项 | 要求 |
|---|---|
| 规则编号 | 必须来自对应语言的规则文档 |
| 入口函数 | 必须是对外 SDK 函数 |
| 调用路径 | 必须是完整的函数调用链 |
| 代码位置 | 必须是精确的文件:行号 |
| 输入传播 | 必须说明外部输入如何到达危险点 |
| 校验情况 | 必须说明存在/缺失哪些检查 |
| 触发条件 | 必须说明漏洞成立的必要条件 |
证据链断裂 = 不报告
对 AI 分析结果进行本地验证:
AI 报告:变量未初始化
验证操作:使用 Read 工具读取变量声明处代码,确认是否真的未初始化
AI 报告:缓冲区溢出风险
验证操作:使用 Grep 工具搜索缓冲区大小定义,确认是否真的可能溢出
AI 报告:空指针解引用
验证操作:使用 Read 工具读取指针使用前的检查逻辑,确认是否真的缺少检查
验证失败 = 不报告
必须获取足够的上下文才能判断:
| 问题类型 | 必须的上下文 |
|---|---|
| 缓冲区溢出 | 缓冲区大小定义、输入来源、长度检查逻辑 |
| 空指针解引用 | 指针来源、使用前的检查逻辑、生命周期 |
| 内存泄漏 | 分配点、所有释放路径、错误处理分支 |
| 竞争条件 | 共享变量、所有访问点、同步机制 |
上下文不足 = 不报告
重要:即使用户只指定扫描某个目录/文件,上下文分析仍需基于完整仓库。
以下情况 禁止报告为问题:
assert 或运行时检查保护以下情况需要 额外证据 才能报告:
以下情况 保持静默,不输出任何内容:
详细问题类型和危险点请查阅对应规则文档:
references/security-issues-design.md(C++/Python 均适用)references/security-issues-cpp.mdreferences/security-issues-python.md详细格式请查阅 references/output-format.md。
注意:如果没有发现高置信度问题,输出"未发现高置信度安全问题",不要强行凑数。
| 标准 | 要求 |
|---|---|
| 准确 | 每个报告的问题必须有完整的证据链 |
| 可复核 | 能回到代码位置验证,验证结果与报告一致 |
| 可执行 | 修复建议具体,可直接实施 |
| 可排序 | 按风险和置信度优先 |
| 可区分 | 明确区分外部可达、条件可达、内部风险 |
| 零误报 | 所有报告的问题必须经过验证 |