CVE-2026-40492
CVE-2026-40492 · SAIL has heap buffer overflow in XWD decoder — bits_per_pixel vs pixmap_depth type confusion in byte-swap
This page contains facts from public vulnerability sources. Check the original advisory before updating.
SAIL is a cross-platform library for loading and saving images with support for animation, metadata, and ICC profiles. Prior to commit 36aa5c7ec8a2bb35f6fb867a1177a6f141156b02, the XWD codec resolves pixel format based on `pixmap_depth` but the byte-swap code uses `bits_per_pixel` independently. When `pixmap_depth=8` (BPP8_INDEXED, 1 byte/pixel buffer) but `bits_per_pixel=32`, the byte-swap loop accesses memory as `uint32_t*`, reading/writing 4x the allocated buffer size. This is a different vulnerability from the previously reported GHSA-3g38-x2pj-mv55 (CVE-2026-27168), which addressed `bytes_per_line` validation. Commit 36aa5c7ec8a2bb35f6fb867a1177a6f141156b02 contains a patch.
CVSS 9.8 · Critical · EPSS 0.4% · Fix available
- Published
- Updated
Stack: system
Affected products and versions
sail
- Versions
- < 36aa5c7ec8a2bb35f6fb867a1177a6f141156b02: Affected
No fix published
sail Debian:13
- Versions
- 0.9.10-1
- 0.9.10-2
- 0.9.10-3
- 0.9.8-1
- 0.9.8-1+deb13u1
- 0.9.9-1
- 1.2.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
sail Debian:14
- Versions
- 0.9.10-1
- 0.9.8-1
- 0.9.9-1
- Affected ranges
- ECOSYSTEM: < 0.9.10-2
Update to 0.9.10-2
sail Ubuntu:24.04:LTS
- Versions
- 0.9.0+repack-1
- 0.9.0+repack-2
- 0.9.0+repack-2.1
- 0.9.0+repack-2.1build1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
sail Ubuntu:25.10
- Versions
- 0.9.7-1build1
- 0.9.8-1
- 0.9.9-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
sail Ubuntu:26.10
- Versions
- 0.9.10-1
- 0.9.10-3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
sail Ubuntu:26.04:LTS
- Versions
- 0.9.9-1
- 0.9.10-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published