速報

プレステージで最大約550万件の情報持ち出し|ロードサービスは代替運用で継続

CATEGORY

AWS API MCP ServerにOAuth検証不備|1.6.0更新とaudience設定を確認

※本ページのリンクにはプロモーションが含まれています。

別アプリ向けOAuthトークンをMCPゲートウェイで拒否し正しいトークンだけAWS APIへ通す検証の概念イラスト

この記事のポイント

脆弱性
CVE-2026-115413
深刻度

HIGH7.3

対象
awslabs.aws-api-mcp-server 1.3.0以上1.6.0未満(streamable-http+OAuth構成)
悪用状況
不明
推奨対応
1.6.0以降へ更新し、AUTH_AUDIENCEまたはAUTH_CLIENT_IDを設定します。別アプリ向けトークンの拒否、IAM最小権限、公開期間中の利用履歴を確認してください。
公表日

目次

は2026年10月27日、のAWS Serverにおけるトークン検証不備、-2026-115413を公表しました。影響するのはバージョン1.3.0以上1.6.0未満を、streamable-httpトランスポートとOAuthの組み合わせで動かしている構成です。既定のstdioだけを使うローカル構成や、別の認証方式は、このの影響条件には含まれません。

運用担当者は、まず稼働版とトランスポート、AUTH_TYPEを確認し、該当する場合は1.6.0以降へ更新します。更新後は、一般的な「署名が正しいトークン」を受け入れる設定で終わらせず、このMCPサーバー向けのaudまたはクライアントIDを検証する必要があります。本稿では、公式勧告の確認済み事実と、導入環境で行う点検・拒否試験の提案を分けて整理します。

スポンサーリンク

別アプリ向けの正規トークンが通る問題

AWSのセキュリティ告知によると、影響版はOAuthトークンの署名、発行者、有効期限を検証する一方、そのトークンがどのアプリケーション向けに発行されたかを示すクレームを検証していませんでした。同じIDプロバイダーの同じに別のアプリがあると、その別アプリ向けに正規発行されたトークンをAWS API MCP Serverが受け入れる可能性があります。

例として公式のは、同じAmazon Cognitoユーザープール内の別アプリクライアントへ発行されたトークンを挙げています。条件を満たすトークンを持つローカルの呼び出し元はMCPサーバーへ到達し、ホストに設定されたの範囲でAWS APIを呼び出せる可能性があります。影響の上限はホスト側の権限に左右されます。MCP側の認証不備が、IAMの許可を超えてAWS全体の権限を新たに作るという意味ではありません。

GitHub Security Advisoryは深刻度をHigh、 v4.0を7.3と評価しています。攻撃経路はネットワーク全体へ無条件に開かれた認証不要攻撃ではなく、同じテナントの別アプリ向けトークンを保有し、対象サーバーへ到達できることなどの前提があります。AWSの公表資料は実環境での悪用確認を記載していないため、本稿では悪用状況を「不明」と扱います。

影響確認は4条件を一緒に見る

製品名やCVE番号だけで対象を決めず、次の4点を同じ稼働単位で確認します。開発端末の設定ファイルだけでなく、コンテナ定義、systemd、の、環境変数を注入する設定、フォーク版の依存固定も確認対象です。

  • awslabs.aws-api-mcp-serverが1.3.0以上1.6.0未満か
  • AWS_API_MCP_TRANSPORT=streamable-httpか
  • AUTH_TYPE=oauthでOAuth認証を有効にしているか
  • そのへ、想定外の利用者やワークロードから到達できるか

公式READMEではHTTPモードの既定ホストを127.0.0.1、既定ポートを8000とし、可能ならlocalhostへバインドし、で接続元を制限するよう案内しています。ただし、localhost限定でも同一ホスト上の別プロセスから到達できるため、今回のトークン検証を省略できる根拠にはなりません。やコンテナのポート公開がある場合は、アプリ内のbind値だけで外部到達性を判断しないことも重要です。

スポンサーリンク

1.6.0へ更新し受け入れるアプリを明示する

はawslabs.aws-api-mcp-server 1.6.0です。AWSは最新版への更新に加え、フォークや派生実装にも修正を取り込むよう求めています。を更新しただけで、や常駐プロセスが古いままにならないよう、稼働中プロセスが参照する版を再確認します。タグlatestだけを根拠にせず、起動ログ、パッケージ一覧、イメージのダイジェストなど、実際の配布方式に合う証拠を残します。

1.6.0では、OAuth利用時に期待するaudienceまたはclient IDの指定が必要です。にaudクレームがあるIDプロバイダーではAUTH_AUDIENCEを指定します。Amazon Cognitoのようにアクセストークンへaudがなく、アプリがclient_idで表される場合はAUTH_CLIENT_IDを使います。両方を指定した場合は両クレームが検証されます。

AWS_API_MCP_TRANSPORT=streamable-http
AUTH_TYPE=oauth
AUTH_ISSUER=https://idp.example.com/
AUTH_JWKS_URI=https://idp.example.com/.well-known/jwks.json
AUTH_AUDIENCE=aws-api-mcp

