擴充套件執行時安全
擴充套件極大地增強了 Visual Studio Code 的功能。它們也可能帶來風險,例如惡意程式碼執行和資料隱私問題。 Visual Studio Marketplace 提供了多種方式來保護您免受不良擴充套件的侵害。此外,VS Code 還為您提供了幾個關於擴充套件可靠性的指示器。
本文件概述了 VS Code 中擴充套件的執行時許可權以及為保護您免受惡意擴充套件侵害而採取的措施。您將瞭解如何在安裝擴充套件之前就其可靠性做出明智的決定。
關於擴充套件執行時許可權
擴充套件主機負責在 VS Code 中執行擴充套件。擴充套件主機擁有與 VS Code 本身相同的許可權。這意味著 VS Code 可以執行的任何操作,擴充套件也可以透過擴充套件主機執行。
例如,擴充套件可以讀取和寫入您機器上的檔案,發起網路請求,執行外部程序,以及修改工作區設定。
擴充套件釋出者信任
從 VS Code 版本 1.97 開始,當您首次從第三方釋出者安裝擴充套件時,VS Code 會顯示一個對話方塊,提示您確認您信任該擴充套件的釋出者。
當您信任擴充套件包的釋出者或依賴其他擴充套件的擴充套件的釋出者時,您也信任了被依賴擴充套件的釋出者。
之前安裝的擴充套件的釋出者被視為受信任的,並自動新增到受信任釋出者列表中。
您可以使用 **Extensions: Manage Trusted Extensions Publishers** 命令來管理受信任的擴充套件列表。
當您使用 VS Code 命令列安裝擴充套件時,擴充套件的釋出者不會被自動信任。
確定擴充套件的可靠性
在安裝擴充套件之前,您可以採取多種措施來確定它是否可靠。Visual Studio Marketplace 會提供有關擴充套件的資訊,以幫助您做出明智的決定。
-
評分與評論:閱讀其他人對該擴充套件的看法。
-
問答:檢視現有問題以及釋出者的響應程度。如果您有顧慮,還可以與擴充套件的釋出者互動。
-
問題、儲存庫和許可證:檢查釋出者是否提供了這些,以及它們是否符合您的預期支援。
-
已驗證釋出者:將釋出者姓名和域名旁邊的藍色複選標記用作額外的信任訊號。該複選標記表明釋出者已向 Marketplace 證明了其域名所有權。它還表明 Marketplace 已驗證該域名的存在以及釋出者在 Marketplace 上的良好信譽至少六個月。

如果您想強制規定您的組織可以使用哪些擴充套件,請檢視如何 配置 VS Code 中允許的擴充套件。
市場保護
Visual Studio Marketplace 採用多種機制來保護您免受惡意擴充套件的侵害。
-
惡意軟體掃描:Marketplace 會對釋出的每個擴充套件包進行惡意軟體掃描,以確保其安全性。該掃描使用了多種防病毒引擎,針對每個新擴充套件和每個擴充套件更新執行。在掃描透過之前,該擴充套件不會在 Marketplace 上釋出供公眾使用。
-
動態檢測:Marketplace 透過在沙盒環境(乾淨的虛擬機器)中執行擴充套件來驗證擴充套件的執行時行為,從而進行動態檢測。
-
已驗證釋出者:釋出者可以透過證明域名所有權來驗證(藍色複選標記)其身份。這表明釋出者已向 Marketplace 證明了其域名所有權。它還表明 Marketplace 已驗證該域名的存在以及釋出者在 Marketplace 上的良好信譽至少六個月。
-
異常使用監控:Marketplace 會監控擴充套件的下載和使用模式,以檢測異常行為。
-
名稱搶注:Marketplace 會阻止擴充套件作者竊取官方釋出者(如 Microsoft 或 RedHat)和流行擴充套件(如 GitHub Copilot)的名稱。
-
阻止列表:如果舉報並驗證了惡意擴充套件,或者擴充套件依賴項中發現了漏洞,該擴充套件將被從 Marketplace 中移除並新增到阻止列表中。如果該擴充套件已被安裝,VS Code 將自動將其解除安裝。
-
擴充套件簽名驗證:Visual Studio Marketplace 在釋出所有擴充套件時都會對其進行簽名。VS Code 在您安裝擴充套件時會檢查此簽名,以驗證擴充套件包的完整性和來源。
-
金鑰掃描:Marketplace 會自動掃描每個新發布的擴充套件,查詢金鑰(如 API 金鑰或憑據(例如,Azure DevOps PAT 令牌))。如果檢測到任何金鑰,將阻止釋出,以防止潛在的安全風險。VSCE 工具在打包過程中掃描
.env檔案,並在找到金鑰時阻止釋出。
在 Visual Studio Marketplace 的安全與信任部落格文章中瞭解這些措施。
舉報可疑擴充套件
如果您確實看到了看起來可疑的擴充套件,請將該擴充套件舉報給 Marketplace 團隊。Marketplace 團隊將在一個工作日內做出初步響應。
舉報擴充套件
-
在 Visual Studio Marketplace 中開啟擴充套件的頁面。
-
在擴充套件“更多資訊”部分的底部,選擇“舉報問題”連結。
相關資源
-
在 Visual Studio Code 中瞭解如何安裝和管理擴充套件。
-
使用 工作區信任 來決定專案資料夾中的程式碼是否可以在未經明確批准的情況下由 VS Code 和擴充套件執行。這為處理不熟悉的 कोड 提供了額外的安全層。
-
配置 VS Code 中允許的擴充套件,以強制規定您的組織可以使用哪些擴充套件。