What’s Vulnerable › Vulnerabilities
CVE-2026-40493: SAIL has heap buffer overflow in PSD decoder — bpp mismatch in LAB 16-bit mode
- Severity: critical (CVSS 9.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.4% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-04-18 · updated 2026-10-26
- Weakness: CWE-787
Description
SAIL is a cross-platform library for loading and saving images with support for animation, metadata, and ICC profiles. Prior to commit c930284445ea3ff94451ccd7a57c999eca3bc979, the PSD codec computes bytes-per-pixel (`bpp`) from raw header fields `channels * depth`, but the pixel buffer is allocated based on the resolved pixel format. For LAB mode with `channels=3, depth=16`, `bpp = (3*16+7)/8 = 6`, but the format `BPP40_CIE_LAB` allocates only 5 bytes per pixel. Every pixel write overshoots, causing a deterministic heap buffer overflow on every row. Commit c930284445ea3ff94451ccd7a57c999eca3bc979 contains a patch.
Affected products
- SAIL Image Decoding Library: before c930284445ea3ff94451ccd7a57c999eca3bc979
References
- https://github.com/HappySeaFox/sail/commit/c930284445ea3ff94451ccd7a57c999eca3bc979
- https://github.com/HappySeaFox/sail/security/advisories/GHSA-rcqx-gc76-r9mv
Get alerted when CVE-2026-40493 or the next vulnerability affects your stack