OpenAI Codex 中文文档(4.14更新)
联系我
官方文档

常见问题

Codex Security 常见问题

入门

什么是 Codex Security?

软件安全仍然是工程领域里最难、也最重要的问题之一。Codex Security 是一套由 LLM 驱动的安全分析工具集,它会检查源代码,并返回结构化、可排序的漏洞发现结果以及建议补丁。它可以帮助开发团队和安全团队更高效地发现并修复安全问题。

为什么它重要?

软件是现代产业和社会的基础设施,而漏洞会带来系统性风险。Codex Security 采用防守优先(defender-first)的工作方式,持续识别高概率问题、在可能时自动验证,并提出修复建议。这能帮助团队在不拖慢开发的前提下提升安全性。

Codex Security 解决了什么业务问题?

Codex Security 缩短了“怀疑有问题”到“确认、可复现、有证据并附带修复建议”的路径。相比只依赖传统扫描器,它能降低分诊负担,并减少误报。

Codex Security 如何工作?

Codex Security 会在短生命周期、隔离的容器中运行分析,并临时克隆目标仓库。它执行代码级分析,然后返回结构化发现结果,其中包含描述、文件与位置、严重级别、根因以及建议的修复方式。

对于包含验证步骤的发现结果,系统会在同一个沙箱中执行建议的命令或测试,并记录成功或失败、退出码、stdout、stderr、测试结果,以及生成的差异(diff)或其他工件,并把这些输出作为审查证据附带回来。

它能替代 SAST 吗?

不能。Codex Security 是对 SAST 的补充。它增加了基于语义和 LLM 的推理能力,以及自动验证能力;而现有 SAST 工具仍然提供广覆盖、确定性的检测能力。

功能

分析流水线是什么样的?

Codex Security 遵循一个分阶段的流水线:

  1. 分析:为仓库构建威胁模型。
  2. 提交扫描:审查已合并的提交和仓库历史,寻找高概率问题。
  3. 验证:在沙箱中尝试复现高概率漏洞,以减少误报。
  4. 补丁生成:与 Codex 集成,生成可供审查者检查的建议补丁,再决定是否开 PR。

它可以和 GitHub、Codex 以及常规代码审查流程并行协作。

支持哪些语言?

Codex Security 与具体语言无关。实际表现更多取决于模型对该仓库所用语言和框架的推理能力。

扫描完成后我会拿到什么结果?

你会拿到按优先级排序的发现结果,其中包含严重级别、验证状态,以及在可生成时附带的建议补丁。发现结果还可能包含崩溃输出、复现证据、调用路径上下文以及相关注释。

客户代码是如何隔离的?

每个分析和验证任务都运行在短生命周期的 Codex 容器中,只暴露本次会话范围内的工具。用于审查的工件会被提取出来,任务结束后容器会被销毁。

Codex Security 会自动应用补丁吗?

不会。建议补丁只是建议修复方案。用户可以在发现结果界面中审查它,并将其作为 PR 推送到 GitHub,但 Codex Security 不会自动把改动应用到仓库中。

扫描前必须先把项目构建好吗?

不需要。Codex Security 可以仅基于仓库与提交上下文生成发现结果,而不依赖预先编译。在自动验证阶段,如果有助于复现问题,它可能会尝试在容器中构建项目。环境准备细节见 Codex Cloud 环境

Codex Security 如何减少误报并避免生成损坏补丁?

Codex Security 使用两阶段流程。第一阶段,模型会先对可能的问题做排序。第二阶段,自动验证会尝试在一个干净容器里复现每个问题。那些成功复现的发现结果会被标记为已验证,从而在人工审查前降低误报率。

首次扫描通常需要多久?之后会怎样?

首次扫描时间取决于仓库大小、构建耗时,以及有多少发现结果进入验证阶段。对某些仓库来说,首次扫描可能需要几小时;对更大的仓库,可能需要几天。后续扫描通常会更快,因为它们主要聚焦于新提交和增量变化。

什么是威胁模型?

威胁模型是仓库在扫描时使用的安全上下文。它把简短的项目概览与攻击面信息组合起来,包括入口点、信任边界、认证假设以及高风险组件。更多细节见 改进威胁模型

威胁模型是如何生成的?

Codex Security 会引导模型总结仓库架构与安全入口点、判断仓库类型、运行专门的提取器,并把结果合并成一个项目概览,也就是后续扫描中持续使用的威胁模型工件。

它能替代人工安全审查吗?

不能。Codex Security 能加速审查并帮助发现结果排序,但它不能替代代码级验证、可利用性判断和人工威胁评估。

我可以编辑威胁模型吗?

可以。Codex Security 会先创建初始威胁模型,而你可以随着架构、风险和业务上下文的变化不断更新它。编辑流程见 改进威胁模型

在使用威胁建模之前,需要先配置扫描吗?

需要。威胁模型的指导效果取决于你扫描的内容和扫描方式,因此你必须先配置目标仓库。参见 Codex Security 设置

建议补丁里包含什么?

当系统能够为某个发现结果生成修复建议时,建议补丁会包含一个可执行的最小差异(diff),并带有文件名和对应的行上下文。

这个补丁会直接修改我的 PR 分支吗?

不会。整个流程只会生成一个供维护者和审查者查看的差异(diff)、patch 文件或建议改动,不会直接修改你的分支。

验证

什么是自动验证?

自动验证是尝试在隔离容器里复现可疑问题的阶段。它会记录复现是否成功,并把日志、命令以及相关工件一起保存为证据。

如果验证失败会怎样?

该发现结果会保持为未验证状态。但日志和报告仍会保留这次尝试过程,方便工程师继续重试、进一步调查或调整复现步骤。


来源:https://developers.openai.com/codex/security/faq