Skip to content
OpenAdvisories
Critical · 9.8 CVE-2026-40494 EUVD-2026-23648

SAIL has heap buffer overflow in TGA RLE decoder — raw packet path missing bounds check

Published Apr 18, 2026 · Updated Apr 20, 2026 · Assigned by GitHub_M

Description

SAIL is a cross-platform library for loading and saving images with support for animation, metadata, and ICC profiles. Prior to commit 45d48d1f2e8e0d73e80bc1fd5310cb57f4547302, the TGA codec's RLE decoder in `tga.c` has an asymmetric bounds check vulnerability. The run-packet path (line 297) correctly clamps the repeat count to the remaining buffer space, but the raw-packet path (line 305-311) has no equivalent bounds check. This allows writing up to 496 bytes of attacker-controlled data past the end of a heap buffer. Commit 45d48d1f2e8e0d73e80bc1fd5310cb57f4547302 patches the issue.

Affected products

VendorProductAffectedFixed
HappySeaFox sail < 45d48d1f2e8e0d73e80bc1fd5310cb57f4547302 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 sail 0.9.10-2 —
Debian 13 sail No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 sail No fix yet —
Ubuntu 26.04 LTS sail No fix yet —
Ubuntu 25.10 sail No fix yet —
Ubuntu 24.04 LTS sail No fix yet —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling sail +1 No fix yet —

References