CVE Catalog

CVE-2026-11526

CriticalCVSS 9.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Elevated risk
1.35%

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

Summary

The GD library for Perl before version 2.86 has an OS command injection and file overwrite vulnerability in the _make_filehandle function. It opens a filename argument with Perl's 2-arg open(), which interprets prefixes like '| cmd' as a pipe, allowing arbitrary command execution or file overwrite.

Risk Assessment

An attacker can pass untrusted filenames to GD::Image constructors, leading to arbitrary command execution or file destruction with process privileges.

Recommendation

Upgrade the GD library to version 2.86 or later, and avoid passing untrusted data as filenames to GD::Image functions.

Original NVD description (English source)

GD versions before 2.86 for Perl allow OS command injection and file overwrite via a 2-arg open() of filename arguments in _make_filehandle. GD::Image::_make_filehandle opens a filename argument with Perl's 2-arg open(), so a filename that begins or ends with a pipe ("| cmd", "cmd |") or begins with a redirect ("> path", ">> path") is run as a command or redirect rather than opened as a file. _make_filehandle is the single open path behind every filename-accepting constructor (new, newFromPng, newFromJpeg, and the rest); the in-memory *Data variants do not open a path and are unaffected. Any caller that forwards untrusted input to one of these constructors as a pathname can run an arbitrary command or truncate a file under the process UID.

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