6,175· 407 forks· TypeScript· Apache-2.0开发工具

OpenAI Codex Security - AI驅動的程式碼安全漏洞掃描工具

openai/codex-security

OpenAI官方推出的命令列工具和TypeScript SDK,利用GPT模型自動發現、驗證並修復程式碼中的安全漏洞

成熟度維護活躍,最近提交0天前,但有91個open issues反映早期階段問題較多

项目体检

部署 · 基于Docker多阶段构建,需Node.js 22+和Python 3.10+环境,通过npm全局安装后运行CLI命令,无默认端口(命令行工具)

成本 · 需要OPENAI_API_KEY或CODEX_API_KEY环境变量,或通过ChatGPT账号登录;Trusted Access(TAC1/Daybreak)可减少模型拒答;扫描会消耗API token成本

技术 · TypeScript主体,依赖Node.js 22.x/24.x/26.x运行时和Python 3.10+,使用pnpm构建

许可 · Apache-2.0协议,允许商用、修改和分发,需保留版权声明

活跃 · 极度活跃,最近提交0天前,15位贡献者参与,但91个未关闭issue显示产品仍在快速迭代中

解決什麼

傳統程式碼安全掃描工具依賴規則庫和靜態分析,容易產生誤報且難以理解複雜邏輯漏洞。Codex Security利用OpenAI的大語言模型(如GPT-5.6-terra)進行深度程式碼理解,能夠發現傳統工具遺漏的業務邏輯漏洞、許可權繞過等複雜安全問題,並提供自然語言解釋和修復建議。工具支援本地掃描、CI整合和歷史對比,幫助開發團隊在程式碼提交前攔截安全風險。

為何火

作為OpenAI首個官方安全工具,釋出即獲得HN 591點和226條討論。核心吸引力在於:1)AI原生能力突破傳統規則引擎侷限,能理解上下文語義;2)與ChatGPT賬號打通,降低企業使用者接入門檻;3)開源Apache-2.0協議,可自由整合到DevSecOps流程;4)直接對標Snyk等商業工具,引發行業對"AI是否會顛覆傳統安全掃描"的討論。社群爭議集中在模型拒答、Token成本和隱私擔憂上。

核心功能

  • 多模型掃描:支援gpt-5.6-terra等模型,可調節effort引數平衡速度與深度
  • 雙認證模式:ChatGPT賬號登入或API金鑰,環境變數優先順序可配置
  • 掃描對比:scans compare命令自動匹配歷史漏洞,標記新增/修復/重現問題
  • CI友好:支援非互動模式,掃描歷史儲存在可配置的狀態目錄
  • TypeScript SDK:可程式設計整合到自動化工作流,提供run()close()非同步介面
  • Trusted Access:申請TAC1白名單可減少模型對敏感程式碼的拒答

安裝

需Node.js 22.13.0+、Python 3.10+和OpenAI訪問許可權:

npm install -g @openai/codex-security
codex-security login  # 或設定OPENAI_API_KEY
codex-security scan . --model gpt-5.6-terra --effort high

Docker部署:

docker build -t codex-security .
docker run -e OPENAI_API_KEY=sk-xxx codex-security bulk-scan /repo

適合誰

  • 安全團隊:需要AI輔助人工審計,發現複雜業務邏輯漏洞
  • 開源維護者:可申請Trusted Access免費掃描公開倉庫
  • 企業DevOps:已有OpenAI企業訂閱,希望整合到CI/CD流水線
  • 不適合:預算有限的小團隊(單次掃描可能消耗數百美元Token)、對資料出境敏感的專案(程式碼需傳送到OpenAI伺服器)

社群評價

HN討論熱度高但爭議明顯。正面觀點:多位使用者認為AI掃描能發現Snyk等工具遺漏的問題,有開發者表示"終於有工具能理解我的程式碼邏輯了"。負面爭議集中在三點:1)模型拒答頻繁,有使用者抱怨"掃Linux核心補丁被拒,燒了100美元Token卻一無所獲";2)認證問題導致0.1.0版本釋出即崩潰,需緊急釋出0.1.1修復;3)隱私擔憂,有評論質疑"誰敢把程式碼上傳給專門找漏洞的公司?他們會不會把高危漏洞賣給情報機構?"。OpenAI團隊在討論中承認拒答問題,建議申請Trusted Access緩解。

選型對比

vs Snyk:Snyk基於CVE資料庫和規則引擎,響應快但誤報多;Codex Security依賴LLM推理,能發現零日漏洞但成本高、速度慢。Snyk支援依賴掃描,Codex側重原始碼邏輯分析。 vs Semgrep:Semgrep開源且本地執行,隱私友好但需手寫規則;Codex無需規則配置,但程式碼必須上傳雲端。 vs GitHub Advanced Security:後者整合在GitHub生態內,Codex可跨平臺使用但需單獨付費。

取捨:預算充足且對AI能力有期待選Codex,注重隱私或成本敏感選本地工具。

已知坑

  1. Token消耗失控:社群反饋掃描大型專案可能燒掉數百美元,且拒答時Token照扣不退
  2. 模型拒答:對核心程式碼、加密演算法等敏感內容可能觸發guardrails,需申請Trusted Access
  3. 認證衝突:環境變數OPENAI_API_KEY會覆蓋ChatGPT登入,需手動unset切換
  4. 中國訪問:依賴OpenAI API,大陸使用者需自備網路方案
  5. 狀態目錄許可權:掃描歷史預設存倉庫內,CI環境需設定CODEX_SECURITY_STATE_DIR
  6. Node版本嚴格:僅支援22.13.0+的22.x、24.x、26.x分支,其他版本會報錯
  7. 早期穩定性:91個未關閉issue顯示產品仍在快速修bug階段,生產環境需謹慎

安装方式:npm