
これは、Vercel 2026年4月の侵害に対して作成したインシデントレスポンスプレイブックです。
最終更新: 2026年4月20日 12:07 PM AEST/ブリスベン - (v2 — Vercel CEO 2026年4月20日更新を反映)
Vercel は2026年4月19日、攻撃者が内部システムへの不正アクセスを取得したことを公表しました。公式発表はこちら: 発表

4月20日、Vercel CEO の Guillermo Rauch 氏は詳細なアップデートを公開し、初期アクセス経路を確認しました。Vercel の従業員が Context.ai という AI プラットフォームを使用しており、それが侵害されていました。そこから攻撃者は従業員の Google Workspace アカウントに移動し、Vercel 環境へと権限昇格しました。環境変数は保存時に暗号化されていますが、攻撃者は「機密」とフラグが立てられていない変数を列挙できました。Vercel は攻撃者を高度に洗練されており、AI による加速が大きい可能性があると特徴づけています。Google Mandiant が対応に関与しています。Vercel は Next.js、Turbopack、およびオープンソースプロジェクトは安全であると述べています。
以下は、そのセキュリティアドバイザリからの侵害指標セクションです:

詳細はかなり乏しいです。その唯一の Google IOC をどこで確認すればよいかさえ教えていません。Vercel の顧客として、この詳細レベルの低さにはかなり失望しています。何を探すべきか理解できるようにしてください!侵害されたかどうかを知るためにどこに行けばいいのか教えてください!
Vercel でワークロードを実行している場合、以下のことが証明されるまで仮定してください:
vercel env CLI を介して Vercel にプッシュされ、ローテーションされていない資格情報はすべて、存続する負債です。この区別は、エグゼクティブコミュニケーションや過剰対応(または過小対応)を防ぐために重要です。
未確認の報告は、もっともらしく、自身のトリアージには実行可能 として扱ってください。ただし、Vercel が裏付けを取るか、独立した証拠を得るまでは、顧客や規制当局へのコミュニケーションで事実として引用しないでください。「列挙可能な環境変数」(Rauch 氏確認)と「BreachForums で販売されている npm + GitHub トークン」(攻撃者の主張)の間のギャップは、サプライチェーンリスクにとって最も重要なギャップです — ローテーションの目的では最悪を想定し、コミュニケーションでは確認済みのバージョンに固執してください。
最高の緊急性 — Vercel から直接連絡があった場合、または以下のいずれかに該当する場合:
標準的な緊急性 — アクティブな Vercel プロジェクトを持つすべてのチーム(マーケティングサイトも含む)。マーケティングサイトには、CMS API キー、分析トークン、フォームハンドラーのウェブフックが含まれていることが多く、これらはより機密性の高いシステムにピボットする可能性があります。
それでも実施 — インシデント前にプロジェクトを削除した場合でも。問題は、シークレットが読み取り可能な形で Vercel に存在したかどうかであり、プロジェクトがまだあるかどうかではありません。
4月20日のアップデートでは、侵害された上流ベンダーとして Context.ai が指名されています。組織内の誰かが Vercel インシデントとは独立して Context.ai を使用している場合(ミーティングインテリジェンス、ナレッジマネジメント、CRM エンリッチメント、その他のワークフロー)、Vercel インシデントとは別に、独自の直接的な露出期間がある可能性があります。
これらのチェックを並行して実行してください:
context.ai または関連アプリ ID を検索します。環境内で Context.ai の使用が見つかった場合、OAuth 許可を取り消し、Context.ai ワークフローを通過した資格情報をローテーションし、影響を受けたユーザーの Google Workspace アカウントで Vercel が従業員のアカウントで確認したものと同じ侵害指標を監視してください。自身のインシデント詳細については Context.ai に直接連絡してください。Vercel は、他の影響を受ける組織を支援するために Context と調整していると公表しています。
2つの目標: 新たな被害を防ぎ、証拠を保全する。
デプロイを凍結する。 プロダクションブランチでの自動デプロイを一時停止します。攻撃者によって改変されたビルドが本番に出荷されるのを防ぎ、監査ログの増加を止めます。
Vercel の GitHub App を無効化する。 Vercel GitHub App がインストールされている場合(新しいコードを GitHub にプッシュしたときに Vercel への自動デプロイを行っている場合に該当)、無効化します。インストールされている GitHub アプリは https://github.com/organizations/<GitHub-Organization>/settings/installations で確認できます。

GitHub App が持っているアクセス権を特定する。 上記の設定ボタンをクリックし、Vercel アプリがアクセス権を持っていたリポジトリを監査します。これにより、今すぐ何に焦点を当てるべきかがわかります。GitHub → Organization → Settings → GitHub Apps → Vercel に移動して確認:

repo.add_member, repo.add_topicorg.invite_member, org.add_memberintegration_installation, integration_installation.repositories_addedprotected_branch.destroy, protected_branch.updategit.ref.force_push またはプッシュイベントの force-push フラグoauth_access.create, oauth_authorization.create現時点では、発表やシークレットのローテーションは行わないでください。まずスナップショットが必要です。
Vercel の発表からの詳細はかなり乏しいです:

判明している限りでは、Google Workspace 管理コンソールに移動して、この googleusercontent.com アプリを探すことを提案しているようです。コンソールでこれを見つける方法は以下の通りです:
Workspace 管理 コンソール で セキュリティ > アクセスとデータ制御 > API 制御 に移動し、アクセス済みおよび保留中のアプリを見つけます。

次に、さまざまなリストで IOC を探します。これは oauth アプリのようです: 110671459871-30f1spbu0hptbs60cb4vsmv79i7bbvqj.apps.googleusercontent.com

見つけた場合は直ちに削除し、インシデント対応パートナーに相談してください。これは私の能力を超えています。
ローテーションは最も価値の高い単一のアクションです。優先順位順に実行し、中断された場合でも最も危険なものが処理されるようにします。
何をローテーションするかは、GitHub および Vercel 環境で何が露出しているかに依存します。GitHub PAT などから始めて、このガイドに従って外側に向かって進めてください。
ティア 0 — 今日中に、他の何よりも先にローテーション: