Integer underflow in LEONT Crypt::Argon2
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · None · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA.
Summary
Crypt::Argon2 versions from 0.017 before 0.031 for Perl perform a heap out-of-bounds read in argon2_verify on empty encoded input. The auto-detect form of argon2_verify passes encoded_len - 1 as the length argument to memchr without checking that encoded_len is non-zero. When the encoded string is empty, the size_t subtraction underflows to SIZE_MAX and memchr scans adjacent heap memory looking for a '$' separator byte. A caller that invokes argon2_verify against a stored hash that may legitimately be empty (for example a placeholder row or a NULL column materialised as an empty string) reads out-of-bounds heap memory, which can crash the process or leak the position of an adjacent '$' byte into subsequent parsing.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA Crypt::Argon2 (LEONT) Fixed in 0.031
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2026-8463
- 2026-10-03 Alias added: GHSA-3p6c-7qjr-35x9
References
More LEONT Crypt vulnerabilities
- TI-2026-02218 Heap-based buffer overflow in LEONT Crypt::SysRandom::XS CVSS 3.1HIGH 7.5
Sources
- CVE-2026-8463 · CVE Program
- CVE-2026-8463 · NVD
- FIRST EPSS
- GHSA-3p6c-7qjr-35x9 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-8463 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences