Approved changes feed: RSS · Atom

cpe:2.3:a:saitoha:libsixel:*:*:*:*:*:*:*:*

part: a version: * update: *

VendorSaitoha (9631dca1-8a4b-5a3d-9517-129366436389)
ProductLibsixel (644000ca-a5a4-5d28-9c77-9704f7aa56f8)
Edition*
Language*
Software edition*
Target software*
Target hardware*
Other*

Notes

Imported from purl2cpe mapping

PURL mappings

PURLSourceLast updated
pkg:deb/debian/libsixel purl2cpe 2026-06-01 10:16:35.221665
pkg:deb/ubuntu/libsixel purl2cpe 2026-06-01 10:16:35.221667
pkg:github/libsixel/libsixel purl2cpe 2026-06-01 10:16:35.221668
pkg:github/saitoha/libsixel purl2cpe 2026-06-01 10:16:35.221670
pkg:rpm/fedora/libsixel purl2cpe 2026-06-01 10:16:35.221671
pkg:rpm/opensuse/libsixel purl2cpe 2026-06-01 10:16:35.221673

Vulnerability references

IdentifiercpeApplicabilitySubmitteddb.gcve.eu detailsRationale
CVE:CVE-2026-110601 vulnerable 2026-11-03 10:16:01.601748 libsixel before 1.8.7-r1 and 1.9.0 through 1.10.5 Heap Out-of-Bounds Write via GIF
MEDIUM (6.3)
libsixel before 1.8.7-r1 and 1.9.0 through 1.10.5 contains a heap out-of-bounds write vulnerability in gif_init_frame() in src/fromgif.c, which never checks the GIF transparent color index against the palette size. Attackers can supply a crafted GIF with a small color table and large transparent index, processed with a background color set, to write bytes past the palette buffer, causing heap corruption or crashes.
Published: 2026-10-14T14:16:43.022Z
Updated: 2026-10-20T01:04:11.699Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-44638 vulnerable 2026-06-08 08:05:11.227582 libsixel: NULL pointer dereference
LOW (2.5)
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: 2026-05-14T19:59:29.704Z
Updated: 2026-05-15T14:18:03.581Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-44637 vulnerable 2026-06-08 08:05:11.227309 libsixel: integer overflow in parser
HIGH (7.1)
libsixel is a SIXEL encoder/decoder implementation derived from kmiya's sixel. From to 1.8.7-r1, a signed integer overflow in the SIXEL parser's image-buffer doubling loop can lead to an out-of-bounds heap write in sixel_decode_raw_impl. context->pos_x grows by repeat_count on every sixel character with no upper bound check. Once pos_x approaches INT_MAX, the expression "pos_x + repeat_count" used to size the image buffer overflows signed int. Depending on how the overflow wraps, the resize check that should reject oversized buffers can be bypassed, after which a subsequent write computes a large attacker-influenced offset into image->data and writes past the allocation. Reachable from any caller that decodes attacker-supplied SIXEL data, including img2sixel. This vulnerability is fixed in 1.8.7-r2.
Published: 2026-05-14T20:02:32.034Z
Updated: 2026-05-15T13:35:45.953Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-44636 vulnerable 2026-06-08 08:05:11.226884 libsixel: integer overflow in encoder
HIGH (7.4)
libsixel is a SIXEL encoder/decoder implementation derived from kmiya's sixel. From to 1.8.7-r1, signed integer overflow in sixel_encode_highcolor's allocation size calculation can lead to a heap buffer overflow. The public sixel_encode entry point validates only that width and height are greater than zero, with no upper bound. width and height are multiplied as plain int when computing the allocation size for paletted_pixels and normalized_pixels. Any caller that asks libsixel to encode a pixel buffer with width times height greater than INT_MAX (about 2.15 billion) will hit a wrapped allocation size; under the right wrap, the malloc succeeds with a buffer much smaller than the encoder expects, and the encoder writes past the end of the heap allocation. This vulnerability is fixed in 1.8.7-r2.
Published: 2026-05-14T20:01:27.050Z
Updated: 2026-05-16T03:56:20.840Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-33023 vulnerable 2026-06-08 07:57:18.472774 libsixel: Use-after-free in load_with_gdkpixbuf()
HIGH (7.8)
libsixel is a SIXEL encoder/decoder implementation derived from kmiya's sixel. In versions 1.8.7 and prior, when built with the --with-gdk-pixbuf2 option, a use-after-free vulnerability exists in load_with_gdkpixbuf() in loader.c. The cleanup path manually frees the sixel_frame_t object and its internal buffers without consulting the reference count, even though the object was created via the refcounted constructor sixel_frame_new() and exposed to the public callback. A callback that calls sixel_frame_ref(frame) to retain a logically valid reference will hold a dangling pointer after sixel_helper_load_image_file() returns, and any subsequent access to the frame or its fields triggers a use-after-free confirmed by AddressSanitizer. The root cause is a consistency failure between two cleanup strategies in the same codebase: sixel_frame_unref() is used in load_with_builtin() but raw free() is used in load_with_gdkpixbuf(). An attacker supplying a crafted image to any application built against libsixel with gdk-pixbuf2 support can trigger this reliably, potentially leading to information disclosure, memory corruption, or code execution. This issue has been fixed in version 1.8.7-r1.
Published: 2026-04-14T22:05:31.493Z
Updated: 2026-04-15T20:02:36.839Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-33021 vulnerable 2026-06-08 07:57:18.470126 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-33020 vulnerable 2026-06-08 07:57:18.469764 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-33019 vulnerable 2026-06-08 07:57:18.469493 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2026-33018 vulnerable 2026-06-08 07:57:18.469040 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2025-9300 vulnerable 2026-06-08 07:45:22.221047 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2025-61146 vulnerable 2026-06-08 07:37:27.495765 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2022-27938 vulnerable 2026-06-08 05:42:43.902671 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2020-21050 vulnerable 2026-06-08 05:22:30.668819 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2020-21049 vulnerable 2026-06-08 05:22:30.668133 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2020-21048 vulnerable 2026-06-08 05:22:30.667267 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2019-20024 vulnerable 2026-06-08 05:13:30.396362 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2019-20023 vulnerable 2026-06-08 05:13:30.395866 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data
CVE:CVE-2019-20022 vulnerable 2026-06-08 05:13:30.395356 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data

Contribute

You can submit an edit proposal for this CPE entry or suggest a related product/vendor addition using the action button above.

Inspect record JSON

Open JSON directly

Open this panel to browse, search, copy or download the JSON record.