使 Mojo 漏洞利用更困难

主要观点:微软宣布在 Microsoft Edge 及其他基于 Chromium 的浏览器中新增安全防护,防止攻击者利用渲染器进程中的漏洞逃逸沙盒,介绍了 Mojo 和 MojoJS 的相关内容、攻击面以及新的防护层。
关键信息

  • Chromium 浏览器采用多进程架构,网站内容在渲染器进程的沙盒中运行,Mojo 是 IPC 功能的实现,MojoJS 允许渲染器进程中的 JavaScript 访问某些 Mojo 接口。
  • 攻击者可通过利用渲染器漏洞启用 MojoJS 从而更易逃逸沙盒,此攻击在之前已被描述,虽相关漏洞已被修复,但启用 MojoJS 的易发性未被解决。
  • 新增防护层通过添加渲染器进程的新属性来保护 MojoJS 的启用/禁用状态,若攻击者试图更改该值,进程会立即崩溃,典型用户不会注意到变化,该防护已贡献给 Chromium 项目,所有基于 Chromium 的浏览器都将受益。
    重要细节
  • 多进程架构中,重要资源受限,攻击者目标是逃逸沙盒,IPC 用于进程间通信,Mojo 提供 IPC 基础功能及多种语言的绑定库,MojoJS 是其中 JavaScript 绑定 API。
  • 攻击者可通过更改“RenderFrame”的两个简单属性并重新加载页面来启用 MojoJS,无需插入可执行代码,此为常见攻击向量,之前的相关攻击已被描述,新防护层对此进行了应对。
  • 新防护层通过特殊内存位置的只读布尔值属性来控制 MojoJS 的启用,代码启用 MojoJS 前会检查该属性,若为 false 则渲染器进程崩溃,目前该防护在 Canary、Dev 和 Beta 频道的 50%用户中已启用,将在 Edge 123 中推送给稳定用户,目前仅支持 Windows 10 和 Windows 11,未来将添加对其他平台的支持。
阅读 11
0 条评论