Agent Skills
返回列表
🔒

V8漏洞利用战术手册

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/browser-exploitation-v8-ife0。

技能介绍

大模型在 V8 漏洞利用上的盲区

V8 漏洞利用是浏览器 Pwn 的高阶主题,而大模型在这一领域的输出常常在两处失真:一是把 V8 对象表示讲得过于简化,漏掉 SMI 与 HeapObject 的 tagged pointer 布局;二是对 pointer compression(V8 ≥ 8.0)的沙箱边界视而不见,直接把 ArrayBuffer.backing_store 当作完整 64 位指针使用。这本手册整理了 CTF Wiki、Project Zero 与历年 CTF 题目的利用模式,专门填这两个坑。

手册覆盖的核心能力

V8 架构基础:编译管线(TurboFan)、Maps(Hidden Classes)、Elements kinds、Orinoco GC,以及 64 位下 pointer compression 的对象布局。

七类常见漏洞:JIT Type Confusion、Incorrect Bounds Elimination、Prototype Chain Confusion、Turbofan Reduction Bug、Race Condition(SAB + worker)、Builtin Off-by-one、Typer Bug,每类都给出触发条件和典型代码路径。

利用原语与后利用:

  • addrof / fakeobj:泄露对象地址与伪造对象引用,组合成任意 R/W
  • OOB 读写:通过 TurboFan 错误消除的边界检查,控制相邻堆对象
  • ArrayBuffer 破坏:拿到 cage 内的任意 R/W,但要跨出 4GB 沙箱仍需逃逸
  • WASM RWX:现代 Chrome 的 W^X 策略下的写入窗口与 JIT spray 思路
  • V8 沙箱逃逸:external pointer table、WASM 函数指针、JIT 代码页破坏、backing store seal bypass
  • Chrome 沙箱逃逸概览:Renderer RCE → Mojo IPC UAF/Type Confusion → Browser process

适用边界

这是专家级战术手册,假设读者已熟悉堆漏洞利用、JIT 编译和 Pwn 工具链。手册聚焦 renderer 内的 V8 利用模式,Chrome 沙箱逃逸只给出 Mojo IPC 层面的概览,不等于完整的浏览器提权 exploit。真实场景中的地址布局、GC 时机与版本差异需要配合调试器与实际目标确认。

使用场景

  • CTF浏览器题中,需要构造 TurboFan 优化后的 Type Confusion 触发 OOB 读写
  • 分析真实 Chrome 漏洞时,要用 addrof/fakeobj 原语搭建任意读写链
  • 审计 V8 代码时,要判断 ArrayBuffer 破坏能否跨出 pointer compression 沙箱
  • 面对 renderer RCE 后,要规划 Mojo IPC 层的沙箱逃逸路径

适合人员

  • 准备浏览器方向 CTF 题目的安全研究员,需要按漏洞类型组织利用链
  • 逆向分析 Chrome 漏洞细节的工程师,要定位 JIT 优化引入的类型混淆
  • 设计 V8 沙箱机制的浏览器开发者,要理解 external pointer table 等逃逸面
  • 编写浏览器漏洞利用教程的作者,要梳理 pointer compression 下的利用边界