Vercel 2026年セキュリティ侵害から学ぶAPIセキュリティ7つの教訓

Ashley Innocent

Ashley Innocent

20 4月 2026

Vercel 2026年セキュリティ侵害から学ぶAPIセキュリティ7つの教訓

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

要約

2026年4月19日、Vercelは、攻撃者がサードパーティ製AIツールのOAuth連携を介して社内システムを侵害し、保存時に暗号化されていなかった顧客の環境変数が漏洩したことを公表しました。この侵害は、すべてのAPI開発者が適用すべき7つの重要な教訓を明らかにしています。それは、保存時のシークレット暗号化(転送時だけでなく)、AI開発ツールからのOAuth許可の監査、すべての環境変数をデフォルトで機密として扱うこと、認証情報の自動ローテーション、CI/CDパイプラインの保護、セキュリティがデフォルトで有効なAPIの構築、そしてインシデント対応プレイブックを必要になる前に準備することです。

💡
Apidog は、HashiCorp Vault、Azure Key Vault、および AWS Secrets Manager と統合し、API認証情報を暗号化してローテーションします。OAuth 2.0からmTLSまで、13の認証方法すべてを1つのワークスペースでテストできます。Apidogを無料でダウンロード。

button

はじめに

Context.aiという小さなAIツールへの単一のOAuth許可が、攻撃者にVercelの内部システムへの直接的な経路を与えました。そこから攻撃者は、保存時に暗号化されていなかった顧客の環境変数、APIキー、データベース認証情報、デプロイメントトークンにアクセスしました。

この侵害は、Vercelがファイアウォールを欠いていたからでも、HTTPSを有効にするのを忘れていたからでもありません。それは、開発者がシークレットを「機密」として手動でオプトインするだろう、サードパーティのAI統合は低リスクである、そして生産性向上ツールに付与されたOAuthスコープは定期的な監査を必要としない、というアーキテクチャ上の仮定が原因で発生しました。

APIを構築または利用する開発者にとって、このインシデントは分析に値するケーススタディです。攻撃チェーンは、ほとんどの開発チームが日常的に繰り返すパターンを悪用しました。具体的には、環境変数に認証情報を保存すること、AIツールにOAuthアクセスを許可すること、そして機密データを保護するためにプラットフォームのデフォルト設定を信頼することです。

このガイドでは、Vercelの侵害から得られた7つの教訓を分析し、今週からすぐに実践できる具体的なステップとともに、それらを自身のAPIワークフローに適用する方法を示します。

何が起こったのか:2026年4月のVercel侵害

攻撃チェーン

2026年4月17日から19日の間に、攻撃者はContext.aiのGoogle Workspace OAuthアプリケーションを侵害しました。Context.aiはAIオブザーバビリティツールであり、主要なIDプロバイダではなく、小規模なプレイヤーです。しかし、Vercel従業員のGoogle WorkspaceアカウントへのOAuthアクセス権を持っていました。

攻撃チェーンの展開は次の通りです。

  1. 攻撃者がContext.aiのOAuthアプリを侵害し、そのGoogle Workspace統合を制御下に置く
  2. そのOAuthアクセスを利用してVercel従業員のGoogleアカウントを乗っ取り、その従業員が持っていたあらゆる権限を継承する
  3. Vercelの内部システムに侵入し、顧客向けのデータストアにアクセスする
  4. 顧客が「機密」とマークしていなかった環境変数を抽出する。これらは保存時に暗号化されていなかった

Vercelは、攻撃者について「その運用速度とVercelのシステムに対する詳細な理解から、非常に高度な手口を使っていた」と説明しました。

漏洩した情報

侵害が確認されたもの:

侵害されなかったもの(Vercelによる):

重要な設計上の詳細:Vercelの環境変数に対する「機密」フラグはデフォルトでオフでした。シークレットは、開発者が明示的にオプトインした場合のみ保存時に暗号化されます。このオプトインモデルは、開発者コミュニティから大きな批判を浴びました。

なぜこれがAPI開発者にとって重要なのか

