Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1182

类型混淆漏洞

类型混淆漏洞 是什么?

类型混淆漏洞一种内存安全漏洞,代码以与对象实际分配类型不兼容的类型访问对象,通常可导致任意读写或代码执行。


类型混淆漏洞发生在程序通过指针或引用读写内存时,该指针的声明类型与底层对象的实际类型不一致。典型成因包括错误的向下转型、多态处理失误,或 JIT 的猜测式优化在攻击者改变结构形状后失效。一旦运行时把对象当成错误类型,方法表、vtable、长度字段以及内联数据都会被误解,攻击者由此获得受控的读写原语,常进一步升级为代码执行。Chrome 的 V8、Safari 的 JSC 等 JavaScript 引擎以及浏览器渲染器是常见目标,经常出现在 Pwn2Own。防御方法包括强类型系统、运行时类型检查、沙箱化和内存安全语言。

示例

  1. 01

    CVE-2021-30551:V8 类型混淆漏洞作为 0-day 攻击 Chrome。

  2. 02

    本应使用 dynamic_cast 的地方使用了 static_cast,导致子类写入了无关对象。

常见问题

类型混淆漏洞 是什么?

一种内存安全漏洞,代码以与对象实际分配类型不兼容的类型访问对象,通常可导致任意读写或代码执行。 它属于网络安全的 应用安全 分类。

类型混淆漏洞 是什么意思?

一种内存安全漏洞,代码以与对象实际分配类型不兼容的类型访问对象,通常可导致任意读写或代码执行。

类型混淆漏洞 是如何工作的?

类型混淆漏洞发生在程序通过指针或引用读写内存时,该指针的声明类型与底层对象的实际类型不一致。典型成因包括错误的向下转型、多态处理失误,或 JIT 的猜测式优化在攻击者改变结构形状后失效。一旦运行时把对象当成错误类型,方法表、vtable、长度字段以及内联数据都会被误解,攻击者由此获得受控的读写原语,常进一步升级为代码执行。Chrome 的 V8、Safari 的 JSC 等 JavaScript 引擎以及浏览器渲染器是常见目标,经常出现在 Pwn2Own。防御方法包括强类型系统、运行时类型检查、沙箱化和内存安全语言。

如何防御 类型混淆漏洞?

针对 类型混淆漏洞 的防御通常结合技术控制与运营实践,详见上方完整定义。

类型混淆漏洞 还有哪些其他名称?

常见的别称包括: 错误转型, 类型不匹配漏洞。

相关术语