进行初步审查或例行评估代码仓库、组件时,请先运行标准 Codex Security 扫描。 该扫描会完整执行一次扫描工作流程。
如需进行更全面的评估,请先审查结果,然后运行深度 扫描。深度扫描耗时更长,搜索 范围也更广。
选择扫描范围
在桌面应用中,打开 安全,选择 扫描,再选择 + 扫描。 选择现有代码仓库或其他文件夹,然后选择 代码库。
如果需要广泛覆盖,且整个代码仓库适合作为审查单元,请扫描整个代码仓库。 对于单体代码仓库,如果某项服务、软件包或组件 有明确的负责人和安全边界,请选择一个文件夹。
您也可以从 Codex 对话中启动扫描:
Use $codex-security:security-scan to scan this repository for security vulnerabilities.
若要让该对话聚焦于特定文件夹,请指定相应组件:
Use $codex-security:security-scan to scan this repository for security vulnerabilities, focusing on the services/billing component.
对于大型单体代码仓库,请先选择一个有实际意义的产品或服务边界。
配置扫描
为获得最佳扫描质量,请使用 gpt-5.6-sol,
并将推理强度设为 xhigh。
- 选择 代码库 ,并保持 深度扫描 处于关闭状态。
- 确认选中的代码仓库、当前分支和最新修订版本。
- 将 扫描范围 设为整个代码仓库,或选择一个文件夹。
- 选择模型和推理强度。
- 仅当附加上下文会影响审查时,才打开 附加上下文 。有用的上下文应 指明攻击者可控制的输入、信任边界、敏感操作,或 需要优先审查的特定区域。
- 选择 开始扫描。
将 SECURITY.md 添加到代码仓库根目录,以提供持续有效的安全指导。
说明威胁模型、安全不变量、可报告发现项的判定标准、
排除项和严重性背景。添加嵌套的 SECURITY.md 文件,以提供
特定目录的指导。如果策略发生冲突,则距离
代码最近的文件优先。Codex Security 将这些文件视为策略上下文,
而非可执行指令。
使用 AGENTS.md 指定受支持的构建和验证命令,以及其他
特定于代码仓库的指令。
等待各阶段完成
扫描会依次执行以下阶段:
- 威胁建模 会识别资产、入口点、信任边界和 安全不变量。
- 发现项识别 会审查指定的代码,查找可能失效的 控制措施以及从源点到汇点的路径。
- 验证 会通过测试或其他方式检查每个候选发现项,并记录证据 或证明缺口。
- 影响和路径分析 会评估每个候选发现项的现实可行路径、 影响和严重性。
- 报告 会记录已验证的发现项、覆盖范围和扫描元数据。 可以按需获取每个发现项的详细报告。
- 结构性加固会在收到请求时分析发现项集合,并 生成设计指导。
- 最终处理 会验证结构化扫描契约并生成
report.md,其中包含指向所有相关详细报告或加固指导的链接。
工作台会显示当前扫描阶段以及插件报告的进度。 选择 查看活动 以检查 Codex 任务。请等待完整 结果,不要过早评判候选发现项,也不要因为某个阶段比其他阶段 耗时更长而停止扫描。
审查已完成的扫描
按以下顺序审查结果:
- 确认目标、修订版本和扫描范围。
- 查看已审查的部分,以及所有明确标记为推迟审查或需后续跟进的区域。
- 对于每个发现项,请检查根控制措施或汇点、攻击者可控制的 输入、验证方法、仍存在的不确定性、实际可达性、 严重性依据和建议的修复措施。
- 如果证据不支持所述路径或影响,请驳回相应发现项。
- 开始修复前,请选择一个已接受的发现项。
审查该发现项的严重性、验证状态、根本原因和攻击 路径。
评估首次扫描
扫描前,请选择两到四项评估标准,例如独立 发现能力、证据质量、误报情况或修复质量。如果您 使用已知发现项进行测试,请记录是否向 Codex 提供了该发现项, 或在扫描时未提供该信息。
记录代码仓库的修订版本、插件版本、模型和推理强度。 在代码、安全控制措施或扫描设置发生变化后, 使用此基准比较后续扫描。
选择扫描频率
根据代码仓库的风险以及您的团队处理发现项的能力设置扫描频率。 请在以下时间点运行扫描:
- 基准: 接入代码仓库、接管组件,或 需要为新威胁模型建立起点时,请运行标准扫描。
- 代码变更: 当 Pull Request 或提交 更改安全敏感代码或外部集成时,请审查代码 变更。
- 定期审查: 根据您的系统暴露程度和代码变更频率设置定期审查 间隔,并根据您的团队处理发现项的 能力进行调整。
- 修复后: 修复并验证 发现项。确认问题不再 复现,并保留原始扫描以供比较。
这些扫描触发条件不会创建自动执行计划。
重新打开先前的扫描
打开 安全,然后从 扫描 中选择已保存的扫描,以审查其 发现项、覆盖范围和可用的报告工件。若要评估最新代码,请 针对同一代码仓库启动新扫描。新扫描不会替换 先前的扫描或其工件。
使用结果
使用安全工作台审查发现项、覆盖范围和需后续跟进的区域,
无需查看原始 JSON。如果有 report.md,请打开它,作为查看
完整扫描目录的可读入口。共享或归档该目录时,请将其
完整保留:如果存在这些可选工件,报告会链接到 findings/
中的详细报告,以及 hardening/ 中的结构性加固
指导。
在工作空间的底层,每次扫描都会保留 scan-manifest.json、findings.json
和 coverage.json,供自动化和集成使用。您通常无需
自行打开这些文件。
若需可移植工件或外部问题跟踪,请参阅导出或跟踪 发现项。
下一步
接受一个发现项后,请使用修复并验证 发现项来生成并审查一个 范围受限的补丁。不要要求 Codex 在一次聊天中修复一次扫描产生的所有发现项。