あなたが構築または利用するすべてのAPIは、APIキー、OAuthトークン、データベース認証情報、Webhook署名キーといったシークレットに依存しています。Vercelの侵害はAPIを直接標的としたものではありませんでした。API認証情報が存在するインフラストラクチャが標的となりました。そして、そのインフラストラクチャはあなたのものと共通しています。すなわち、環境変数、OAuth統合、CI/CDパイプライン、そしてサードパーティツールです。

教訓1:転送時だけでなく、保存時にもシークレットを暗号化する

HTTPSは転送中のAPIキーを保護します。しかし、それらのキーがデプロイメントプラットフォーム上の環境変数に置かれている場合はどうでしょうか?Vercelの場合、「機密ではない」環境変数は保存時に暗号化されずに保管されていました。攻撃者はネットワークトラフィックを傍受する必要はなく、ストレージから直接認証情報を読み取りました。

すべきこと

Apidogがこれをどのように処理するか

Apidogは、HashiCorp VaultAzure Key Vault、およびAWS Secrets Managerとネイティブに統合されています。認証が必要なAPIをテストする際、認証情報は実行時にVaultから取得され、プロジェクトファイルや環境設定に平文で保存されることはありません。Apidogにおける認証テンプレートと実際の認証情報の分離は、シークレットを公開することなくAPIテスト設定をチームと共有できることを意味します。

教訓2:AI開発ツールからのOAuth許可を監査する

Vercelの侵害全体は、AIツールへの単一のOAuth許可から始まりました。Context.aiは疑わしいアプリケーションではありませんでした。偶然にも侵害された、正当なオブザーバビリティツールだったのです。

AIツールエコシステムは急速に成長しています。Claude Code、Cursor、GitHub Copilot、Windsurf、v0、そしてその他多くの小規模ツールが、開発環境へのOAuthまたはAPIアクセスを要求します。これらの一つ一つが、攻撃者にとって潜在的な足がかりとなる可能性があります。

すべきこと

AIサプライチェーンリスク

これは2026年特有の脅威であり、ほとんどのAPIセキュリティガイドはまだ追いついていません。開発者は、セキュリティレビューの速度を上回るペースでAIコーディングアシスタント、オブザーバビリティツール、自動化エージェントをワークスペースに接続しています。接続された各ツールは、攻撃対象領域を拡大します。Vercelのインシデントは、小さくニッチなAIツールであっても、大規模な侵害の侵入点となる可能性があることを証明しています。

教訓3:すべての環境変数をデフォルトで機密として扱う

Vercelのアーキテクチャでは、「機密」フラグがオプトイン方式でした。デフォルトは暗号化されていないストレージです。これは、チェックボックスをオンにするのを忘れた(または知らなかった)開発者が、APIキーを露出させたままにしたことを意味します。

これはチェックボックスの問題ではなく、設計思想の問題です。

すべきこと

# 設定(非機密)
LOG_LEVEL=info
REGION=us-east-1
FEATURE_FLAG_NEW_UI=true

# 認証情報(常に保存時に暗号化)
SECRET_DATABASE_URL=postgresql://...
SECRET_API_KEY=sk-...
SECRET_WEBHOOK_SIGNING_KEY=whsec_...

教訓4:認証情報のローテーションを自動化する

Vercelが侵害を公表した際、顧客への最初の推奨事項は、すべての非機密環境変数を直ちにローテーションすることでした。数十のサービスと数百のAPIキーを持つチームにとって、これは苦痛な手動プロセスです。

最も迅速に復旧したチームは、すでに自動ローテーションを導入していたチームでした。

すべきこと

API開発者のためのローテーションチェックリスト

侵害が公表された場合(自身のものであるか、依存しているプラットフォームのものであるかに関わらず)、次の順序でローテーションしてください。

  1. データベース認証情報(最も広範囲に影響)
  2. 外部サービス用APIキー(決済プロセッサ、メールプロバイダ、クラウドサービス)
  3. OAuthクライアントシークレット(なりすましを防止)
  4. Webhook署名キー(偽造Webhookペイロードを防止)
  5. デプロイメントトークン(不正なデプロイを防止)
  6. セッション署名キー(潜在的に侵害されたセッションを無効化)

教訓5:CI/CDパイプラインをAPI攻撃対象領域として保護する

