OpenAI Codex Security:代码漏洞扫描工具链
本文目录
Codex Security#
Codex Security 帮助你发现、调查并修复代码中的漏洞。你可以在 Codex 中使用其安全工作流,也可以通过 @openai/codex-security CLI 和 TypeScript SDK 自动化这些流程。
- 在 Codex 中:选择一个安全工作流。
- 在终端中:安装 CLI 并扫描仓库。
- 在自动化中:使用 TypeScript SDK 或 GitHub Action。
功能#
- 扫描仓库、选定路径或 Git 变更。深度扫描会重复标准扫描并返回去重后的发现。
- 验证候选发现、生成补丁并验证现有修复。
- 起草 SECURITY.md 策略,并保存威胁模型以供后续审查。
- 浏览已保存的扫描和发现,识别重复项,按你自己的评分标准评估严重性,并根据源代码和 Git 历史建议负责人。
- 预览第三方扫描器的发现,将其保存在本地,或将支持的报告发布到 Codex Security Cloud。参见扫描器导入指南。
- 在 Linear、Jira 或 GitHub 中跟踪发现,发布已完成的扫描,或导出 SARIF、JSON 和 CSV。参见集成工作流。
- 跨仓库或项目组件自动化扫描,包括在 CI 和容器中。
在 Codex 中使用#
启用 Codex Security 插件后,在 Codex 会话中打开你的仓库,然后提问:
Run a Codex Security scan on this repository, focusing on authentication and
authorization. Return the saved report, source evidence, and coverage limits.
完成的扫描会保存一份报告和发现。阅读报告以了解源证据和排除项,然后请求补丁或让 Codex 验证现有修复。设置、任务选择和恢复方法见智能体工作流指南。
快速开始#
需要 Node.js 22.13.0+(限 22.x),或 Node.js 24.x / 26.x,以及 Python 3.10+。Python 3.10 还需要 tomli。
全局安装 CLI 并登录:
npm install --global @openai/codex-security
cs login
在仓库目录中运行首次扫描:
cs scan .
扫描完成后,打开终端中 REPORT 路径指向的 Markdown 文件。在同一仓库中运行 cs scans show 可再次找到最近一次完成的扫描。如何解读报告中的排除项,见扫描范围与后续工作。
cs 和 codex-security 运行相同的 CLI。如果短名称与其他命令冲突,请使用 codex-security。要跳过全局安装,或 npm 报告 EEXIST 冲突,可在登录和扫描时都用 npx @openai/codex-security 代替 cs。
对于 CI,在扫描进程的环境中设置 OPENAI_API_KEY 或 CODEX_API_KEY。无头机器请参见设备或 SSH 登录。
扫描选项#
选择范围和扫描模式:
# 扫描选定路径。
cs scan . --path src --path tests
# 扫描从基础版本到 HEAD 的已提交变更。
cs scan . --diff origin/main
# 对仓库运行深度扫描。
cs scan . --mode deep
使用 cs scan . --max-time 15 获得 15 分钟的标准调查时间建议额度。计时语义和深度扫描限制见调查时间。
使用 cs --help 浏览命令,或使用 cs scan --help 查看扫描选项、成本限制和扫描后的打补丁功能。
对于跨多个仓库的应用,参见跨仓库审查一个系统。对于独立的单仓库审查,使用可恢复的单次批量扫描。
扫描会使用现有的根级和组件级 SECURITY.md 指南。要编写或修订它,见生成 SECURITY.md。
某些网络安全请求和受保护的发现需要 Trusted Access for Cyber。拥有 Daybreak 访问权限的账户,参见 Daybreak 选择加入,了解 Codex 开关和 Cyber 访问计划,以明确选择某个计划。
TypeScript SDK#
在 TypeScript 项目中本地安装该包:
npm install @openai/codex-security
然后导入:
import { CodexSecurity } from "@openai/codex-security";
const security = new CodexSecurity();
try {
const result = await security.run("/path/to/repository");
console.log(result.reportPath);
} finally {
await security.close();
}
SDK 指南涵盖深度扫描配置、验证、严重性分类、负责人建议和结果处理。
当链接的 Git worktree 使用相同的 Codex Security 状态目录时,它们共享扫描历史和已保存的发现。保持 CODEX_SECURITY_STATE_DIR 稳定,以保留共享历史和登录范围。参见扫描历史指南。
读取已有的 Cloud 发现#
当你的账户可以使用 Codex Security Cloud 时,Security 插件的 $cloud-findings 技能可以在 Codex 桌面端或 Codex CLI 中读取发现、报告、记录的分配与验证以及扫描状态。Cloud 是可选的连接;本地扫描无需它即可工作。
认证要求和只读示例见 Cloud 连接设置和 CLI 读取。
生成 SECURITY.md#
使用 policy 起草新的 SECURITY.md 或更新现有的文件。使用 --path 选择组件:
cs policy .
cs policy . --path services/api --knowledge-base architecture.md
该命令将草稿保存在仓库之外,不修改现有文件。审查 diff 和说明,编辑草稿,然后仅将 SECURITY.md 复制到显示的策略目标位置。将保存的架构和威胁模型文档保留在仓库之外。
扫描已经使用根级和组件级 SECURITY.md 文件。如果当前策略无需更改,就保留它。更新时,保留其漏洞报告说明。如果命令提示策略已是最新,则无需复制。
位于 .github/SECURITY.md 或 docs/SECURITY.md 的文件通常包含报告说明。起草策略时请保留它们;这些位置不会自动提供仓库范围的扫描指南。策略位置、未回答的问题、保存的工件和 SDK 用法见策略指南。
保存和导出威胁模型#
扫描和策略生成会随结果保存威胁模型。无需重新启动分析即可导出一份已保存的模型:
cs export --scan SCAN_ID --artifact threat-model --output threatmodel.md
省略 --scan 将使用当前仓库最近一次完成的扫描。导出指南还涵盖发现、用于 CI 的 SARIF 输出以及离线 TypeScript API。对于 ServiceNow Application Vulnerability Response,参见为 ServiceNow 导出发现。
GitHub Actions#
要在 GitHub 托管的 Ubuntu 上运行每周仓库扫描:
- 将 OpenAI API 密钥添加为仓库 secret
CODEX_SECURITY_API_KEY。 - 将每周工作流复制到
.github/workflows/codex-security.yml。将REPLACE_WITH_REVIEWED_COMMIT替换为 Action 发布中经过审查的分发提交 SHA。
要在下一次计划运行前试用该工作流,打开 Actions → Codex Security repository → Run workflow。
示例每次扫描使用估计 5 美元的上限,并报告发现而不使作业失败。进行中的请求可能超出该限制。有关严重性阈值、拉取请求检查或 runner 要求,参见 Action 指南。符合条件的账户请参见 Daybreak 访问。
容器化批量扫描#
使用附带的 Docker Compose 配置扫描一组仓库,该配置在多次运行之间保留结果和认证信息。参见容器快速开始。工作流运行器在容器中运行各个 CLI 阶段,并可连接到单独部署的发现服务。
发现存储与去重#
发现指南涵盖本地存储、去重,以及通过 publish scan --to custom 和显式 --findings-url 与独立运营的端点兼容。本地 serve 命令和浏览器仪表盘已被移除;现有数据库和扫描工件仍然可用。
其他提供商#
扫描支持 OpenAI、Amazon Bedrock、OpenRouter、Fireworks AI 和 Cheaper Inference。Bedrock 使用 AWS 凭证,不需要单独的 OpenAI 登录。AWS 配置文件、区域和模型访问见 Bedrock 设置。
对于 OpenRouter、Fireworks AI 和 Cheaper Inference,设置提供商的 API 密钥并选择受支持的模型。示例见提供商配置。
文档#
- 在线文档
- 智能体工作流与恢复
- CLI 参考
- 导入发现的标识与证据
- 项目配置
- 示例
如需私下报告漏洞,请遵循安全策略。
关于#
OpenAI 的 Codex Security CLI 和 TypeScript SDK,用于发现、验证和修复安全漏洞。npm:https://www.npmjs.com/package/@openai/codex-security
developers.openai.com/codex/security
主题:ai-security、application-security、cli、code-scanning、codex、codex-security、cybersecurity、devsecops、nodejs、npm、openai、sdk、security、typescript、vulnerability-scanning
资源:Readme、Apache-2.0 license、贡献指南、安全策略
活动:11.7k stars、39 watching、936 forks