AIリスキルLab

未経験から、AIで稼げる人材へ。最短ルートを示す。

Claude Codeセキュリティ設定ガイド|数千万円被害の事件から学ぶ対策

Claude Codeセキュリティ設定ガイド|数千万円被害の事件から学ぶ対策

Claude Codeセキュリティ設定ガイド|数千万円被害の事件から学ぶ対策

この記事で分かること:
- 2026年3月に起きたClaude Codeセキュリティ事件の全容
- 設定ファイルにコピペするだけの防御策3つ
- 組織導入で追加すべきセキュリティ対策

Claude Codeで何が起きたのか — 2026年3月の事件とCVE

Claude Codeのセキュリティが炎上したのは2026年3月。実害が出た事件と、2件のCVE公開が重なった。

Google広告MCC乗っ取り — 被害額は数千万円

広告代理店がClaude Codeを導入した直後、Google広告のMCCが乗っ取られた。MCCとはマネージャーアカウントのこと。配下の広告アカウントを一括管理する仕組みで、ここを奪われると配下すべてのアカウントが攻撃者の手に渡る。

被害額は8桁後半。数千万円だ。

攻撃者は「他人の広告予算で自分の広告を配信」していた。単一アカウントの乗っ取りとは桁が違う。原因をたどると、Claude Codeが .env ファイルを読み取り、そこに書かれた認証情報が外部に漏れたことだった。

公開された2つの脆弱性(CVE-2025-59536 / CVE-2026-21852)

2026年2月、Check Point Researchが2件の脆弱性を公開した。

CVE番号 CVSS 内容 修正バージョン
CVE-2025-59536 8.7 Hook/MCP設定経由のリモートコード実行 v1.0.111(2025年10月)
CVE-2026-21852 5.3 ANTHROPIC_BASE_URL改ざんによるAPIキー漏洩 v2.0.65(2026年1月)

2件とも修正済み。だが「パッチが当たった=安全」とはならない。同じ発想の攻撃は形を変えて出てくる。設定側で備えておく必要がある。

Claude Codeのセキュリティは何が問題だったのか

被害の裏には、4つの攻撃経路がある。ここでは特に影響の大きい2つを取り上げる。

攻撃ベクトル① 信頼できないリポジトリを開くだけで発動

CVE-2025-59536の手口はシンプルだった。悪意ある .claude/settings.json をリポジトリに仕込む。開発者がgit cloneしてClaude Codeを起動すると、確認ダイアログが出る前にHookやMCPサーバーが走る。

開くだけで終わる。クリックも、承認操作も要らない。

攻撃ベクトル② .envファイルからの認証情報漏洩

Claude Codeは .env を読める。攻撃者はプロンプトインジェクションで .env の中身をpingコマンドのサブドメインに埋め込み、DNSリクエストとして外部サーバーに飛ばした。

厄介なのは、curlwget をブロックしても防げない点だ。Pythonの urllib やNode.jsの fetch() でもHTTP通信はできる。コマンド単位のブロックには限界がある。

どの攻撃にどの設定が効くか、対応表にまとめた。

攻撃ベクトル × 対策設定の対応表

今すぐやるべきClaude Codeセキュリティ設定3選

.claude/settings.json にコピペするだけで済む。3つとも5分で終わる。

サンドボックスを有効化する

Claude Codeが実行するBashコマンドを、OSレベルで隔離する。効果はこの3つの中で最も高い。

{
  "sandbox": {
    "enabled": true,
    "allowUnsandboxedCommands": false
  }
}

macOSならSeatbelt、LinuxならBubble Wrapが動く。ファイルシステムもネットワークも制限される。

allowUnsandboxedCommands は必ず false に。true のままだとサンドボックス外でコマンドを実行できてしまう。

機密ファイルへのアクセスを拒否する

.env や秘密鍵をClaude Codeの読み取り対象から外す。

{
  "permissions": {
    "deny": [
      "Read(./.env*)",
      "Read(**/*.pem)",
      "Read(**/*.key)",
      "Read(**/*.keystore)",
      "Read(**/*.jks)",
      "Read(**/*.p12)",
      "Read(**/google-services.json)"
    ]
  }
}

MCC乗っ取りの直接原因は .env の漏洩だった。この1つの設定だけでも、同じタイプの被害はかなり防げる。

bypassPermissionsモードを無効化する

--dangerously-skip-permissions というフラグがある。名前のとおり、すべてのパーミッションチェックを飛ばす。CI/CDの自動化では便利だが、攻撃者にとっても便利だ。

{
  "permissions": {
    "disableBypassPermissionsMode": "disable"
  }
}

使う予定がなければ、閉じておく。

余裕があればやっておきたい追加設定

上の3つを済ませた人向け。防御の層を厚くする設定だ。

危険なコマンドをdenyルールでブロック

ファイル削除やネットワーク系コマンドを明示的に止める。

{
  "permissions": {
    "deny": [
      "Bash(rm -rf *)",
      "Bash(curl *)",
      "Bash(wget *)"
    ]
  }
}

繰り返しになるが、curl を止めてもPython経由の通信は通る。python3 *node * もallowリストから外しておくのが無難だ。

ネットワークアクセスを制限する

ホワイトリスト方式でドメインを絞る。

{
  "sandbox": {
    "network": {
      "allowedDomains": [
        "github.com",
        "*.npmjs.org",
        "registry.yarnpkg.com"
      ]
    }
  }
}

「必要なものだけ許可、それ以外は全遮断」が基本方針になる。

/permissionsで定期的に棚卸しする

セッション中に「Allow always」で通したルールは消えずに残る。Claude Codeで /permissions と打てば、現在の許可状況を一覧できる。

月に1回、不要な許可が残っていないか眺めるだけでいい。

チーム・企業で導入するなら押さえるべきポイント

個人の設定だけでは足りないケースがある。組織導入なら以下も検討したい。

devcontainerで隔離環境を作る。 Anthropic公式にリファレンス実装がある。ホストマシンと完全に切り離した環境でClaude Codeを動かせるので、万が一の被害がコンテナの外に波及しない。

Managed Settingsで全員に同じポリシーを強制する。 Server-managed settingsかEndpoint-managed settingsを使えば、メンバーが個別に設定を上書きできなくなる。セキュリティの抜け穴をゼロにする仕組みだ。

利用状況はOpenTelemetryメトリクスで追える。設定変更の検知には ConfigChange フックが使える。

よくある質問

Q. Claude Codeの脆弱性はすでに修正されていますか?
CVE-2025-59536はv1.0.111で、CVE-2026-21852はv2.0.65で修正済み。最新版にアップデートすればこの2件の影響は受けない。ただ、新しい脆弱性がいつ見つかるかは誰にもわからない。設定による防御は続けたほうがいい。

Q. 無料プランでもセキュリティ設定は必要ですか?
必要だ。有料か無料かに関係なく、Claude Codeはローカルのファイルを読める。.env や秘密鍵があるマシンで使うなら、サンドボックスとdenyルールは入れておくべきだ。

Q. Claude Code以外のAIコーディングツールにも同じリスクがありますか?
ある。GitHub Copilot、Cursor、Codexなど、ローカルファイルを扱うツールならどれも同じリスクを抱えている。Claude Codeが目立ったのはCVEの公開と被害報道が重なったから。どのツールであれ、見知らぬリポジトリを開くときは慎重に。

この記事で紹介したサービス

サービス名カテゴリ
ココナラfreelance

関連記事