CI/CDパイプラインはビルド時に環境変数とシークレットを読み取ります。これはあなたのコードベース、デプロイメントターゲット、そしてしばしば本番環境の認証情報へのアクセス権を持っています。Vercelの侵害では、攻撃者はデプロイメントを管理する内部システムにアクセスしました。あなたのパイプラインもこれと同じです。

すべきこと

# 悪い例:可変タグ
- uses: actions/checkout@v4

# 良い例:特定のコミットにピン留め
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11

ApidogがCI/CDセキュリティにどのように貢献するか

ApidogのCLIツールを使用すると、パイプライン設定に認証情報を埋め込むことなく、CI/CDパイプラインでAPIテストを実行できます。実行時にVaultから認証情報を取得し、テストシナリオを実行し、ビルド完了時に認証情報を破棄できます。これにより、デプロイプロセスを遅らせることなくAPIテストのセキュリティを維持できます。

教訓6:セキュリティがデフォルトで有効なAPIを構築する

Vercelのインシデントは、より広範な原則を浮き彫りにしています。それは、セキュリティ制御はデフォルトで有効になっており、開発者は特定の理由がある場合にのみオプトアウトすべきだということです。Vercelでは、開発者がチェックボックスをオンにする必要があることを知らなかった(または忘れていた)ため、オプトインモデルは機能しませんでした。

この原則を、あなたが構築するAPIに適用してください。

すべきこと

Apidogにおけるセキュリティスキームの設計

Apidogは、OAuth 2.0、JWT、mTLS、APIキー、Hawk認証を含む13の認証方法をネイティブにサポートしています。ApidogでAPIを設計する際、セキュリティスキームをプロジェクトレベルで定義し、すべてのエンドポイントに継承させることができます。これは、作成するすべてのエンドポイントで認証がデフォルトで有効になることを意味します。エンドポイントを公開したい場合は、セキュリティスキームを明示的に削除します。これは意識的なオプトアウトであり、忘れられたオプトインではありません。

Apidogのインターフェースで、カスタムクライアント証明書とCA証明書を使用した相互TLSを含む各認証方法を直接テストできます。これにより、デプロイ前にセキュリティ設定が正しく機能することを確認し、認証設定ミスを早期に発見できます。

教訓7:必要になる前にインシデント対応プレイブックを構築する

現在の検索結果上位のAPIセキュリティガイドには、API認証情報が侵害されたに何をすべきかについて触れているものはありません。Vercelの侵害は、多くのチームがプレイブックを持たないまま対応に追われる事態を招きました。彼らは、どのキーを最初にローテーションすべきか、不正なAPI呼び出しをどのように確認するか、そして影響を受けたユーザーとどのように連絡を取るかを必死に模索しました。

API認証情報インシデント対応プレイブック

フェーズ1:封じ込め(最初の30分)

フェーズ2:評価(最初の4時間)

フェーズ3:修復(最初の24時間)

フェーズ4:連絡(48時間以内)

Apidogでプレイブックをテストする

Apidogのテストシナリオを使用して、認証情報侵害のシナリオをシミュレートできます。次のようなテストケースを作成してください。

これらのテストを、認証情報がローテーションされるたびにCI/CDパイプラインで実行し、セキュリティ制御が期待どおりに機能することを確認してください。

実際の使用例

フィンテックAPIプラットフォーム

ある決済処理スタートアップは、Vercelの開示から3時間以内に340個のAPIキーをローテーションしました。彼らはAWS Secrets Managerに連携した事前に構築されたローテーションスクリプトを持っていました。ApidogでのAPIテストにより、本番トラフィックを切り替える前に、各ローテーションキーが正しく機能することを確認しました。ダウンタイムはゼロでした。

SaaSコラボレーションツール

プロジェクト管理APIを構築するチームは、侵害開示後にVercel上に17個の暗号化されていない環境変数があることを発見しました。彼らはすべての認証情報をHashiCorp Vaultに移行し、ローテーション後の各認証方法を検証するためにApidogテストシナリオを設定し、暗号化されていないシークレットを含むデプロイをブロックするCIチェックを追加しました。

EコマースAPIゲートウェイ

あるEコマースプラットフォームはOAuth許可を監査し、GitHub組織にアクセスできるAIツールが12個あることを発見しました。そのうち8個のツールは6ヶ月以上使用されていませんでした。彼らは未使用の許可をすべて失効させ、四半期ごとの監査サイクルを導入しました。

