この記事のポイント
- 脆弱性
- CVE-2026-119085
- 深刻度
- —
- 対象
- Virtual Engineering Workbench(修正コミット c146486 より前)
- 悪用状況
- 不明
- 推奨対応
- 修正を含む最新版で再デプロイし、それまでは製品バージョンの作成・更新権限を絞ってください。
- 公表日
目次
は米国太平洋標準時の2026年11月2日、日本時間の11月3日に、Virtual Engineering Workbench(VEW)の公開処理で任意のコードを実行されるおそれがあると公表した。-2026-119085の対象は修正 c146486 より前のコードだ。VEWを運用するチームは、実稼働のがどのソースから作られたかを確認し、修正を含む最新の main から再する。再デプロイまで時間がかかる場合は、製品バージョンを作成・更新できる利用者を絞る。AWSは、権限の制限だけでを解消することはできないとしている。
スポンサーリンク
開発環境の利用権限と製品を公開する権限を分けて考える
VEWは、プラットフォーム担当者が開発環境の定義を登録し、開発者がWebポータルから必要な環境をセルフサービスで用意できるの基盤だ。ここでいう「製品」は、利用者が起動できる環境の定義を指す。AWSの告知が示す入口は、その製品のバージョンを扱うだ。認証済みの第三者が、テンプレートエンジンの命令を含む細工済みのCloudFormationテンプレート本文をそのAPIに送信すると、公開処理でコードを実行できるおそれがある。
AWSは不要の攻撃とは説明していない。通常の利用者が既存の製品から環境を起動できることと、テンプレートを含む製品バージョンの作成・更新が許されていることは別だ。影響確認では「ポータルの利用者が何人いるか」より、「誰が製品バージョンを変更でき、どの配備のAPIに到達できるか」を先に調べる。管理画面に操作ボタンが表示されるかだけでは、直接APIを利用する自動化や委任された権限の実態を把握できない。
コードが実行される場所も判断を左右する。実行権限は送信者の通常の権限ではなく、公開処理を担当するLambdaのロールだ。AWSは、そのロールを通じて全のプロジェクトにわたるデータやリソースへアクセスされ得るとしている。実際にどこまで到達できるかは、配備されたロールのポリシーと、アクセス先側で適用される制約による。プロジェクトをUIで分けていても、公開処理の実行ロールが共通なら、その画面上の区分をそのまま被害の上限にはできない。
修正コミットで変わった処理
AWS Labsの修正差分では、AMI製品を扱う公開ハンドラーがテンプレート文字列を通常のJinjaテンプレートとして読み込む方式から、Jinjaの SandboxedEnvironment を使う方式へ変わった。CloudFormationに渡す文書を生成する前に、VEWのバックエンドがその本文をJinjaで解釈する。この前処理が問題の箇所であり、CloudFormationの構文検査で有効な文書かどうかを確かめるだけでは、公開処理で何が評価されたかは分からない。
差分には、危険な属性アクセスを拒否することと、正常な製品名やバージョン名の置換が引き続き機能することを確かめるテストが含まれる。AWSによればこの修正は5月4日にされ、勧告は11月2日に公表された。公表より前に取り込まれた修正なので、告知後に初めて対応を始める構成ばかりとは限らない。逆に、告知を読んだ時点でが新しく見えても、そのコードが既存のLambdaに反映されているとは限らない。公開勧告には実環境での悪用の有無について記載がない。
スポンサーリンク
本番で動いているコードを特定する
まず本番、検証、部門別など、運用しているVEWの配備を洗い出す。配備ごとにAWSアカウント、、スタック、公開処理を担当する関数、ソースのリポジトリ、履歴を対応付ける。最新のリポジトリを開くだけではなく、最後に本番へ反映されたジョブやデプロイの記録から、実際に使われたコミットを取り出す。手動配備なら、配備担当者の記録と、当時の成果物の保存先や変更履歴を照合する。出所が追えない配備は「修正済み」の集計に入れず、再配備と成果物の記録を優先する。
同じ履歴を使っている場合は、確認できた配備元リビジョンを下の例の DEPLOYED_REV に設定し、修正コミットが祖先に含まれるかを調べられる。終了コード0は祖先に含まれる、1は含まれないことを示す。コミットが取得できていない場合は、リポジトリや取得範囲を確認してから判断する。この操作はローカルの履歴を調べるもので、AWSの稼働環境を変更しない。
git merge-base --is-ancestor c146486cec41f5b04fae57e9ce1a7fb40e695615 "$DEPLOYED_REV"
フォークでは、修正をチェリーピックしてコミットIDが変わったり、後続の独自改修で同じファイルが書き換わったりする。祖先判定が0でも修正の取り消しがないか、1でも同等の変更が取り込まれていないかを差分で確認する。公開ハンドラーが実際に使うテンプレート環境、入力を渡す処理、拒否と正常レンダリングを確かめるテストを確認すると、単純な日付やタグ名の比較より判断しやすい。履歴とソースの確認に加えて、そのソースから生成した成果物が対象のスタックへ反映された証拠を残す。
再デプロイまで製品バージョンを書き換えられる主体を減らす
AWSのセキュリティ告知 2026-162-AWSは、再デプロイまでの影響軽減策として、製品バージョンの作成・更新ができる利用者を制限するよう案内している。運用上は、人の管理者アカウントに加えて、CI、、部門単位のグループ、委任先など、製品バージョンの変更に使える主体を配備ごとに確認する。緊急対応で例外を残すなら、対象と期限を記録し、誰が変更を承認するかを明確にする。
制限後は、許可された担当者が必要な更新を継続できることと、一般の利用者がバージョンの作成・更新をAPI経由で拒否されることを、検証環境か承認されたテスト用製品で確認する。通常の環境起動が必要なチームについては、その操作まで止めていないかも確認する。外部からAPIに到達しない配備でも、内部利用者や自動化からの操作権限は残る。ネットワークの公開範囲だけで今回の対応を完了とせず、アプリケーション側のとバックエンドの更新を別々に追う。
また、制限したのが新規登録だけで、既存バージョンの変更が別経路で残っていないかを確かめる。緊急で利用者グループを変えた場合は、権限の反映時刻を記録する。通常の監査で誰がどの製品を更新したか分からない環境では、一時的に承認済みの担当者だけに作業を集約しておくと、変更前後の確認を進めやすい。公開処理のIAMロールを点検する場合は、通常の業務に必要なアクセスと、それ以外の広い許可を分けて評価する。ロールの見直しも修正配備の代わりにはならない。
スポンサーリンク
再配備では公開用Lambdaの実行先まで確認する
AWSは、最新の main ブランチからの再デプロイと、フォークや派生コードへの修正取り込みを推奨している。VEW公式リポジトリの配備手順には、とは別に、Lambda、API Gatewayなどを含むバックエンドの配備段階がある。既存環境を更新する際は、自社の構成と対象アカウントを確かめ、検証環境で変更差分を確認してから、公開処理を含むバックエンドを配備する。フロントエンドのアセットを入れ替えただけでは、問題のテンプレート処理は置き換わらない。
配備時には、使用したGitリビジョン、ビルド成果物、変更対象のスタック、実際の反映結果を一つの変更記録にまとめる。構成によってLambdaのバージョンやエイリアスを使っている場合は、関数の更新履歴だけでなく、公開処理を呼ぶ側がを参照していることも確かめる。あるアカウントの更新成功を別のアカウントへ転記しない。個別の配備記録を残しておくと、後でどの環境がいつ修正済みになったかを説明できる。
動作確認は、検証用の正常な製品バージョンを作成・更新し、意図したテンプレートがレンダリングされ、必要な環境を起動できることを確認する。修正コミットにある拒否のテストは、フォークの継続的な回帰テストにも使える。実稼働環境へ攻撃用テンプレートを送る必要はない。既存テンプレートが新しい環境で失敗する場合は、エラーとなった操作をで切り分け、テンプレートの書き方を改める。正常系の復旧を理由に無制限のテンプレート実行へ戻さないよう、切り戻しの候補にも修正の有無を明記する。
更新と過去の不審な操作の確認を分ける
今回の更新で閉じるのは、公開処理に危険なテンプレートを評価させる経路だ。すでに行われた操作の有無は、更新とは別に確かめる。未修正期間に製品バージョンを変更できた主体、対象の製品とプロジェクト、操作時刻、直後に動いた公開処理を、取得済みの監査記録から対応付ける。通常のリリース申請やCI実行記録と突き合わせると、担当者や時刻が合わない変更を絞り込める。テンプレート原本が記録されている場合は保存して比較し、保存されていなければ本文まで確認したと扱わない。
Lambdaの実行ログや、CloudTrailなどで対象のイベントを記録している環境では、公開処理の実行ロールによる通常と異なるAWS APIの呼び出しも点検する。どの操作が見えるかはイベントの種類、ログ設定、保存期間に依存する。アプリケーションのAPI呼び出しとAWS側の操作を常に同じログから追えるわけではない。まず何が記録されているかを確認し、分からない時間帯やアカウントを残す。異常が見当たらなくても、取得していない記録について無事だったとは判断できない。
調査の対象範囲は、問題の製品を作成した利用者が普段アクセスできる範囲だけで決めない。公開処理に使われたIAMロールを基点に、他のプロジェクトや共有資産へ到達できたかを確認する。例えば参照先ごとにログの管理部署が違う場合は、ロールと時刻を伝え、同じ時間帯の操作を確認できるようにする。不審な操作があれば、該当する配備や証跡を保全し、実際にアクセスされたリソースと必要な封じ込めを判断する。ここで挙げた点検は、AWSが個別の侵害やログ指標を確認したという意味ではない。
完了の判定に残す記録
運用チームの完了条件は、対象配備のすべてで修正版の公開処理が使われていること、正規の製品公開と環境起動が動くこと、変更権限が意図した主体に限定されていることの三つに分ける。過去の操作の調査が続く場合は、更新済みの記録とは別に、調査済みの期間と未確認の範囲を残す。これにより、パッチ反映を遅らせず、テナント横断の可能性を調べる作業も抜け落ちにくくなる。
出典・一次情報
本記事は以下の公開情報をもとに作成しています。最新の状況は各リンク先で確認してください。
-
公式アドバイザリ
-
公式アドバイザリ













