## Go x/image/webp 漏洞：32位平台解码超大WebP图像可导致内存损坏与程序崩溃 (CVE-2026-33813)
Go语言标准库 `x/image/webp` 解码器存在一个关键安全漏洞，在32位平台上处理特制的超大WebP图像时，会返回一个内部已损坏的 `image.Image` 对象，后续任何对该图像数据的访问都将直接导致程序恐慌（panic）崩溃。该漏洞源于解码器未能严格执行WebP格式规范（RFC 9649）中定义的画布尺寸上限检查。根据规范，WebP扩展头（VP8X）中声明的画布尺寸（宽度乘以高度）不得超过2^32-1像素。然而，当解码一个声明尺寸超过此限制或在32位整数乘法运算中导致溢出的图像时，库未能有效拒绝该图像，反而生成了一个无效的内部数据结构。

此漏洞被追踪为CVE-2026-33813，并已被标记为公开追踪（PUBLIC track）的安全问题。漏洞报告者Tristan Madani指出，攻击者可以构造一个恶意WebP文件，其声明的尺寸在32位平台上计算时会发生整数溢出，绕过有效检查。解码器随后会错误地接受该文件，并返回一个看似正常但底层数据已损坏的图像对象。当应用程序（例如Web服务器处理用户上传图片、图像处理工具等）尝试读取此图像的像素数据或属性时，将触发不可恢复的运行时错误，导致服务中断或拒绝服务（DoS）。

该漏洞的影响范围限定于在32位架构（如`386`、`arm`）上运行的使用 `x/image/webp` 包进行WebP图像解码的Go应用程序。虽然64位平台不受此特定整数溢出问题影响，但未能执行规范规定的最大尺寸检查本身即是一个合规性问题。这为依赖该库进行不可信图像源处理的系统引入了稳定性风险。开发人员应密切关注Go官方安全公告，等待包含修复的版本发布，并在修复可用前，考虑对输入图像的尺寸进行应用层预验证。
---
- **Source**: GitHub Issues
- **Sector**: The Lab
- **Tags**: security_vulnerability, CVE, Go_language, WebP, memory_corruption
- **Credibility**: unverified
- **Published**: 2026-03-27 20:27:24
- **ID**: 38322
- **URL**: https://whisperx.ai/en/intel/38322