Skip to main content

Net::Whois::Raw EUVDEUVD-2026-92267

| CVE-2026-19954 MEDIUM
Improper Handling of Unicode Encoding (CWE-176)
2026-10-05 CPANSec GHSA-m543-jcgv-fpx5
5.4
CVSS 3.1 · Vendor: CPANSec
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Supply crafted IDN to pwhois CLI
  2. Exploit
    Label punycoded without IDNA mapping/NFC
  3. Execution
    WHOIS query sent to wrong A-label domain
  4. Impact
    Victim acts on misleading WHOIS data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Unicode normalization
Exploitation Conditions

Exploitation requires use of the pwhois command-line tool shipped with Net::Whois::Raw before 2.99044 - the Net::Whois::Raw library modules are NOT affected. The flaw only triggers for unicode (IDN) domain labels that fall outside what pwhois lowercases (ASCII and Cyrillic letters): specifically labels containing other uppercase letters, or labels not in NFC normalization form. Such a label is Punycode-encoded directly with 'xn--' prepended, skipping IDNA mapping/normalization, so it resolves to a different A-label than its correct IDNA form (e.g. U+00C9+'cole' → 'xn--cole-pka' instead of 'xn--cole-9oa'). Limiting factors: user interaction is required (the victim must actually query such a domain via the CLI), ASCII-only and already-correct IDN lookups are unaffected, and anything calling the library API directly is safe. No credentials or elevated privileges are involved.

Impact

This is a genuinely low-priority correctness/encoding flaw (CWE-176) rather than a classic exploitable code-execution issue. All signals align toward low real-world risk: EPSS is 0.18% (7th percentile), there is no CISA KEV listing, and no public exploit code is referenced (only the issue, PR, patch, and RFC references). The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N = 5.4 Medium) requires user interaction and yields only Low confidentiality and Low integrity impact, consistent with a tool returning WHOIS data for the wrong domain rather than leaking secrets or executing code. One important caveat: the AV:N rating is debatable - the actual defect is in a locally-run command-line tool (pwhois), and the 'network' element is only that the resulting WHOIS lookup goes to a different domain; this is closer to local tool misuse than remote attack, so the network vector overstates reachability. The impact is realistic but narrow: an analyst or automated process relying on pwhois output could be fed WHOIS data for an attacker-chosen A-label (e.g. a pre-registered wrong-punycode domain), leading to incorrect trust or attribution decisions. No conflicting severity signals, but the SSVC-style verdict is 'track, not act now': low automatability, modest technical impact, no evidence of exploitation.

Exploit ScenarioDerived

An attacker induces a victim (or an automated pipeline) to run pwhois against a unicode domain name containing an uppercase non-ASCII letter or a non-NFC label, for example a label of U+00C9 followed by 'cole'. Because pwhois skips IDNA mapping/normalization, it encodes to 'xn--cole-pka' instead of the correct 'xn--cole-9oa' and queries WHOIS for a different, attacker-controllable domain, returning misleading registrant/ownership data the victim then trusts. No public exploit code exists; exploitation is low-complexity but depends on the victim choosing to look up a crafted name.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 06, 2026

Improper Unicode encoding in the pwhois command-line tool shipped with Net::Whois::Raw before 2.99044 for Perl causes WHOIS lookups for certain internationalized domain names to be sent for the wrong domain, disclosing the queried name to an unrelated registry and returning results for the incorrect domain; the Net::Whois::Raw library modules themselves are not affected. The flaw (CWE-176, CVSS 3.1 5.4, vector AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N) is unauthenticated but requires user interaction - the victim must run pwhois against a unicode label that pwhois does not lowercase (i.e., contains uppercase letters other than ASCII/Cyrillic, or is not in NFC form) - and only the CLI path is impacted. EPSS is low at 0.18% (7th percentile), no public exploit code exists, there is no CISA KEV entry indicating active exploitation, and a vendor patch is available in release 2.99044.

RemediationAI

Vendor-released patch: upgrade Net::Whois::Raw to version 2.99044 or later (MetaCPAN release NALOBIN/Net-Whois-Raw-2.99044), which is the primary and sufficient fix; distributions that backport rather than upgrade can apply the vendor-supplied patch https://security.metacpan.org/patches/N/Net-Whois-Raw/2.99043/CVE-2026-19954-r1.patch. If upgrading immediately is not possible, the practical compensating control is to avoid invoking pwhois with unicode/IDN domain names, or to pre-convert any IDN to its correct A-label with a proper IDNA implementation (for example Net::IDN::Encode's domain_to_ascii, as the upstream PR does) before passing it to pwhois - with the trade-off that this adds a manual preprocessing step and still fails if the operator forgets to normalize; ASCII-only domains and correctly formatted IDN lookups are unaffected and require no change. Consumers that use the Net::Whois::Raw library API rather than the pwhois CLI need no remediation for this specific CVE. Because no code execution, credential exposure, or server-side impact is involved (CVSS 5.4, low EPSS), patch application can be scheduled by normal maintenance rather than treated as an emergency; see the changelog and CPANSec advisory at https://seclists.org/oss-sec/2026/q4/48 for verification details.

Affected ProductsAI

Net::Whois::Raw versions before 2.99044 for Perl are affected, specifically via the bundled pwhois command-line tool (bin/pwhois); the Net::Whois::Raw library modules are explicitly not affected, so applications that call the library API directly are not exposed. No CPE strings were supplied with the advisory data, so identification should be based on the distribution name and version rather than CPE matching. Affected installs are recognizable by any version of Net::Whois::Raw below 2.99044 obtained from CPAN (MetaCPAN distribution Net-Whois-Raw). The vendor changelog at https://metacpan.org/release/NALOBIN/Net-Whois-Raw-2.99044/changes documents the fix, the upstream issue is tracked at https://github.com/regru/Net-Whois-Raw/issues/34, and the code change is visible in https://github.com/regru/Net-Whois-Raw/pull/35; additional context is available in the CPANSec advisory on the oss-security mailing list (https://seclists.org/oss-sec/2026/q4/48), the VulDB entry https://vuldb.com/vuln/413521, and EUVD-2026-92267.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-176 (Improper Handling of Unicode Encoding): to_punycode() in bin/pwhois hand-rolls A-label generation by calling Net::IDN::Punycode::encode_punycode() on each non-ASCII label and prepending 'xn--', after only lowercasing ASCII and Cyrillic characters. This bypasses the IDNA mapping and normalization stages required by RFC 5891 §5.2 (and flagged in the Net::IDN::Punycode documentation WARNING), so labels containing other uppercase characters or labels not in Unicode NFC form encode to a different A-label than their correct IDNA form - for instance U+00C9 followed by 'cole' yields 'xn--cole-pka' instead of 'xn--cole-9oa'. Because the A-label is what is transmitted to the WHOIS server, the query targets a registrable domain the user never intended, which both leaks the intended name to the wrong registry and returns misleading registration data. The upstream fix in pull request 35 replaces Net::IDN::Punycode with Net::IDN::Encode's domain_to_ascii(), which performs full IDNA processing; only the pwhois CLI entry point is affected while the Net::Whois::Raw library API remains safe.

Know when Perl gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (CPANSec) PRIMARY 5.4 MEDIUM
AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
vuln.today AI 5.4 MEDIUM

User must invoke the CLI against a crafted IDN (UI:R); no auth (PR:N); impact is limited to disclosure of and reliance on wrong WHOIS data (C:L/I:L, A:N); AV:N is retained but is borderline for a local CLI tool.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (CPANSec).

CVSS VectorVendor: CPANSec

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

2
CVSS changed
Oct 06, 2026 - 18:22 NVD
5.4 (MEDIUM)
CVE Published
Oct 05, 2026 - 06:54 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

Net::Whois::Raw versions before 2.99044 for Perl ship a pwhois command-line tool that queries WHOIS for the wrong domain for unicode domain names.

pwhois encodes each non-ASCII label directly using Net::IDN::Punycode and prepends xn--. Apart from lowercasing ASCII and Cyrillic letters, it skips the IDNA mapping and normalization steps, so a label with other uppercase letters, or not in NFC, encodes to a different A-label than its IDNA form. For example, a label of U+00C9 followed by "cole" encodes to "xn--cole-pka" rather than "xn--cole-9oa".

The Net::Whois::Raw library modules are not affected.

Threat Intelligence Overview

EPSS Score
0.2%
Top 93% exploitable
Prevalence
Low
niche Perl CPAN WHOIS module; only the CLI tool is affected
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

27
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +27
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Perl

View all
CVE-2012-6329 HIGH POC
7.5 Jan 04

The _compile function in Maketext.pm in the Locale::Maketext implementation in Perl before 5.17.7 does not properly hand

CVE-2017-12814 CRITICAL POC
9.8 Sep 28

Stack-based buffer overflow in the CPerlHost::Add method in win32/perlhost.h in Perl before 5.24.3-RC1 and 5.26.x before

CVE-2015-8608 CRITICAL POC
9.8 Feb 07

The VDir::MapPathA and VDir::MapPathW functions in Perl 5.22 allow remote attackers to cause a denial of service (out-of

CVE-2018-18314 CRITICAL POC
9.8 Dec 07

Perl before 5.26.3 has a buffer overflow via a crafted regular expression that triggers invalid write operations. Rated

CVE-2018-18312 CRITICAL POC
9.8 Dec 05

Perl before 5.26.3 and 5.28.0 before 5.28.1 has a buffer overflow via a crafted regular expression that triggers invalid

CVE-2018-18313 CRITICAL POC
9.1 Dec 07

Perl before 5.26.3 has a buffer over-read via a crafted regular expression that triggers disclosure of sensitive informa

CVE-2016-2381 HIGH
7.5 Apr 08

Perl might allow context-dependent attackers to bypass the taint protection mechanism in a child process via duplicate e

CVE-2023-31484 HIGH POC
8.1 Apr 29

CPAN.pm before 2.35 does not verify TLS certificates when downloading distributions over HTTPS. Rated high severity (CVS

CVE-2016-6185 HIGH POC
7.8 Aug 02

The XSLoader::load method in XSLoader in Perl does not properly locate .so files when called in a string eval, which mig

CVE-2018-12015 HIGH POC
7.5 Jun 07

In Perl through 5.26.2, the Archive::Tar module allows remote attackers to bypass a directory-traversal protection mecha

CVE-2020-10543 HIGH
8.2 Jun 05

Perl before 5.30.3 on 32-bit platforms allows a heap-based buffer overflow because nested regular expression quantifiers

CVE-2015-8853 HIGH
7.5 May 25

The (1) S_reghop3, (2) S_reghop4, and (3) S_reghopmaybe3 functions in regexec.c in Perl before 5.24.0 allow context-depe

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy