🚀 VS Code で で入手しましょう!

拡張機能のランタイムセキュリティ

拡張機能は、Visual Studio Code の機能を大幅に強化します。しかし、悪意のあるコードの実行やデータプライバシーに関する懸念など、リスクも伴います。Visual Studio Marketplace には、悪質な拡張機能からユーザーを保護するための多くの方法があります。さらに、VS Code は、拡張機能の信頼性に関するいくつかの指標を提供しています。

このドキュメントでは、VS Code における拡張機能のランタイムアクセス許可と、悪意のある拡張機能からユーザーを保護するために講じられている対策について概説します。拡張機能をインストールする前に、その信頼性について十分な情報に基づいて判断する方法を学びます。

拡張機能のランタイムアクセス許可について

拡張機能ホストは、VS Code で拡張機能を実行する役割を担っています。拡張機能ホストは、VS Code 自体と同じアクセス許可を持っています。これは、VS Code が実行できるすべてのアクションを、拡張機能も拡張機能ホストを通じて実行できることを意味します。

たとえば、拡張機能は、ユーザーのマシン上のファイルの読み書き、ネットワークリクエストの実行、外部プロセスの実行、ワークスペース設定の変更などを行うことができます。

拡張機能の発行元の信頼

VS Code リリース 1.97 以降では、サードパーティの発行元から拡張機能を初めてインストールするときに、VS Code はその拡張機能の発行元を信頼することを確認するダイアログを表示します。

拡張機能パックまたは他の拡張機能に依存関係がある拡張機能の発行元を信頼する場合、依存関係のある拡張機能の発行元も信頼することになります。

以前にインストールした拡張機能の発行元は信頼済みと見なされ、信頼済み発行元リストに自動的に追加されます。

信頼済み拡張機能発行元リストを管理するには、拡張機能: 信頼済み拡張機能発行元の管理 コマンドを使用できます。

重要

VS Code コマンドラインを使用して拡張機能をインストールする場合、拡張機能の発行元は自動的に信頼されません。

拡張機能の信頼性を判断する

拡張機能をインストールする前に、その信頼性を判断するためにさまざまな手順を実行できます。Visual Studio Marketplace では、十分な情報に基づいて判断できるように、拡張機能に関する情報を提供しています。

  • 評価とレビュー: 他のユーザーがその拡張機能をどう思っているかを確認します。

  • Q & A: 既存の質問と発行元の応答レベルを確認します。懸念がある場合は、拡張機能の発行元に問い合わせることもできます。

  • 問題、リポジトリ、およびライセンス: 発行元がこれらを提供しているかどうか、および期待するサポートがあるかどうかを確認します。

  • 検証済み発行元: 発行元の名前とドメイン名の横にある青いチェックマークを、信頼の追加のシグナルとして使用します。このチェックマークは、発行元が Marketplace に対しドメイン名の所有権を証明したことを示します。また、Marketplace がドメイン名の存在と、Marketplace における発行元の良好な状態の両方を少なくとも 6 か月間検証済みであることも示します。

    Verified publisher

ヒント

組織で使用できる拡張機能を強制したい場合は、VS Code で許可された拡張機能を構成する方法を確認してください。

マーケットプレイスの保護

Visual Studio Marketplace は、悪意のある拡張機能からユーザーを保護するために、いくつかのメカニズムを採用しています。

  • マルウェアスキャン: Marketplace は、公開される各拡張機能パッケージに対してマルウェアスキャンを実行し、安全性を確保します。いくつかのウイルス対策エンジンを使用するこのスキャンは、新しい拡張機能ごと、および拡張機能の更新ごとに実行されます。スキャンがすべてクリアになるまで、拡張機能は Marketplace で一般公開されません。

  • 動的検出: Marketplace は、拡張機能のランタイム動作をサンドボックス環境 (クリーンルーム VM) で実行して検証することにより、動的検出を行います。

  • 検証済み発行元: 発行元は、ドメインの所有権を証明することにより、身元を検証 (青いチェックマーク) できます。これは、発行元が Marketplace に対しドメイン名の所有権を証明したことを示します。また、Marketplace がドメインの存在と、Marketplace における発行元の良好な状態の両方を少なくとも 6 か月間検証済みであることも示します。

  • 異常な使用状況の監視: Marketplace は、異常な動作を検出するために、拡張機能のダウンロードと使用パターンを監視します。

  • ネームスクワッティング: Marketplace は、拡張機能の作成者が、Microsoft や RedHat などの公式発行元、および GitHub Copilot などの人気のある拡張機能の名前を盗用することを防ぎます。

  • ブロックリスト: 悪意のある拡張機能が報告されて検証された場合、または拡張機能の依存関係に脆弱性が見つかった場合、その拡張機能は Marketplace から削除され、ブロックリストに追加されます。拡張機能がインストールされている場合、VS Code によって自動的にアンインストールされます。

  • 拡張機能の署名検証: Visual Studio Marketplace は、すべての拡張機能を公開時に署名します。VS Code は、拡張機能をインストールするときにこの署名をチェックし、拡張機能パッケージの整合性とソースを検証します。

疑わしい拡張機能を報告する

疑わしいと思われる拡張機能を見つけた場合は、Marketplace チームにその拡張機能を報告してください。Marketplace チームは、1 営業日以内に最初の対応を提供します。

拡張機能を報告するには

  1. Visual Studio Marketplace で拡張機能のページを開きます。

  2. 拡張機能の [詳細情報] セクションの下部にある [懸念事項を報告] リンクを選択します。

  • Visual Studio Code で拡張機能をインストールおよび管理する方法について説明します。

  • ワークスペースの信頼を使用して、プロジェクトフォルダー内のコードを VS Code および拡張機能が明示的な承認なしに実行できるかどうかを決定します。これにより、不慣れなコードを扱う際のセキュリティレイヤーが追加されます。

  • VS Code で許可された拡張機能を構成することで、組織で使用できる拡張機能を強制できます。