CVE-2025-14956CVE-2025-14956是WebAssembly Binaryen项目中的一个安全漏洞,影响版本至125。该漏洞位于src/wasm/wasm-binary.cpp文件中的WasmBinaryReader::readExport函数,由于对堆内存边界检查不严格,导致堆缓冲区溢出问题。攻击者可以通过构造恶意的WebAssembly二进制文件,在本地环境中触发此漏洞。成功利用此漏洞可能导致程序崩溃、内存数据损坏或潜在的代码执行风险。该漏洞已被公开披露,漏洞利用代码可能已被恶意行为者获取。WebAssembly Binaryen是一个流行的WebAssembly编译器工具链基础设施,被广泛应用于各种WebAssembly相关项目中,包括浏览器、游戏引擎、区块链智能合约等领域。建议受影响用户尽快应用安全补丁进行修复。
该漏洞为堆缓冲区溢出(Heap-based Buffer Overflow)类型安全问题。在WebAssembly Binaryen的wasm-binary.cpp源文件中,WasmBinaryReader::readExport函数负责解析WebAssembly二进制文件中的导出(Export)段。函数在读取导出信息时,未对目标缓冲区进行充分的边界验证,当解析精心构造的恶意WebAssembly二进制文件时,可能导致读取操作超出堆内存分配范围。具体而言,攻击者可以通过在WebAssembly二进制文件的导出段中嵌入超长的导出名称或异常的数量值,使得readExport函数在填充导出数据结构时发生堆缓冲区越界写入或读取。CVSS 3.1评分5.3(Medium),攻击向量为本地(AV:L),需要低权限(PR:L)即可触发,无需用户交互(UI:N)。机密性、完整性和可用性影响均为低级别(C:L/I:L/A:L)。官方已在commit 4f52bff8c4075b5630422f902dd92a0af2c9f398中发布修复补丁。