CVE-2026-5089

YAML::Syck versions before 1.38 for Perl has an out-of-bounds read

Published May 12, 2026 CVSS 3.1 · 7.3 High EPSS < 1% KEV · Not listed
Description
YAML::Syck versions before 1.38 for Perl has an out-of-bounds read.

The base60 (sexagesimal) parsing code in perl_syck.h has a buffer underflow bug in both int#base60 and float#base60 handlers. When processing the leftmost segment of a colon-separated value (e.g., the 1 in 1:30:45), the inner while loop can decrement a pointer past the start of the string buffer:

while ( colon >= ptr && *colon != ':' )
{
colon--;
}
if ( *colon == ':' ) *colon = '\0'; // colon may be ptr-1 here

When no colon is found (final/leftmost segment), colon becomes ptr-1, and the subsequent *colon dereference reads one byte before the allocated buffer.

Remediation

Vendor Solution

Upgrade to YAML::Syck version 1.38 or later.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4730-1 libyaml-syck-perl security update
Debian DSA Debian DSA DSA-6428-1 libyaml-syck-perl security update
History
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Toddr
Toddr yaml::syck
Vendors & Products Toddr
Toddr yaml::syck
Type Values Removed Values Added
Description YAML::Syck versions before 1.38 for Perl has an out-of-bounds read. The base60 (sexagesimal) parsing code in perl_syck.h has a buffer underflow bug in both int#base60 and float#base60 handlers. When processing the leftmost segment of a colon-separated value (e.g., the 1 in 1:30:45), the inner while loop can decrement a pointer past the start of the string buffer: while ( colon >= ptr && *colon != ':' ) { colon--; } if ( *colon == ':' ) *colon = '\0'; // colon may be ptr-1 here When no colon is found (final/leftmost segment), colon becomes ptr-1, and the subsequent *colon dereference reads one byte before the allocated buffer.
Title YAML::Syck versions before 1.38 for Perl has an out-of-bounds read
Weaknesses CWE-124
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
CPANSec
Published
Updated
May 14, 2026, 1:51 PM
Reserved
Mar 28, 2026, 7:33 PM
Status
Deferred
Published
May 12, 2026, 5:16 PM
Modified
Oct 26, 2026, 6:10 PM
Severity
Moderate
Public date
May 12, 2026, 4:14 PM