この例の値は構成を示す仮のものです。IDプロバイダーの管理画面で対象MCPサーバーに対応するリソース/アプリを確認し、実際に発行されたトークンのクレーム設計と一致させます。表示名や推測した文字列を設定すると、正規クライアントまで拒否するか、意図しないトークンを許すおそれがあります。秘密鍵や実トークンを記事、チケット、共有ログへ貼らず、ヘッダーとペイロードの必要なクレームだけを安全な環境で確認します。

更新後は「成功」より「拒否」を試す

疎通確認では正規クライアントが接続できることだけでなく、同じ発行者が別アプリ向けに発行したトークンが拒否されることを確認します。署名が壊れたトークンだけを試しても、今回の修正点であるアプリケーション境界は検証できません。検証用テナントや専用クライアントを使い、本番トークンを持ち出さない手順にします。

  1. 正しい発行者、正しいaudience/client ID、有効期限内のトークンで必要最小限のMCP操作が成功する
  2. 同じ発行者でも別アプリ向けのトークンは認証段階で拒否され、AWS APIが呼ばれない
  3. 期限切れ、発行者違い、署名不正のトークンも拒否される
  4. 拒否時のログにトークン本文や機密クレームを残さず、時刻と判定理由を追跡できる

ここで示した拒否試験は本サイトの提案であり、筆者が読者の環境で実測した結果ではありません。HTTPステータスだけで判定せず、対象時刻にCloudTrail等で対応するAWS API呼び出しが発生していないことも確認します。CloudTrailはサービスや操作により記録対象、管理イベント/データイベント、追加設定が異なるため、利用するAWS APIごとの記録条件を先に確認してください。

スポンサーリンク

IAMを狭め認証失敗時の影響を限定する

今回の脆弱性で実行できる操作は、MCPサーバーのホストに与えたAWS認証情報の権限に制約されます。したがって更新と並行して、専用のIAMロールまたはプロファイルを使っているか、不要な書き込み権限がないか、対象やリソースを条件で絞れるかを点検します。公式READMEのREAD_OPERATIONS_ONLY=trueは書き込み操作を抑える補助策ですが、README自身がIAM権限を主要な制御と説明しています。このフラグだけで過大なIAMポリシーを補わないでください。

特に、が自然言語からAWS 操作を選ぶ構成では、「認証できた利用者」と「その利用者に実行させてよいAWS操作」を別々に設計します。MCPサーバーのOAuth検証は前者、IAMは後者です。両者のどちらか一方だけを強くしても、別アプリの利用者が過大なホスト権限を使える構成や、正規利用者が不要な更新操作を実行できる構成は残ります。

更新前に利用されていた環境の確認

該当版をHTTP+OAuthで公開していた場合は、更新だけで過去の利用を消去せず、公開期間、接続元、認証失敗・成功、MCP操作、対応するAWS API履歴を時系列で照合します。IDプロバイダー側では、対象MCPアプリだけでなく同じテナントに存在する別アプリのクライアント、トークン発行主体、無効化済みアプリも確認します。別アプリ向けトークンを持つこと自体は侵害の証拠ではないため、MCPエンドポイントへの接続とAWS API実行の対応を取って判断します。

AWSやGitHubの公式勧告は、侵害痕跡や特定のを提示していません。未知の悪用を断定したり、すべての認証情報を無条件に交換したりするのではなく、ログで不審な呼び出しが確認された場合に、使用されたIAM認証情報、影響したリソース、派生した資格情報を特定して失効・交換します。必要なログが保存されていなければ、その欠落を調査上の制約として記録し、影響し得る権限の広さから対応を決めます。

一時回避はstdioへの切り替え

すぐに更新できない場合、AWSは既定のstdioトランスポートへ切り替える方法をとして示しています。HTTPエンドポイントを止め、同じ端末上のクライアントから標準入出力で起動する構成へ戻すことで、今回の「streamable HTTP+OAuth」という成立条件から外れます。ただし、業務上リモート接続が必要な構成では単純に置き換えられません。その場合は影響版の公開を続けるのではなく、更新までサービスを止めるか、到達元を厳しく制限する判断が必要です。

なお、既報のAWS MCP ServerのPythonサンドボックス修正は、AWSがホストするマネージドサービスのrun_scriptを扱い、顧客側の更新は不要でした。今回のCVE-2026-115413は、自ら導入するオープンソースのAWS API MCP Serverが対象で、1.6.0への更新とOAuthクレーム設定が必要です。名称が似ていても、対象と作業を混同しないでください。

対応の優先順位

最初に稼働構成を特定し、該当するHTTP+OAuth環境を1.6.0以降へ更新します。次にAUTH_AUDIENCEまたはAUTH_CLIENT_IDを実際のトークンクレームへ合わせ、別アプリ向けトークンの拒否試験を行います。最後にIAM権限と公開期間中の利用履歴を点検します。更新、アプリ境界の検証、AWS権限の最小化を別作業として管理することが、再発時にも判断しやすい運用につながります。

出典・一次情報

本記事は以下の公開情報をもとに作成しています。最新の状況は各リンク先で確認してください。

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

あわせて確認したい対策・解説

ほかの脆弱性

※悪用の「未確認」は、最終確認時点で悪用の報告が見つかっていないことを示します。悪用されていないことを保証するものではありません。「不明」は公表情報に悪用状況の記載がないものです。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

回避策

修正版をすぐに適用できない場合に、脆弱性を悪用される条件をなくすための一時的な対処。機能の無効化や設定の変更など。

詳しく見る

IOC

攻撃や侵入の痕跡を示す情報。不正な通信先のIPアドレスやドメイン、マルウェアのファイルのハッシュ値など。

詳しく見る

CLI

コマンドラインインターフェース。文字のコマンドを入力してコンピューターやツールを操作する方法、またはそのためのツール。

詳しく見る

AIエージェント

目標を与えると、計画を立て、ツールを使いながら作業を自律的に進めるAIの仕組み。

詳しく見る

リージョン

クラウドのデータセンターが置かれている地域の単位。東京・大阪など、どこでサービスを動かしデータを保存するかを選ぶ。

詳しく見る

アクセストークン

サービスやAPIを利用する権限を表す文字列。ログインや認可のあとに発行され、リクエストに付けて送る。

詳しく見る

コンテナイメージ

アプリケーションと、動かすのに必要なOSの部品やライブラリ、設定をひとまとめにしたもの。コンテナを起動する元になる。

詳しく見る

パッケージ

ソフトウェアを配布・インストールしやすいように、プログラムと必要な情報をひとまとめにしたもの。npmやComposerなどで管理する。

詳しく見る

パッチ

ソフトウェアの不具合や脆弱性を修正するための更新プログラム。適用することで既知の問題を解消する。

詳しく見る

リバースプロキシ

Webサーバーの手前に置き、外部からのリクエストを受け付けて内部のサーバーに中継するサーバー。

詳しく見る

ファイアウォール

ネットワークの境界で通信を監視し、決められたルールにもとづいて許可・遮断する仕組み。

詳しく見る

エンドポイント

APIでリクエストを送る先のURL。また、ネットワークにつながるパソコンやスマートフォンなどの端末のことも指す。

詳しく見る

HTTP

ブラウザとWebサーバーがやりとりするための決まりごと(プロトコル)。暗号化したものはHTTPSと呼ぶ。

詳しく見る

デプロイ

作成・修正したプログラムやWebサイトを、本番のサーバーに配置して使える状態にすること。

詳しく見る

シークレット

パスワードやAPIキー、秘密鍵など、他人に知られてはいけない値。コードに書かず専用の仕組みで管理する。

詳しく見る

CI/CD

コードの変更をきっかけに、テストやビルド、本番への反映までを自動で行う開発の仕組み。

詳しく見る

CVSS

脆弱性の深刻度を0.0〜10.0の数値で評価する共通の基準。数値が大きいほど深刻度が高い。

詳しく見る

IAM

ID・アクセス管理。誰が、どの資源に、どんな操作ができるかを管理する仕組み。AWSなどクラウドの権限管理を指すことも多い。

詳しく見る

認証情報

本人であることを証明するための情報。IDとパスワード、APIキー、アクセストークン、秘密鍵など。

詳しく見る

GHSA

GitHubで公開される脆弱性の情報(GitHub Security Advisories)と、その識別番号。オープンソースの脆弱性の確認に使う。

詳しく見る

テナント

クラウドやSaaSで、利用する組織ごとに分けられた区画。一つの仕組みを複数の組織で共有する形をマルチテナントと呼ぶ。

詳しく見る

脆弱性

ソフトウェアや設定の不備のうち、攻撃者に悪用されると情報漏えいや不正操作などにつながる弱点。

詳しく見る

認証

アクセスしてきた相手が本人であることを確かめる仕組み。パスワードや生体情報、電子証明書などを使う。

詳しく見る

CVE

公開された脆弱性に付けられる世界共通の識別番号。「CVE-2026-12345」のように年と連番で表す。

詳しく見る

OAuth

パスワードを渡さずに、外部のアプリにアカウントの一部の操作を許可するための仕組み(認可の標準)。

詳しく見る

MCP

AIアプリケーションと外部のツールやデータをつなぐための共通の仕組み(プロトコル)。Anthropicが公開した。

詳しく見る

API

ソフトウェアやサービスの機能を、ほかのプログラムから決まった方法で呼び出して使えるようにした窓口。

詳しく見る

オープンソース

ソースコードが公開され、決められたライセンスのもとで誰でも利用・改変・再配布できるソフトウェア。

詳しく見る

AWS

Amazonが提供するクラウドサービス(Amazon Web Services)。仮想サーバーやストレージ、データベースなど多くのサービスがある。

詳しく見る