中危 Wasmtime 越界写入漏洞(CVE-2023-26489)
CVE编号
CVE-2023-26489利用情况
暂无补丁情况
官方补丁披露时间
2023-03-09漏洞描述
Wasmtime 的代码生成器 Cranelift 在 x86_64 目标上存在错误,地址模式计算会错误地计算出 35 位有效地址,而不是 WebAssembly 定义的 33 位有效地址。 这个错误意味着,使用默认的代码生成设置,wasm 控制的加载/存储操作可以读取/写入距离线性内存基址最多 35 位的地址。 Wasmtime 的默认沙箱设置从线性内存的基础上提供高达 6G 的保护,以保证该范围内的任何内存访问在语义上都是正确的。 然而,由于这个错误,最多可以解决 0xffffffff * 8 + 0x7ffffffc = 36507222004 = ~34G客户代码可以远离线性内存基数的字节。 这意味着距离线性内存 6G 的虚拟内存高达 ~34G 可以被恶意模块读取/写入。 这种越界读/写在语义上是不正确的,并且构成了威胁,因为在远离 wasm 模块线性内存的 ~34G 线性内存范围内进行任意读/写。 访客模块可以在嵌入器不知情的情况下读/写该区域中的内存。 例如,当使用池分配器时,内存可能属于其他 WebAssembly 实例。 内存也可能属于嵌入器,具体取决于地址布局。解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。受影响软件情况
# | 类型 | 厂商 | 产品 | 版本 | 影响面 | ||||
1 | |||||||||
---|---|---|---|---|---|---|---|---|---|
运行在以下环境 | |||||||||
应用 | bytecodealliance | cranelift-codegen | * | From (including) 0.84.0 | Up to (excluding) 0.91.1 | ||||
运行在以下环境 | |||||||||
应用 | bytecodealliance | cranelift-codegen | 0.92.0 | - | |||||
运行在以下环境 | |||||||||
应用 | bytecodealliance | cranelift-codegen | 0.93.0 | - | |||||
运行在以下环境 | |||||||||
应用 | bytecodealliance | wasmtime | * | From (including) 0.37.0 | Up to (excluding) 4.0.1 | ||||
运行在以下环境 | |||||||||
应用 | bytecodealliance | wasmtime | 5.0.0 | - | |||||
运行在以下环境 | |||||||||
应用 | bytecodealliance | wasmtime | 6.0.0 | - |
- 攻击路径 远程
- 攻击复杂度 容易
- 权限要求 无需权限
- 影响范围 全局影响
- EXP成熟度 未验证
- 补丁情况 官方补丁
- 数据保密性 无影响
- 数据完整性 无影响
- 服务器危害 无影响
- 全网数量 N/A
CWE-ID | 漏洞类型 |
CWE-125 | 跨界内存读 |
CWE-787 | 跨界内存写 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论