CVE-2026-54627: SAIL: Heap out-of-bounds write in SAIL PSD decoder (Bitmap mode ignores depth)

Published Sep 17, 2026
·
Updated

SAIL is a cross-platform library for loading and saving images with support for animation, metadata, and ICC profiles. In 0.9.10 and earlier, psdprivatesailpixelformat() in src/sail-codecs/psd/helpers.c resolves a one-channel PSD in Bitmap color mode to SAILPIXELFORMATBPP1INDEXED without requiring the file depth to be one, so the pixel buffer uses one-bit rows while sailcodecloadframev8psd() in src/sail-codecs/psd/psd.c accepts depth == 8 and writes one attacker-controlled byte per pixel. Loading a crafted PSD through sailloadfromfile() or sailloadfrommemory() therefore writes beyond each heap row, causing memory corruption, a reliable crash, or potential code execution. This mode/depth mismatch is distinct from GHSA-rcqx-gc76-r9mv and GHSA-wcj8-hxxf-pq2c. This issue is fixed in version 1.0.0.

Affected Software

1 affected component
SAIL SAIL<=0.9.10

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade SAIL to a version that resolves this vulnerability.

    Fixed in 1.0.0

Event History

Sep 17, 2026
CVE Published
via MITRE·07:47 PM
Data Sourced
via MITRE·07:47 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which applications are exposed to this issue?

Applications using SAIL 0.9.10 or earlier are exposed if they load PSD files through sail_load_from_file() or sail_load_from_memory(). The vulnerable path is reached when processing a crafted one-channel PSD in Bitmap color mode with depth 8.

2

Does exploitation require authentication, user interaction, or a special configuration?

No. The reported vector is network-accessible with low attack complexity, requires no privileges or user interaction, and affects PSD loading; the data does not identify a configuration prerequisite.

3

What is the impact of successfully loading a malicious PSD?

The decoder writes beyond heap row boundaries, causing memory corruption. This can produce a reliable crash and may allow code execution.

4

What version should be deployed to remediate the issue?

Upgrade SAIL to version 1.0.0, which fixes this issue. If upgrading cannot happen immediately, avoid loading untrusted PSD files through the affected SAIL APIs.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203