{"id":"CVE-2016-15059","published":"2026-09-22T08:16:34.520","lastModified":"2026-09-22T19:07:00.983","description":"Net::IDN::Punycode versions before 2.301 for Perl allow a heap buffer overflow via unchecked writes past the output buffer in encode_punycode.\n\nThe 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.\n\nOnly the XS backend is affected.\n\nEncoding an attacker-supplied string corrupts the heap.","cvssScore":9.8,"cvssSeverity":"CRITICAL","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwes":["CWE-122"],"vendors":[],"products":[],"references":[{"url":"https://github.com/robrwo/Net-IDN-Encode/commit/9a3ba07f15d22c0347eefee9625b012cbc803657.patch","tags":[]},{"url":"https://metacpan.org/release/CFAERBER/Net-IDN-Encode-2.301/changes","tags":[]},{"url":"https://rt.cpan.org/Ticket/Display.html?id=118924","tags":[]},{"url":"http://www.openwall.com/lists/oss-security/2026/09/22/10","tags":[]}],"exploitRefs":[{"url":"https://github.com/robrwo/Net-IDN-Encode/commit/9a3ba07f15d22c0347eefee9625b012cbc803657.patch","tags":[]}],"hasPoc":true,"ai":{"summary":"The flaw is a heap buffer overflow in the Net::IDN::Punycode Perl module, which can be exploited by attackers to corrupt the heap. This matters because it can lead to arbitrary code execution or other severe impacts.","exploitability":"Exploitation is moderately hard as it requires crafting a specific input string, but preconditions include the use of the XS backend and the module version being below 2.301.","blast_radius":"If exploited, the impact could be severe, potentially leading to arbitrary code execution or other critical vulnerabilities in applications that rely on this module.","remediation":"Upgrade to Net::IDN::Punycode version 2.301 or later.","detection":"No reliable host or network indicator is derivable from the published description.","tags":["buffer-overflow","perl","heap-corruption"],"model":"qwen2.5:7b-instruct","analyzedAt":"2026-09-27T08:59:05.576Z"}}