環境変数

CLAUDE_CODE_SUBPROCESS_ENV_SCRUB

1 を設定すると、サブプロセスの環境から Anthropic やクラウドプロバイダーの認証情報を除去してプロンプトインジェクションのリスクを軽減します。

使い方・用途

  • Claude が実行する Bash コマンドや MCP サーバーから API キーなどの機密情報を隠蔽し、悪意のある入力による情報の外部漏洩を防ぎます。
  • Linux 環境では PID ネームスペースによる隔離も行われ、ホスト側のプロセス情報へのアクセスを遮断するサンドボックス的な実行が可能です。
  • 信頼できないコードの分析や外部ツールとの連携時における安全性を大幅に高めることができます。
英語原文(公式ドキュメントより)

Set to 1 to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers). The parent Claude process keeps these credentials for API calls, but child processes cannot read them, reducing exposure to prompt injection attacks that attempt to exfiltrate secrets via shell expansion. On Linux, this also runs Bash subprocesses in an isolated PID namespace so they cannot read host process environments via /proc; as a side effect, ps, pgrep, and kill cannot see or signal host processes. claude-code-action sets this automatically when allowed_non_write_users is configured

関連する変更履歴

v2.1.98 (1件)

Added
Linux 環境において CLAUDE_CODE_SUBPROCESS_ENV_SCRUB 有効時の PID ネームスペース隔離によるサブプロセス・サンドボックス機能、およびセッションごとのスクリプト実行回数を制限する CLAUDE_CODE_SCRIPT_CAPS 環境変数を追加しました。
英語原文を表示
Added subprocess sandboxing with PID namespace isolation on Linux when CLAUDE_CODE_SUBPROCESS_ENV_SCRUB is set, and CLAUDE_CODE_SCRIPT_CAPS env var to limit per-session script invocations

変更前

AIが実行するサブプロセスからホスト側のプロセス情報が見えてしまったり、悪意のあるプロンプトによって無限にスクリプトが実行されたりするセキュリティ上の懸念がありました。

変更後

OSレベルでのプロセス隔離が強化され、また1セッション内でのスクリプト実行回数に上限を設けることができるようになりました。

ユーザーへの恩恵

AIにコマンド実行権限を与える際の安全性が高まり、プロンプトインジェクション等による情報の漏洩やリソースの枯渇リスクを大幅に低減できます。

関連ドキュメント

v2.1.83 (1件)

Added
サブプロセス環境(Bash ツール、フック、MCP stdio サーバー)から Anthropic やクラウドプロバイダーの認証情報を削除する CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 を追加しました
英語原文を表示
Added CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers)

変更前

Claude Code が起動されているシェルに設定されている API キーなどの機密情報が、Claude が実行する Bash コマンドや MCP サーバーなどの子プロセスにそのまま引き継がれていました。万が一、プロンプトインジェクションが発生した場合、これらの情報が外部に漏洩するリスクがありました。

変更後

この環境変数を有効にすることで、子プロセスの環境変数から機密性の高い認証情報を自動的に除去(スクラブ)します。Claude Code 本体は認証情報を保持し続けますが、その配下で動くツールからは参照できなくなります。

ユーザーへの恩恵

開発環境における機密情報の露出を最小限に抑え、信頼できないコードを分析したり、外部の MCP ツールを利用したりする際の安全性が大幅に向上します。