Skip to main content
VulnerabilityPublished Updated

CVE-2026-80490: Algorithm::AhoCorasick::XS versions through 0.04 for Perl read the haystack string length before the

Source GCVE Database

0
Compare
Authoritative record:CVE-2026-80490· Medium 4.4

Not known to be exploited · CVSS 4.4 Medium.

Data as of 9 Nov 2026, 19:32 UTC

CVSS 3.1 base score
4.4Medium
How severe the flaw is on the 0–10 CVSS scale.

Thin evidence

One scorer or none
CVSS scores by source
CISA-ADPCVSS 3.14.4
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 30 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 9 Nov 2026.

What to do

Affected software

ProductAffectedFixed in
Algorithm-AhoCorasick-XSAffected
  • <=0.04
Fixed in–
CPANAlgorithm-AhoCorasick-XSpkg:cpan/Algorithm-AhoCorasick-XSOther threatsAffected
  • <=0.04
Fixed in–

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

Users should avoid passing non-string scalars such as integers, floats, references, or blessed objects as the haystack input to the affected methods. Validate and convert inputs to strings before calling matches, first_match, or match_details. Monitor vendor advisories for any forthcoming patches or updates addressing this issue.

Description

Algorithm::AhoCorasick::XS versions through 0.04 for Perl contain a vulnerability where the haystack string length is read before the scalar is properly stringified. This can cause an out-of-bounds read leading to process aborts when the input is a numeric value or a reference. The issue arises due to the unspecified evaluation order of arguments in the std::string constructor, causing the length macro to run before stringification. This affects methods like matches, first_match, and match_details when processing non-string inputs such as numbers or blessed objects.

References

Community reviews

Loading reviews…