这篇由两部分组成的博客系列详细介绍了在 VSCode 扩展程序(SARIF 查看器和实时预览)以及 VSCode 本身中发现的三个漏洞(CVE-2022-41042,获得 7,500 美元奖励)。核心问题在于 VSCode Webviews——沙盒化的 UI 面板——以及攻击者如何可能绕过其安全限制来危及用户系统。
扩展程序中的漏洞允许进行任意本地文件泄露,可能包括 SSH 密钥等敏感数据。利用方式包括 HTML/JavaScript 注入(通过 SARIF 查看器中数据的不安全渲染)、实时预览的本地 HTTP 服务器中的路径遍历,以及 DNS 重绑定和 `srcdoc` iframe 等技术来绕过内容安全策略 (CSP) 限制。
该研究强调了安全的 Webview 配置的重要性:严格的 CSP、有限的 `localResourceRoots` 以及对 `postMessage` 通信的谨慎处理。即使配置良好的 Webviews 也并非万无一失,后续博客文章将详细介绍一个允许沙盒逃逸的 VSCode 错误。作者为构建 VSCode 扩展程序的开发者提供了实用的建议,以防止类似的漏洞,强调纵深防御原则。
## 漏洞披露与潜水保险公司的回应
作为一名潜水教练和平台工程师,我在科科斯岛旅行期间发现了一家大型潜水保险公司会员门户网站的一个严重安全漏洞。该门户网站分配了连续的用户ID,并使用静态的默认密码——一种容易被利用来访问敏感个人数据的组合,包括未成年人的个人资料。
我于2025年4月负责任地披露了该漏洞,遵守了标准的30天禁运期,并联系了保险公司和马耳他的国家网络安全机构(CSIRT Malta),因为该公司总部设在那里。虽然保险公司解决了技术问题,但他们的反应却带有防御性,试图用法律威胁和限制性保密协议来压制我。他们甚至暗示*我*报告漏洞是在犯罪。
尽管漏洞已被修复,但没有确认受影响的用户已被通知——这可能违反了GDPR。这一事件凸显了一种令人担忧的模式:组织优先考虑声誉管理而非数据安全,并惩罚研究人员而不是促进合作。这种“寒蝉效应”会阻碍负责任的披露,并最终损害用户。这段经历强调了需要明确的漏洞披露政策、对研究人员的感谢,以及在数据泄露时对透明度和用户通知的承诺。
八年未用后,一位用户重新访问Facebook,对其变化感到震惊。信息流不再以朋友或关注的页面为主,而是充斥着人工智能生成的年轻女性“诱惑照”以及低质量、旨在吸引互动的内容——通常带有暗示性或关系主题。
该用户注意到难以区分真实帖子和人工智能生成的帖子,并指出明显的缺陷,如无意义的文字和标志。他们质疑这种体验是否仅限于他们的算法,或者是一个普遍问题,尤其对于不活跃的用户。
对潜在的剥削性内容盛行感到不安,包括看起来像青少年的图像,该用户迅速注销,认为Facebook已经沦为一个令人不安的景象,充斥着算法驱动、低质量的内容,旨在获取最基本的互动。他们对平台的现状及其对用户的影响表示担忧。