跳转到内容

修复并验证安全发现

身份 非官方简体中文镜像
翻译状态 AI 翻译 / AI 审校
来源版本 官方未提供
同步日期 2026-07-26
官方原文 learn.chatgpt.com

Codex Security 可帮助你将积压的已接受发现转化为经过测试的代码更改。你可以在发现工作区 UI 中修复发现,也可以通过提示词、命令行或 CI/CD 调用修复工作流。在每种情况下,Codex 都会验证问题、提出针对性补丁、添加回归测试覆盖,并验证合法行为仍能正常运行。

先修复一个已接受的发现,以便评估补丁和验证质量。工作流达到你的标准后,再通过将每个发现作为单独的任务或 CI/CD 作业进行处理,将其扩展到更多已接受的发现。让每个修复保持明确范围,可以让代码更改和验证证据更易于审查。

在发现工作区中打开一个已接受的发现,以生成、审查、应用并验证其补丁。

  1. 生成针对性补丁

    打开发现,选择 Patch 标签页,然后选择 Generate patch。在可行的情况下,Codex 会验证或复现问题,并写入补丁构件,而不会修改选定的 checkout。

  2. 审查提议的差异

    阅读每个已更改的源文件和回归测试文件。如果需要在编辑器中查看完整补丁,请使用 Open diff in editor。拒绝范围过大的重构、不相关的清理,或会削弱其他安全控制的更改。

  3. 在本地应用补丁

    只有在差异可接受后,才选择 Apply patch locally。Codex 会将生成的确切补丁应用到工作树,并记录该状态。继续之前,请审查工作树差异。

  4. 验证修复

    选择 Verify fix。Codex 会重新运行原始复现程序或可用的最强漏洞利用检查、针对性的回归测试覆盖、合法行为检查、附近的绕过检查以及相关的仓库测试。

  5. 有意关闭发现

    验证不会自动关闭发现。审查命令、结果和剩余的证明缺口,然后使用准确的原因关闭发现,或将其保持打开以继续处理。

审查提议的源代码和测试更改,然后再在本地应用补丁。

当你已经从扫描、工单、公告、披露、安全评估或内部审查中获得发现时,请使用 Codex CLI。

以下命令假设 Codex Security 已安装在 codex exec 使用的 CODEX_HOME 中。全新的 CI runner 默认未安装 marketplace 插件。

Use $codex-security:fix-finding to fix finding <finding-id> from <report-path>. Validate the issue, make the smallest safe change, add focused regression coverage, and verify that the issue no longer reproduces.

请包含已知的源、汇、攻击者输入、影响、预期不变量、复现程序、受影响文件和验证命令。Codex 可以检查仓库以补充缺失的技术细节,但在猜测产品策略或预期安全不变量之前,应先询问。

对于自动化运行,请在检出代码、提供发现报告并在该 CODEX_HOME 中配置插件后,将提示词传递给 codex exec

Terminal window
codex exec 'Use $codex-security:fix-finding to fix finding <finding-id> from <report-path>. Validate the issue, make the smallest safe change, add focused regression coverage, and verify that the issue no longer reproduces.'

在调用这些技能之前,请在 runner 的 CODEX_HOME 中配置 Codex Security。以下命令使用已安装的插件;它本身不会安装插件。

在 CI/CD 中,使用一次 Codex 运行来扫描差异,并为它发现的每个发现生成修复。该作业不需要以发现 ID 或报告路径作为输入。Codex 会在同一次运行中将扫描所得的发现传递给修复流程。

一体化运行应:

  1. 解析此次更改的 base 和 head 修订版本。
  2. 针对该差异运行 $codex-security:security-diff-scan
  3. 为扫描返回的每个发现调用 $codex-security:fix-finding
  4. 生成针对性补丁和回归测试覆盖,然后验证每个修复。
  5. 返回扫描结果、补丁、测试、验证命令以及无法修复的任何发现。

例如:

Terminal window
codex exec 'Use $codex-security:security-diff-scan to review changes from <base-revision> to HEAD. For every finding returned by the scan, use $codex-security:fix-finding to generate and verify a minimal fix. Continue until every finding has either a verified fix or an explicit explanation of why it could not be fixed. Return the scan results, patches, tests, verification commands, and remaining failures.'

验证完成后,按照正常的代码审查和发布流程合并补丁。如需在修复前将发现交给其他团队,请参阅导出或跟踪发现