CVE catalog

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 bu

[CVE catalog]

Severity
Critical · CVSS 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Published
Updated
Source
[NVD] · [CVE record]
EPSS
0.42% · Oct 25, 2026

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.

Vulnerable and fixed packages

Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.

DistributionPackageReleaseVersionStatus
Debianlibnet-idn-encode-perlsid2.502-1fixed
Debianlibnet-idn-encode-perlforky2.502-1fixed
Debianlibnet-idn-encode-perltrixie2.500-5fixed
Debianlibnet-idn-encode-perlbookworm2.500-3fixed
Ubuntulibnet-idn-encode-perl16.042.202-1vulnerable
Ubuntulibnet-idn-encode-perl16.042.300-1vulnerable
Ubuntulibnet-idn-encode-perl16.042.300-1build1vulnerable
Ubuntulibnet-idn-encode-perl18.042.400-1build1vulnerable
Ubuntulibnet-idn-encode-perl20.042.500-1vulnerable
Ubuntulibnet-idn-encode-perl20.042.500-1build1vulnerable

Fixed-version evidence

DistributionPackageTypeReleaseFixed versionUrgencyOriginBugs
Debianlibnet-idn-encode-perlsourcesid2.303-1not yet assignedNot reportedNot reported
Debianlibnet-idn-encode-perlsourceforky2.303-1not yet assignedNot reportedNot reported
Debianlibnet-idn-encode-perlsourcetrixie2.303-1not yet assignedNot reportedNot reported
Debianlibnet-idn-encode-perlsourcebookworm2.303-1not yet assignedNot reportedNot reported

OpenFactory catalog packages

[Debian 12 (Bookworm)]

  • Source package: [libnet-idn-encode-perl]

    Details (2)
    • 2.500-3+b1 · amd64 · bookworm

      Fixed · Fixed: 2.303-1

      nvd · libnet-idn-encode-perl · debian · bookworm; nvd · libnet-idn-encode-perl · debian · 12

    • 2.500-3+b1 · arm64 · bookworm

      Fixed · Fixed: 2.303-1

      nvd · libnet-idn-encode-perl · debian · bookworm; nvd · libnet-idn-encode-perl · debian · 12

[Debian 13 (Trixie)]

  • Source package: [libnet-idn-encode-perl]

    Details (2)
    • 2.500-5+b1 · amd64 · trixie

      Fixed · Fixed: 2.303-1

      nvd · libnet-idn-encode-perl · debian · 13

    • 2.500-5+b1 · arm64 · trixie

      Fixed · Fixed: 2.303-1

      nvd · libnet-idn-encode-perl · debian · 13

Observed:

References