跳到正文
热点事件持续更新

Pillow 修复 GIF 注释拼接致 Image.open() 拒绝服务漏洞

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

先了解这件事

AI 综述

GitHub 安全公告库公开了 Pillow 的一个拒绝服务问题及补丁:GifImageFile._seek() 用 bytes 拼接累积 GIF 注释,使 Image.open() 耗时随注释数据量呈二次方增长。公告称,在默认设置下,2 MB 文件约需 5 秒、4 MB 约 35 秒、8 MB 约 3 分钟,而同样大小的普通 GIF 不到 1 秒;开销发生在 Image.open() 内部,此时应用尚未获知图像大小或格式。 该二次方模式由 2018 年 11 月的提交 b2b737b68b06 引入,自 Pillow 5.4.0 起随版本发布。内存占用仍为线性,影响是处理器耗尽和延迟,上限取决于服务允许的上传大小(1 MB 时约 1 秒)。 公告附带的脚本用 2 MB 和 4 MB 测试文件,与扩展块标为纯文本的对照文件比较;补丁改为先把片段收集到列表再一次性拼接。

AI 根据报道生成 · 16 小时前更新

报道时间线

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

10月22日
  1. GitHub 安全公告库 (GHSA)精选
    Pillow 修复 GIF 注释二次方拼接导致的 Image.open() DoS 问题

    GitHub 安全公告指出 Pillow 的 GifImageFile._seek() 在 src/PIL/GifImagePlugin.py 中用 bytes 拼接累积 GIF 注释,使 Image.open() 耗时随注释数据量呈二次方增长,默认设置下 2 MB 文件约 5 秒、4 MB 约 35 秒、8 MB 约 3 分钟,而同样大小的普通 GIF 不到 1 秒。

本事件热度走势

可比范围当前
5
可比范围峰值
810月22日 13:00
近 24 小时变化
–

趋势仅比较持续完整观测到的相同主体,范围可能小于当前热度统计。移动指针或点击图表查看每小时热度;键盘可用左右方向键切换。