Visual Studio Codeにコード実行の脆弱性、修正版あり
Visual Studio Codeの1.145.3より前の版に、利用者の権限で端末上のコードを実行されるおそれのある脆弱性が公表されました。開発者のPCの版を確認して1.145.3へ更新し、身に覚えのないMCPサーバーには接続しないでください。
急ぎ度: 早めに
CVSS v3は9.6で修正版の1.145.3も出ていますが、Microsoftは悪用を確認しておらず、攻撃には利用者の操作が要るため、至急ではなく早めの更新で足ります。
関係があるか
開発者や運用担当者がVisual Studio Codeを使っている組織が対象です。AI連携でMCPサーバーに接続している端末は、とくに優先して確認してください。
| 製品 | 影響を受ける版 | 修正版 |
|---|---|---|
| Visual Studio Code | 1.0.0以上、1.145.3未満 | 1.145.3 |
確かめ方
- 1各端末で
code --versionを実行し、1行目の版が1.145.3以上か確認します。 - 2GUIからは「バージョン情報」で版を確認できます。
- 3自動更新を止めている端末や、版を固定して配っている開発環境がないか、情シスの管理台帳で洗い出します。
- 4MCPサーバーへ接続して使っている開発者がどのくらいいるか、部門ごとに聞き取ります。
何が起きたか
Visual Studio Codeにコード注入の脆弱性(CWE-94)が見つかり、2026年11月10日にMicrosoftが修正版の1.145.3とともに公表しました。悪用されると、Visual Studio Codeを使っている人の権限で、その端末上のコードを実行されるおそれがあります。
Microsoftは公表時点で、悪用も事前の公開も確認されていないとしています。CVSS v3は9.6のcriticalです。
内容は、コードを生成する処理の制御が不適切なことによるものです。
攻撃の流れ
-
1
悪意あるMCPサーバー
攻撃者が、自分で管理するリモートのMCPサーバーを用意します。
-
2
接続させる
利用者を誘導し、Visual Studio Codeをそのサーバーへ接続させます。
-
3
通知のリンク
接続後に表示される通知の、細工されたリンクを利用者にクリックさせます。
-
4
コード実行
利用者の権限で、攻撃者のコードが端末上で実行されます。
どう悪用されるか
攻撃者に認証は要りません。ただし、攻撃者が管理するリモートのMCPサーバーに利用者がVisual Studio Codeを接続し、さらに通知内の細工されたリンクをクリックする必要があります。ネットワーク越しに攻撃でき、利用者の操作が前提になる点が、CVSSの評価にも表れています。
悪用に成功すると、利用者の権限でコードを実行されます。機密性・完全性・可用性への影響はいずれも高く、脆弱性のある部品を超えて、端末上のほかの資源にも影響が及ぶ評価です。開発者の端末は、ソースコードや社内リポジトリ、クラウドの認証情報に近い場所にあります。実行されるコードが何に触れられるかは、その人の権限と端末の状態しだいです。
今すぐやること
-
1
版を確認する
開発者のPCと共用の開発端末で、Visual Studio Codeの版を確認します。1.145.3未満が更新の対象です。
code --version -
2
修正版の1.145.3以上に更新する
自動更新が有効な端末は、更新が適用され、再起動後に新しい版になっているかを確認します。自動更新を止めている環境や版を固定している環境は、配布イメージや管理ツールで1.145.3以上へ更新します。
-
3
MCPサーバーの接続先を棚卸しする
開発者が接続しているMCPサーバーを洗い出し、社内で管理していない、または出どころが不明なものがあれば接続を外します。
-
4
利用者に注意を伝える
身に覚えのないMCPサーバーへ接続しないこと、通知内のリンクを不用意にクリックしないことを、更新の案内と一緒に周知します。
すぐ更新できないとき
すぐに更新できない端末では、つなぎとして、出どころの確認できないMCPサーバーへの接続を避け、通知に含まれるリンクをクリックしないよう利用者に徹底します。これは悪用の条件を避けるための運用で、脆弱性そのものをなくすものではありません。修正版への更新までの期間を短くしてください。
背景
Visual Studio Codeは、多くの開発者がソースコードの編集からデバッグ、Git操作、リモート環境への接続までを一手に任せているエディターです。そのため、開発者の端末には社内リポジトリやクラウドの認証情報へ近い権限が集まりがちで、エディター上でコードが実行されると、影響はエディターの中にとどまりません。
今回の脆弱性で入口になるのはMCPサーバーです。MCPは、AIエージェントなどが外部のツールやデータにつながるための仕組みで、Visual Studio Codeからも接続できます。接続先は利用者や開発チームが選ぶので、情シスが一覧を持っていないことが多く、どの端末がどのサーバーにつながっているかを組織として把握しにくい点が、この脆弱性の厄介なところです。
よくある質問
Q.自動更新が有効なら、対応は不要ですか。
まだ分かっていないこと
- 脆弱性が生じるVisual Studio Code内の具体的な機能や処理の詳細は、公表されていません。
- Visual Studio Codeを土台にした派生製品が影響を受けるかどうかは、公表されていません。
この記事は、取得元の公開情報をもとに、人が監修しながらAIを活用して執筆しています。執筆と監修は佐々木 航が担い、公開したあとも人が内容を確認しています。誤りに気づいたときは直し、記事の末尾に訂正の行を残します。対応を決める前に、下の原文と参照先も確認してください。
影響パッケージ
| パッケージ | 影響を受ける版 → 修正版 | |
|---|---|---|
| MicrosoftVisual Studio Code |
1.0.0 以上 1.145.3 未満→ 1.145.3 |
1.145.3 |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
Improper control of generation of code ('code injection') in Visual Studio Code allows an unauthorized attacker to execute code over a network.
出典: Microsoft Security Response Center Blog NVD