跳到正文
热点事件观察中

Pillow 无损 JPEG 解码堆溢出复现

1 篇报道1 个报道来源2 天前更新

先了解这件事

AI 综述

GitHub 安全公告库(GHSA)公开了 Pillow 的 ImagingJpegDecode 堆缓冲区溢出问题及复现环境。公告称,Pillow 未校验 libjpeg 返回的 output_width 与缓冲区尺寸;当 libjpeg-turbo 3.x 解码 SOF3 无损 JPEG 时缩放参数被忽略,导致堆缓冲区溢出。 触发条件受限:链接的 libjpeg 需支持无损解码(libjpeg-turbo >= 3.0),且仅影响在加载前调用 draft() 的路径,并要求 draft() 选出的缩放因子 s >= 2(即宽、高均至少缩小一半)。使用 libjpeg-turbo 2.x 或 IJG libjpeg 的构建会在解码任何行之前拒绝 SOF3,不受影响。 公告附有自包含 Docker 复现环境(Ubuntu 24.04、clang 20、libjpeg-turbo 3.1.4 与 Pillow 均从源码以 AddressSanitizer 构建)。

AI 根据报道生成 · 2 天前更新

报道时间线

沿着报道,了解事件的不同侧面。

10月21日
  1. GitHub 安全公告库 (GHSA)精选
    Pillow 的 ImagingJpegDecode 存在堆缓冲区溢出,附 SOF3 复现环境

    Pillow 在 ImagingJpegDecode 中未校验 libjpeg 返回的 output_width 与缓冲区尺寸,当 libjpeg-turbo 3.x 解码 SOF3 无损 JPEG 时缩放参数被忽略,导致堆缓冲区溢出。

本事件热度走势

还没有足够的连续观测数据,暂不绘制趋势。