Codexサンドボックス回避方法

Ashley Goolam

Ashley Goolam

25 11月 2025

Codexサンドボックス回避方法

OpenAIのコーディングLLMであるCodexは、デフォルトで多層のサンドボックス化と承認の仕組みを備えており、安全な実行のための強力なガードレールを適用しています。しかし、開発者は信頼できるワークフローのために、より少ない制限でCodexを実行したい場合があります。この記事では、Codexサンドボックスとは何か、なぜそれが存在するのか、そして--dangerously-bypass-approvals-and-sandboxフラグを使用してそれを無効にする方法について説明します。

免責事項: Codexサンドボックスをバイパスすると、システムとコードベースを保護することを目的とした重要なセキュリティ対策が損なわれる可能性があります。以下の内容は純粋に教育目的であり、ご自身の責任において、管理された環境でのみ実行してください。

💡
美しいAPIドキュメントを生成する優れたAPIテストツールをお探しですか?

開発チームが最高の生産性で共同作業できる統合されたオールインワンプラットフォームをお探しですか?

Apidogはすべての要求に応え、Postmanをはるかに手頃な価格で置き換えます

ボタン

Codexサンドボックスをバイパスする前にCodex CLIをインストールするかDockerで実行する

Codexサンドボックスをバイパスしようとする前に、Codex CLIをインストールするか、Dockerのような管理された環境で実行する必要があります。

Codex CLIのインストール:

# Install via NPM
npm install -g @openai/codex

# Install via Homebrew
brew install --cask codex

次に、ターミナルでcodexを実行するだけでCodex CLIを使い始めることができます。

Codex CLIの認証:
APIキーをエクスポートします: export OPENAI_API_KEY="<your-openai-key>" Windowsでは、exportの代わりにsetコマンドを使用します。

codex cliをインストールして実行する

または、DockerでCodexを実行する
コンテナ分離を希望する場合(サンドボックスをバイパスする際に推奨されます):

docker run --rm -it -v "$(pwd):/workspace" -w /workspace ghcr.io/openai/codex:latest \ codex --sandbox danger-full-access --ask-for-approval never

これにより、Codexはコンテナ内でフルアクセスを得ながら、ホストシステムからは隔離されます。

docker desktopをインストールする

Codexサンドボックスとは何か?

Codexサンドボックスは、Codexがあなたのマシン上で実行できることを制限するセキュリティメカニズムです。OpenAI Codexセキュリティガイドによると:

これらのサンドボックス対策は、悪意のあるコード実行、データ漏洩、有害なシステム変更などの意図しないアクションからユーザーを保護することを目的としています。

Codexサンドボックスが存在する理由

Codexがデフォルトでサンドボックス化されている主な理由は次のとおりです。

  1. セキュリティ: Codexがワークスペース外のあなたのマシンに恣意的に書き込むのを防ぎます。
  2. ネットワークの安全性: 明示的に許可されない限りネットワークアクセスを禁止し、データ持ち出しや安全でないAPIコールのリスクを軽減します。
  3. 制御された実行: Fossiesに示されているように、Codexは危険な可能性のあるアクション(コマンドの実行、システムファイルの変更など)に対してユーザーの承認を必要とします。
  4. 分離: Codexが制御された環境で実行されることを保証し、バグのあるプロンプトや悪意のあるプロンプトによる潜在的な損害を最小限に抑えます。

Codexサンドボックスをバイパスしたい場合

特に信頼できる環境では、サンドボックスを無効にする正当なシナリオがあります。

  1. すでにリスクが管理されているDockerコンテナまたは分離されたVM内でCodexを実行する場合。
  2. Codexにシェルコマンドを実行させたり、依存関係をインストールさせたり、ユーザーの承認を繰り返すことなくタスクを完全に自動化させたりする必要がある場合。
  3. 信頼できるCI/CDパイプラインでCodexを使用しており、より高い権限を付与したい場合。
  4. リスクを理解しており、完全なファイルシステムまたはネットワークアクセスを必要とする機能を実験またはプロトタイプ化したい場合。

Codexサンドボックスをバイパスする方法 — 設定とコマンド

CLIフラグconfig.tomlの両方を使用して、サンドボックスの制限なしにCodexを設定および実行する方法を以下に示します。

CLIコマンドによるバイパス

サンドボックス化と承認プロンプトを完全にバイパスするには、次のコマンドを実行します。

