Home

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.

PUBLISHED Reserved 2026-05-07 | Published 2026-05-14 | Updated 2026-05-15 | Assigner GitHub_M




LOW: 2.5CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L

Problem types

CWE-476: NULL Pointer Dereference

CWE-690: Unchecked Return Value to NULL Pointer Dereference

Product status

>= 1.0.0, < 1.8.7-r2
affected

References

github.com/...bsixel/security/advisories/GHSA-wpx3-h5g8-qr3w exploit

github.com/...bsixel/security/advisories/GHSA-wpx3-h5g8-qr3w

cve.org (CVE-2026-44638)

nvd.nist.gov (CVE-2026-44638)

Download JSON