中危 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 -
阿里云评分
6.8
  • 攻击路径
    远程
  • 攻击复杂度
    容易
  • 权限要求
    无需权限
  • 影响范围
    全局影响
  • EXP成熟度
    未验证
  • 补丁情况
    官方补丁
  • 数据保密性
    无影响
  • 数据完整性
    无影响
  • 服务器危害
    无影响
  • 全网数量
    N/A
CWE-ID 漏洞类型
CWE-125 跨界内存读
CWE-787 跨界内存写
阿里云安全产品覆盖情况