Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-33020— libsixel: Integer Overflow in write_png_to_file() leads to Heap-based Buffer Overflow

Quick assessment

Affected
saitoha libsixel
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

libsixel是Hayaki Saito个人开发者的一个为DEC SIXEL图形和其他转换器程序提供编码/解码实现的软件包。 libsixel 1.8.7及之前版本存在输入验证错误漏洞,该漏洞源于sixel_frame_convert_to_rgb888函数存在整数溢出,可能导致堆缓冲区溢出,造成堆损坏、崩溃或任意代码执行。

CVSS 7.1 · High EPSS 0.21% · P11
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-33020

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
libsixel: Integer Overflow in write_png_to_file() leads to Heap-based Buffer Overflow
Source: CVE Program / CVE List V5
Vulnerability Description
libsixel is a SIXEL encoder/decoder implementation derived from kmiya's sixel. Versions 1.8.7 and prior contain an integer overflow which leads to a heap buffer overflow via sixel_frame_convert_to_rgb888() in frame.c, where allocation size and pointer offset computations for palettised images (PAL1, PAL2, PAL4) are performed using int arithmetic before casting to size_t. For images whose pixel count exceeds INT_MAX / 4, the overflow produces an undersized heap allocation for the conversion buffer and a negative pointer offset for the normalization sub-buffer, after which sixel_helper_normalize_pixelformat() writes the full image data starting from the invalid pointer, causing massive heap corruption confirmed by ASAN. An attacker providing a specially crafted large palettised PNG can corrupt the heap of the victim process, resulting in a reliable crash and potential arbitrary code execution. This issue has been fixed in version 1.8.7-r1.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
堆缓冲区溢出
Source: CVE Program / CVE List V5
Vulnerability Title
libsixel 输入验证错误漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
libsixel是Hayaki Saito个人开发者的一个为DEC SIXEL图形和其他转换器程序提供编码/解码实现的软件包。 libsixel 1.8.7及之前版本存在输入验证错误漏洞,该漏洞源于sixel_frame_convert_to_rgb888函数存在整数溢出,可能导致堆缓冲区溢出,造成堆损坏、崩溃或任意代码执行。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
saitoha libsixel < 1.8.7-r1 -

II. Public POCs for CVE-2026-33020

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-33020

登录查看更多情报信息。

Vendor Advisories for CVE-2026-33020 (1)

Same Patch Batch · saitoha · 2026-04-14 · 5 CVEs total

CVE-2026-33023 7.8 HIGH libsixel: Use-after-free in load_with_gdkpixbuf()
CVE-2026-33021 7.3 HIGH libsixel: Use-after-free in sixel_encoder_encode_bytes()
CVE-2026-33019 7.1 HIGH libsixel: Integer overflow leads to Out-of-bounds Read in img2sixel
CVE-2026-33018 7.0 HIGH libsixel: Use-After-Free in load_gif()

IV. Related Vulnerabilities

V. Comments for CVE-2026-33020

No comments yet


Leave a comment