codex --dangerously-bypass-approvals-and-sandbox

これはフルアクセスモードと同等です。サンドボックスも確認もありません。管理された環境でのみ使用してください。

~/.codex/config.tomlによるバイパス

サンドボックスをスキップするために、config.tomlに永続的な設定を行うことができます。

# ~/.codex/config.toml

model = "gpt-5-codex"
approval_policy = "never"
sandbox_mode = "danger-full-access"

[sandbox_workspace_write]
network_access = true

# (Optional) define additional writable roots
writable_roots = ["/workspace", "/tmp"]

approval_policy = "never"は、すべての承認プロンプトを無効にします。

sandbox_mode = "danger-full-access"は、サンドボックスの隔離を解除します。

[sandbox_workspace_write].network_access = trueは、ワークスペース書き込みモードでCodexがネットワーク呼び出しを行うことを許可します。

この設定(上記のリスクを許容できると仮定した場合)により、Codexは確認を求められることなく、完全なファイルシステムおよびネットワーク特権で実行されます(詳細についてはOpenAI Developersを参照してください)。

サンドボックスの動作のテスト

Codexのデバッグコマンドを使用することで、異なるサンドボックス設定下でのCodexの動作をテストできます。

# macOSの場合:
codex sandbox macos --full-auto ls / 

# Linuxの場合:
codex sandbox linux --full-auto ls /

これらのコマンドは、Codexの強制されたサンドボックスポリシーの下で任意のシェルコマンドを実行し、何が許可され、何が許可されないかを観察するのに役立ちます。

Codexサンドボックスをバイパスするリスク

バイパスを有効にすると、Codexは次のことが可能になります。

バイパスは次の場合にのみ使用してください:

Codexサンドボックスの既知の脆弱性とバグ履歴

Codexのパス構成ロジックのバグにより、サンドボックスバイパスの脆弱性が存在したことに注意する価値があります(GitHubおよびGitLab Advisory Databaseに記載)。Codex CLIの特定のバージョンでは、モデルが生成した作業ディレクトリが、本来隔離されるべきであるにもかかわらず、書き込み可能として扱われていました。

よくある質問

Q1. Codexサンドボックスのバイパスは一般的な使用に推奨されますか?
いいえ — 管理された信頼できる環境でのみ推奨されます。バイパスはセキュリティのセーフティネットを解除します。

Q2. サンドボックスをバイパスすると、すべての安全確認プロンプトが無効になりますか?
はい。--dangerously-bypass-approvals-and-sandboxフラグは、サンドボックスの制限と承認プロンプトの両方を無効にします。

Q3. Docker内でバイパスモードを安全に実行できますか?
より安全です — Dockerは隔離を提供します。コンテナが適切に設定されていれば、信頼できるワークロードの場合、サンドボックスのバイパスは許容できるかもしれません。

Q4. 古いバージョンのCodex CLIを使用している場合はどうなりますか?
古いバージョン(0.38.0以下)には、パスエスケープの脆弱性を含むサンドボックスのバグがある可能性があります。バイパスモードを使用する前に、最新バージョンに更新してください。

Q5. サンドボックスモードに戻すにはどうすればよいですか?
危険なフラグなしでCodexを実行するか、次のようにサンドボックスモードを明示的に設定するだけです。

codex --sandbox workspace-write --ask-for-approval on-request

結論

--dangerously-bypass-approvals-and-sandboxフラグはCodexに最大限の自由を与えますが、その自由には重大なリスクが伴います。Codexサンドボックスは、意図しないまたは悪意のある動作からシステム、データ、ワークフローを保護するために存在します。その影響を完全に理解している場合、信頼できる環境で実行している場合、または自動化のために無制限のアクセスが必要な場合にのみ、バイパスしてください。

共有環境、本番環境、または機密性の高い状況で作業している場合は、サンドボックスと承認プロンプトを使用する方がほとんど常に安全です。しかし、管理された実験、CIパイプライン、または信頼できるコンテナの場合、バイパスは強力なユースケースを解き放つことができます — 軽い気持ちで行わないでください。

💡
美しいAPIドキュメントを生成する優れたAPIテストツールをお探しですか?

開発チームが最高の生産性で共同作業できる統合されたオールインワンプラットフォームをお探しですか?

Apidogはすべての要求に応え、Postmanをはるかに手頃な価格で置き換えます

ボタン

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる