CVE-2016-15059

CVE-2016-15059

Net::IDN::Punycode versions before 2.301 for Perl allow a heap buffer overflow via unchecked writes past the output buffer in encode_punycode. The XS backend builds the encoded label in the string buffer of the scalar it returns, sized from the input length. The loop that emits the digits of each code point checks for room before every write, but the write of the last digit of each round and the write of the terminating NUL do not, so an input whose encoded form fills the buffer writes past its end. Only the XS backend is affected. Encoding an attacker-supplied string corrupts the heap.

Vulnerability class: Buffer Overflow

Published · last modified .

CVSS v3 metric

CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.

EPSS exploit prediction

EPSS: 0.004 (36.2th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 36th percentile — 36.2% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2016-15059: held from 0.004 to 0.004.

EPSS over last 30 days · oldest: 0.004 · newest: 0.004 · change: 0.000

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2016-15059?
CVE-2016-15059 is a critical-severity vulnerability, classified under Heap-based Buffer Overflow. CVSS score: 9.8/10. Published 2026-09-22.
How severe is CVE-2016-15059?
Critical severity. CVSS v3 base score is 9.8 out of 10.