如何禁用您不信任的特定 vscode 扩展程序的互联网访问
How to disable internet access for a particular vscode extension you don't trust
VS Code 随着其疯狂的扩展而变得越来越棒,但随着所有这些灵活性和令人敬畏的是安全和隐私风险。
因此我的问题是是否可以完全阻止特定扩展程序访问互联网。
答案似乎是否,您不能阻止扩展网络访问:
VSCode Issue #52116: Extension Permissions, Security Sandboxing & Update Management Proposal 保持开放。最近有评论者 activity,但我没有看到 VSCode 团队采取任何行动的迹象。
问题 How to fully disable network request from vs code(telemetry, updates, etc.) 报告说设置明显的开关不会阻止 VSCode 发出网络请求。
我做了自己的简单扩展,使用 http 模块发出外部网络请求并且它有效。
我尝试将 http.proxy
设置为 settings.json
中的虚假值,虽然这有效地使 VSCode 本身至少使一个网络操作失败,我的测试扩展没有受到影响。
与此相关,人们可能会问是否有任何系统可以检测或防止恶意扩展行为。答案似乎再次是否定的:
问题Security and Privacy of VSCode extensions及其答案基本上可以归结为"run your own firewall"。
问题 How is VS Code Extension Security Handled? 及其答案归结为 "Microsoft does nothing to ensure extensions are not malicious"。
我个人已将 one extension 上传到 Marketplace。我可以报告说,出现在那里大约需要五分钟;时间不够长,任何人都无法对其进行审查。此外,我在创建 github 存储库之前无意中上传了它,但这并没有造成任何问题,这表明该服务不会进行任何检查以确保 github 上的内容与扩展中的内容相匹配.
总的来说,我觉得这是一个可怕的情况。我做了两件事来保护自己:
我尝试坚持使用下载量大且最近未更新的扩展。然后我禁用了自动更新。这样,我 运行 的所有东西在我使用之前都有机会暴露为恶意的。
扩展作为 VSIX 文件分发,它们只是具有不同文件名后缀的 ZIP 文件。如果我有任何怀疑,我会先将其下载为文件并四处寻找。特别检查 package.json
脚本和 Typescript 或 Javascript 源代码(如果有的话)。这当然远非万无一失,但确实如此。
VS Code 随着其疯狂的扩展而变得越来越棒,但随着所有这些灵活性和令人敬畏的是安全和隐私风险。
因此我的问题是是否可以完全阻止特定扩展程序访问互联网。
答案似乎是否,您不能阻止扩展网络访问:
VSCode Issue #52116: Extension Permissions, Security Sandboxing & Update Management Proposal 保持开放。最近有评论者 activity,但我没有看到 VSCode 团队采取任何行动的迹象。
问题 How to fully disable network request from vs code(telemetry, updates, etc.) 报告说设置明显的开关不会阻止 VSCode 发出网络请求。
我做了自己的简单扩展,使用 http 模块发出外部网络请求并且它有效。
我尝试将
http.proxy
设置为settings.json
中的虚假值,虽然这有效地使 VSCode 本身至少使一个网络操作失败,我的测试扩展没有受到影响。
与此相关,人们可能会问是否有任何系统可以检测或防止恶意扩展行为。答案似乎再次是否定的:
问题Security and Privacy of VSCode extensions及其答案基本上可以归结为"run your own firewall"。
问题 How is VS Code Extension Security Handled? 及其答案归结为 "Microsoft does nothing to ensure extensions are not malicious"。
我个人已将 one extension 上传到 Marketplace。我可以报告说,出现在那里大约需要五分钟;时间不够长,任何人都无法对其进行审查。此外,我在创建 github 存储库之前无意中上传了它,但这并没有造成任何问题,这表明该服务不会进行任何检查以确保 github 上的内容与扩展中的内容相匹配.
总的来说,我觉得这是一个可怕的情况。我做了两件事来保护自己:
我尝试坚持使用下载量大且最近未更新的扩展。然后我禁用了自动更新。这样,我 运行 的所有东西在我使用之前都有机会暴露为恶意的。
扩展作为 VSIX 文件分发,它们只是具有不同文件名后缀的 ZIP 文件。如果我有任何怀疑,我会先将其下载为文件并四处寻找。特别检查
package.json
脚本和 Typescript 或 Javascript 源代码(如果有的话)。这当然远非万无一失,但确实如此。