[论文解读] EmPoWeb: Empowering Web Applications with Browser Extensions
本文对 Chrome、Firefox 和 Opera 浏览器扩展的通信接口进行了大规模静态分析,发现 197 个扩展可被恶意网页应用利用,以绕过同源策略,访问敏感用户数据(如 Cookie、浏览历史记录、书签)并下载任意文件。研究揭示了消息传递机制中的关键安全缺陷,并提出了改进的审查流程与架构变更以缓解这些威胁。
Browser extensions are third party programs, tightly integrated to browsers, where they execute with elevated privileges in order to provide users with additional functionalities. Unlike web applications, extensions are not subject to the Same Origin Policy (SOP) and therefore can read and write user data on any web application. They also have access to sensitive user information including browsing history, bookmarks, cookies and list of installed extensions. Extensions have a permanent storage in which they can store data and can trigger the download of arbitrary files on the user's device. For security reasons, browser extensions and web applications are executed in separate contexts. Nonetheless, in all major browsers, extensions and web applications can interact by exchanging messages. Through these communication channels, a web application can exploit extension privileged capabilities and thereby access and exfiltrate sensitive user information. In this work, we analyzed the communication interfaces exposed to web applications by Chrome, Firefox and Opera browser extensions. As a result, we identified many extensions that web applications can exploit to access privileged capabilities. Through extensions' APIS, web applications can bypass SOP, access user cookies, browsing history, bookmarks, list of installed extensions, extensions storage, and download arbitrary files on the user's device. Our results demonstrate that the communications between browser extensions and web applications pose serious security and privacy threats to browsers, web applications and more importantly to users. We discuss countermeasures and proposals, and believe that our study and in particular the tool we used to detect and exploit these threats, can be used as part of extensions review process by browser vendors to help them identify and fix the aforementioned problems in extensions.
研究动机与目标
- 调查浏览器扩展与网页应用之间消息传递接口所引发的安全与隐私风险。
- 识别现实中可被网页应用利用以获取用户数据特权访问权限的扩展。
- 评估大规模静态分析在检测主要浏览器中此类漏洞的可行性。
- 为浏览器厂商提出可操作的对策,以改进扩展审查流程并强化消息传递机制。
提出的方法
- 开发了一款静态分析工具,用于检查 Chrome、Firefox 和 Opera 中扩展暴露的消息传递接口。
- 分析了 66,401 个 Chrome、9,391 个 Firefox 和 2,523 个 Opera 扩展,检测其是否存在特权功能暴露的风险。
- 若扩展的消息传递接口可能使网页应用访问敏感数据或执行特权操作,则将其标记为可疑。
- 对部分标记的扩展进行人工审查,以确认是否存在可利用的漏洞。
- 通过概念验证演示和威胁建模评估这些漏洞的影响。
- 提出架构改进方案,仅允许由扩展注入的代码接收消息,从而增强信任边界。
实验结果
研究问题
- RQ1哪些浏览器扩展暴露了可被网页应用滥用以访问特权浏览器功能的消息传递接口?
- RQ2现有扩展审查流程在多大程度上未能检测出可被用于外泄用户数据的扩展?
- RQ3静态分析能否有效识别扩展-网页应用通信通道中的大规模安全缺陷?
- RQ4此类漏洞在现实世界中的影响体现在哪些方面,如数据泄露和权限提升?
- RQ5浏览器厂商和扩展开发者如何通过改进设计与审查流程来缓解这些威胁?
主要发现
- 在 Chrome、Firefox 和 Opera 中,共确认 197 个扩展可通过不安全的消息传递接口被网页应用利用。
- 静态分析工具将约 4.97% 的 Chrome、5.14% 的 Firefox 和 8.48% 的 Opera 扩展标记为可疑。
- 恶意网页应用可绕过同源策略,通过存在漏洞的扩展访问任何网页应用中的用户数据。
- 发现扩展存在泄露敏感信息的问题,包括 Cookie、浏览历史记录、书签以及已安装扩展的列表。
- 网页应用可触发任意文件下载,并将数据存储在扩展的持久化存储中用于跟踪目的。
- 浏览器厂商(包括 Firefox 和 Opera)已采取行动,移除或讨论修复所报告的扩展,验证了研究发现的实际影响。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。