Description
libsixel is a SIXEL encoder/decoder implementation derived from kmiya's sixel. From to 1.8.7-r1, a wrong NULL check after an allocation call in sixel_decode_raw and sixel_decode causes a NULL pointer dereference whenever the allocation fails. The check tests the address of the output parameter (always non-NULL) instead of the value the malloc returned. On allocation failure, the function continues and writes through a NULL pointer, crashing the process. This is a denial of service against any caller of these public APIs that hits a low-memory condition. This vulnerability is fixed in 1.8.7-r2.
References (1)
Core 1
Core References
X_Refsource_Confirm x_refsource_confirm
https://github.com/saitoha/libsixel/security/advisories/GHSA-wpx3-h5g8-qr3w
Scores
CVSS v3
2.5
EPSS
0.0013
EPSS Percentile
2.9%
Attack Vector
LOCAL
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L
CISA SSVC
Vulnrichment
Exploitation
poc
Automatable
no
Technical Impact
partial
Details
CWE
CWE-476
CWE-690
Status
published
Products (2)
saitoha/libsixel
1.0.0 - 1.8.7-r2
saitoha/libsixel
>= 1.0.0, < 1.8.7-r2
Published
May 14, 2026
Tracked Since
May 15, 2026