CVE Catalog

CVE-2026-62297

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.34%

27th percentile - higher than 27% of all known CVEs

Summary

ag-psd before version 31.0.0 allows readPsd() to allocate image and layer buffers based on declared PSD geometry before validating against available data. A tiny PSD declaring enormous dimensions can force multi-gigabyte memory allocation, leading to memory exhaustion and process termination. Version 31.0.0 adds a composite-image allocation limit, but full coverage of the layer-rectangle allocation path is not confirmed.

Risk Assessment

Services processing untrusted PSD files are exposed to denial of service through memory exhaustion. Concurrent requests can amplify the attack.

Recommendation

Update ag-psd to version 31.0.0 or later and verify that the fix covers layer-rectangle allocation. Consider limiting the size of processed PSD files.

Related vulnerabilities

Original NVD description (English source)

ag-psd is a JavaScript library for reading and writing Photoshop Document files. Before the allocation-limit remediation attempt in version 31.0.0, `readPsd()` commits image and layer buffers from attacker-declared PSD geometry before validating the declarations against the actual available data or sane allocation limits. The `psdReader.js` implementation sizes off-heap typed arrays using `width`, `height`, `channels`, `depth` and `per-layer rectangles`, so a tiny PSD declaring enormous geometry can force multi-gigabyte memory allocation before a later bounds error. The reported 52-byte input on Node 24 produced approximately 3.17 GB peak RSS before a RangeError; under memory pressure the process can be terminated before the error can be caught, and concurrent inputs can exhaust memory. Services reading untrusted PSDs are exposed to denial of service. This differs from genuinely large PSD files whose memory demand is proportional to real input content. Version 31.0.0 adds a composite-image allocation limit, but complete coverage of the separately described layer-rectangle allocation path is not established and requires curator residual/scope review.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS