この記事は 2026年11月1日時点の公開情報をもとにしています。各社の管理画面の名前や場所は変わることがあるので、最新の公式ドキュメントもあわせて確認してください。
TL;DR
- 2026年10月、AI 開発プラットフォームへの攻撃が続き、Wiz はこれを「Black October」と呼んでいます。10月中に少なくとも9社が侵害を公表しました。
- 狙われているのは、プラットフォームに保存された環境変数、特に AI の APIキー です。盗まれたキーは転売され、不正利用されています(いわゆる LLMJacking)。
- Northflank は 10月30日、「すべての環境変数は復号されたものと考え、すべてのキーを無効化・ローテーションしてください」と案内しています。
- 該当するサービスにキーを置いていたなら、「新しいキーを発行 → アプリを差し替え → 古いキーを削除 → 利用状況と請求を確認」 の順で、今日中に対応してください。
1. 何が起きたか
Wiz のブログ(2026年10月30日)によると、10月中に侵害を公表した AI 開発プラットフォームは少なくとも次の9社です(日付は公表日、現地時間)。
| 公表日 | サービス |
|---|---|
| 10月6日 | Fireworks AI |
| 10月9日 | Andromeda |
| 10月14日 | Zeabur |
| 10月15日 | Lightning AI |
| 10月16〜17日 | OpenCode |
| 10月20日 | Railway |
| 10月23日 | Warp |
| 10月28日 | CommandCode |
| 10月30日 | Northflank |
Wiz によると、公開されている報告はいずれも、保存された環境変数、特に AI へのアクセス権を持つものを狙っています。盗まれたキーはまず少数の呼び出しで有効かどうかを確かめられ、数日後に大量に使われた例が報告されています。Wiz が調べた2件では、キーが止められるまでの間に大量の呼び出しが行われ、正規の価格で計算すると合計で10万ドルを超える利用額になったと見られています。
Northflank のステータスページ(10月30〜31日)の要点:
- すべての環境変数は復号されたものと考え、ワークロード・シークレットグループ・グローバルシークレットのすべてをローテーションする
- アドオンの公開アクセスを有効にしている場合は無効にする
- Northflank に登録した AI の APIキーの不正利用がユーザーから報告されている
- 発行元でキーを無効化して新しいキーを発行し、AI プロバイダーの利用状況と請求の記録を確認する
- 不審な利用は、Northflank のサポートと各プロバイダーに報告する
2. まず確認すること:どこにキーを置いていたか
次のような場所に AI の APIキーを置いていないか、一覧にします。
- 上の表のサービス(環境変数、シークレット、ビルド設定)
- そのほかの PaaS・CI/CD(GitHub Actions のシークレットなど)・サーバーの
.env - ローカルの設定ファイル、エディタや AI コーディングツールの設定
- 社内チャットやドキュメントに貼ったもの
上の表のサービスに置いていたキーは、使われた形跡がなくても漏れたものとして扱います。
3. 共通の手順(どのプロバイダーでも同じ)
- 新しいキーを発行する。 用途ごとに分け、権限やプロジェクトの範囲を必要最小限にします。
- アプリ・サーバー・CI のシークレットを新しいキーに差し替え、再デプロイする。
- 動作を確認してから、古いキーを削除(無効化)する。 古いキーを先に消すと止まります。逆に、新しいキーを入れたまま古いキーを残すと、対策になりません。
- 利用状況と請求を確認する(5章)。
- 新しいキーは、侵害されたサービスに戻さない。 そのサービスが原因と対策を公表するまでは、別の保存場所を使います。
4. プロバイダーごとの手順
OpenAI
- OpenAI Platform の API keys ページ(https://platform.openai.com/api-keys )を開きます。
- 新しいキーを作成します。プロジェクト単位のキーを使い、必要なら権限を制限します。
- アプリを差し替えたら、古いキーを Revoke(削除)します。
- Usage ページで、見覚えのないモデル・時間帯の利用がないか確認します。プロジェクトに利用上限(予算)を設定できる場合は設定します。
Anthropic(Claude API)
- Claude Console の API Keys のページ(Settings → API Keys)を開きます。
- 新しいキーを作成します。ワークスペースを分けている場合は、用途に合ったワークスペースで作ります。
- 差し替えたら、古いキーを削除します。
- Usage と Cost のページで利用状況を確認し、ワークスペースの利用上限を見直します。
Amazon Bedrock 経由で Claude を使っている場合は、AWS の IAM アクセスキーが対象です。Wiz の事例はこちらでした。IAM でアクセスキーを作り直して古いものを無効化し、CloudTrail で InvokeModel などの不審な呼び出しを確認してください。Wiz の事例では、global.* のクロスリージョン推論プロファイルを許可していたキーで、より大量の呼び出しが通っていました。キーのポリシーで、使うモデルとリージョンを絞っておきます。
xAI(Grok API)
- xAI Console(https://console.x.ai )の API Keys のページを開きます。
- 新しいキーを作成します。使うモデルやエンドポイントを制限できる場合は制限します。
- 差し替えたら、古いキーを削除します。
- 利用状況と請求(Billing)のページで、見覚えのない利用やクレジットの減りがないか確認します。
Google(Gemini API / Google Cloud)
- Google AI Studio の APIキーのページ(https://aistudio.google.com/apikey )、または Google Cloud コンソールの「API とサービス → 認証情報」を開きます。
- 新しいキーを作成し、APIの制限(Generative Language API など、使う API だけに絞る)と、可能ならアプリケーションの制限(IP アドレスなど)を設定します。
- 差し替えたら、古いキーを削除します。
- Cloud Billing のレポートで、Gemini API の費用が急に増えていないか確認します。予算アラートを設定していなければ設定します。
サービスアカウントキー(JSON)を環境変数に置いていた場合は、そのキーも削除して作り直します。
5. 利用状況と請求を確認する
- 各プロバイダーの Usage / Billing で、ふだん使わないモデル、深夜などの時間帯、急な増加がないかを見ます。
- 利用上限、予算アラート、プリペイドクレジットの自動チャージを見直します。自動チャージは、不正利用されたときの被害を大きくします。
- 不審な利用があれば、各プロバイダーのサポートと、キーを保存していたサービスに報告します(Northflank もこれを案内しています)。
- 請求について問い合わせるときのために、確認した日時と画面のスクリーンショットを残しておきます。
6. シークレットスキャンで「ほかに漏れていないか」を調べる
ローテーションと同時に、キーがリポジトリやログに残っていないかも調べます。
# Gitleaks:リポジトリの全履歴をスキャン
gitleaks git -v .
# TruffleHog:リポジトリの全履歴をスキャン(検証済みの結果だけ表示)
trufflehog git file://. --results=verified
- GitHub を使っているなら、リポジトリの設定で Secret scanning と Push protection を有効にします。
- 見つかったキーは、履歴から消すだけでは不十分です。必ず発行元で無効化して作り直します。
-
.envが.gitignoreに入っているか確認します。
7. チェックリスト
- AI の APIキーを置いていた場所を一覧にした
- 侵害を公表したサービスに置いていたキーを、すべて作り直した
- アプリ・CI を新しいキーに差し替えて動作を確認し、古いキーを削除した
- OpenAI / Anthropic / xAI / Google の利用状況と請求を確認した
- 利用上限・予算アラートを設定し、自動チャージを見直した
- Bedrock を使っている場合、IAM キーを作り直し、CloudTrail を確認した
- Gitleaks / TruffleHog などでリポジトリをスキャンした
- 不審な利用があれば、プロバイダーと保存先のサービスに報告した
参考リンク
- Wiz:「Black October」for AI Developer Platforms(2026年10月30日): https://www.wiz.io/blog/black-october-for-ai-developer-platforms
- Northflank Status:Security incident: https://status.northflank.com/cmvv0rn5a092f14rutwccodpp
- OpenAI API keys: https://platform.openai.com/api-keys
- Claude Console: https://console.anthropic.com/
- xAI Console: https://console.x.ai/
- Google AI Studio APIキー: https://aistudio.google.com/apikey
- Gitleaks: https://github.com/gitleaks/gitleaks
- TruffleHog: https://github.com/trufflesecurity/trufflehog
- GitHub Secret scanning: https://docs.github.com/ja/code-security/secret-scanning
開示
この記事は、PHP の外部バージョン診断ツール phpcheck.jp を運営している筆者が書いています。phpcheck.jp は APIキーの漏えいを診断するものではありません。この記事は Wiz と Northflank の公開情報、各プロバイダーの公開ドキュメントをもとにしています。