結論

Vercelの侵害は、特異なものではありませんでした。それは、ほとんどのAPI開発ワークフローに見られるパターン、すなわち平文のシークレット、累積されたOAuth許可、オプトインのセキュリティデフォルトを悪用したものです。ここに示す7つの教訓は理論的なものではありません。これらは、攻撃チェーンがどのように機能したかに対する直接的な対応策です。

主要なポイント:

あなたのAPI認証情報のセキュリティは、ツールチェーンの最も弱いリンクと同程度です。Vercelのインシデントは、そのリンクが半年前につながれて忘れ去られた小さなAIツールである可能性があることを証明しています。

今すぐAPIワークフローのセキュリティを強化しましょう。Apidogをダウンロードして、認証方法のテスト、シークレットマネージャーとの連携、セキュリティ重視のテストシナリオの実行をすべて1つのワークスペースで行いましょう。クレジットカードは不要です。

button

よくある質問

2026年4月のVercelセキュリティインシデントとは何でしたか?

攻撃者がContext.aiというサードパーティ製AIツールのOAuthアプリケーションを侵害し、それを利用してVercel従業員のGoogle Workspaceアカウントを乗っ取り、保存時に暗号化されていなかった顧客の環境変数にアクセスしました。この侵害は2026年4月19日に公表されました。

Vercelの顧客APIキーは漏洩しましたか?

「機密」としてマークされていない顧客の環境変数が漏洩しました。これには、保存時に暗号化されていなかったAPIキー、データベース認証情報、デプロイメントトークンが含まれます。「機密」と明示的にマークされた変数(保存時に暗号化済み)は侵害されませんでした。

Vercelの環境変数が暗号化されているかを確認するにはどうすればよいですか?

Vercelダッシュボードで、プロジェクト設定 > 環境変数に移動してください。「機密」とマークされた変数は保存時に暗号化されています。このフラグのない変数は暗号化されずに保存されており、影響を受けた場合は直ちにローテーションする必要があります。

APIキーを安全に保存する最良の方法は何ですか?

HashiCorp Vault、AWS Secrets Manager、Azure Key Vaultのような専用のシークレットマネージャーを使用してください。これらはデフォルトで保存時にシークレットを暗号化し、自動ローテーションをサポートし、監査ログを提供します。APIキーを平文の環境変数、Gitリポジトリ、または設定ファイルに保存しないでください。

APIキーはどのくらいの頻度でローテーションすべきですか?

APIキーは最低でも90日ごとにローテーションしてください。リスクの高い認証情報(データベースパスワード、決済プロセッサキーなど)については、30日ごとにローテーションしてください。インフラストラクチャまたは依存するプラットフォームに影響を与えるセキュリティインシデントが発生した後は、すべての認証情報を直ちにローテーションしてください。

OAuthサプライチェーン攻撃とは何ですか?

OAuthサプライチェーン攻撃とは、あなたのシステムへのOAuthアクセスを持つサードパーティアプリケーションを標的とするものです。攻撃者は直接あなたを攻撃するのではなく、サードパーティアプリを侵害し、その既存のOAuth許可を利用してあなたのデータにアクセスします。Vercelの侵害は、この攻撃ベクトルの典型的な例です。

ApidogはAPIセキュリティテストにどのように役立ちますか?

Apidogは13種類の認証方法をサポートし、主要なシークレットマネージャー(HashiCorp Vault、Azure Key Vault、AWS Secrets Manager)と統合されており、セキュリティ重視のテストシナリオを実行できます。トークンの有効期限、認証情報のローテーション、レート制限、エラー応答処理などを、CI/CDパイプラインで実行される自動テストスイートでテストできます。

API認証情報侵害後に最初に行うべきことは何ですか?

最もリスクの高い認証情報、すなわちデータベースパスワード、決済プロセッサAPIキー、OAuthクライアントシークレットを直ちにローテーションしてください。次に、すべてのAPIエンドポイントで強化されたロギングを有効にし、漏洩期間のアクセスログを確認し、インシデント対応プレイブックに沿って体系的に作業を進めてください。

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

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