Out-of-bounds Read Affecting perl-YAML-Syck-tests package, versions <0:1.37-1.amzn2023.0.3


Severity

Recommended
0.0
medium
0
10

Based on Amazon Linux security rating.

Threat Intelligence

EPSS
0.4% (35th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-AMZN2023-PERLYAMLSYCKTESTS-17289712
  • published10 Jun 2026
  • disclosed12 May 2026

Introduced: 12 May 2026

CVE-2026-5089  (opens in a new tab)
CWE-125  (opens in a new tab)

How to fix?

Upgrade Amazon-Linux:2023 perl-YAML-Syck-tests to version 0:1.37-1.amzn2023.0.3 or higher.
This issue was patched in ALAS2023-2026-1769.

NVD Description

Note: Versions mentioned in the description apply only to the upstream perl-YAML-Syck-tests package and not the perl-YAML-Syck-tests package as distributed by Amazon-Linux. See How to fix? for Amazon-Linux:2023 relevant fixed versions and status.

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 &gt;= ptr &amp;&amp; *colon != &#39;:&#39; )
{
    colon--;
}
if ( *colon == &#39;:&#39; ) *colon = &#39;\0&#39;;  // 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.

CVSS Base Scores

version 3.1