CVE-2016-15059

EUVD-2016-10912
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.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
9.8 CRITICAL
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Awaiting analysis
This vulnerability is currently awaiting analysis.
Base Score
CVSS 3.x
EPSS Score
Percentile: 6.8%
Debian logo
Debian Releases
Debian Product
Codename
libnet-idn-encode-perl
bookworm
2.500-3
fixed
forky
2.500-5
fixed
sid
2.500-5
fixed
trixie
2.500-5
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
libnet-idn-encode-perl
bionic
needs-triage
focal
needs-triage
jammy
not-affected
noble
not-affected
resolute
not-affected
xenial
needs-triage