Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIdentify Perl service accepting IP input
-
DeliverySubmit malformed IP string
-
Exploitadd() invokes _encode()
-
Install_encode() recurses without termination
-
C2Perl worker stack exhausts and crashes
-
ExecuteRepeat to saturate worker pool
-
ImpactService-wide denial of service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Specified type validation
|
| Exploitation Conditions | Exploitation requires that the target application calls Net::CIDR::Set->add() (or another method that funnels through _encode()) on attacker-controlled string input without first validating that the string is a well-formed IPv4 or IPv6 address or CIDR range; any malformed string that fails the internal netmask and range regex checks will trigger the indefinite recursion. No authentication, user interaction, or special platform is required beyond network reachability to such an input path, and the affected module version must be 0.20 or earlier. Exploitation is LIMITED to availability impact (no code execution or data disclosure), and applications that already sanitise IP input upstream - or that do not expose this code path to untrusted data - are not practically reachable. |
| Impact | The CVSS 3.1 vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yields 7.5 (High) and accurately captures the impact profile: network-reachable, no authentication, low complexity, availability-only impact. Real-world risk depends entirely on whether an exposed application passes attacker-controlled strings into Net::CIDR::Set->add(); in such applications (firewall rule builders, ACL parsers, IP allowlist forms, log analyzers, abuse-management tools) the bug is a trivial DoS primitive that crashes a worker per request. EPSS data was not provided in this intelligence packet, the CVE is not listed in CISA KEV, and no public exploit code was identified, so real-world exploitation pressure is currently low to moderate; however, the trigger is so simple that weaponization is essentially the act of submitting any non-IP string, and stack-exhaustion DoS against Perl long-running processes (mod_perl, Mojolicious, Plack/Starman workers) is a realistic concern wherever the module touches untrusted input. |
| Exploit ScenarioDerived | An attacker identifies a web endpoint that accepts an IP or CIDR string (for example an allowlist form, abuse-report API, or firewall management UI) backed by a Perl service using Net::CIDR::Set. They submit a malformed value such as 'notanip' or '999.999.999.999'; the add() method recurses indefinitely, exhausts the worker stack, and the request handler dies. Repeating the request against multiple workers cheaply saturates the application pool and denies service to legitimate users. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 04, 2026
Denial of service in the Perl module Net::CIDR::Set through version 0.20 allows remote unauthenticated attackers to trigger indefinite recursion by submitting malformed IP address strings to the add() method. The flaw stems from missing input validation when parsing addresses, causing the parser to re-enter itself without a termination condition. No public exploit identified at time of analysis, but the issue is trivially reproducible and a fixed version 0.21 has been released on CPAN.
RemediationAI
Upgrade to Net::CIDR::Set 0.21 or later from CPAN (vendor-released patch: 0.21), which adds proper IP address validation in _encode() before recursing; the release notes are at https://metacpan.org/release/RRWO/Net-CIDR-Set-0.21/changes and the coordination advisory is at https://seclists.org/oss-sec/2026/q2/815. If immediate upgrade is not possible, wrap every external call to Net::CIDR::Set->add() with a strict IPv4/IPv6 syntactic validator (for example Net::IP, Data::Validate::IP, or a strict regex) and reject malformed input before it reaches the module, accepting the trade-off that custom validation may diverge from the module's eventual canonical parsing. As an additional containment measure, run Perl workers with a bounded stack or under a supervisor that recycles processes on crash, recognising this only limits blast radius rather than fixing the underlying recursion.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Net::CIDR::Set is a CPAN Perl module by Andy Armstrong (currently maintained under the rrwo namespace) that represents sets of IPv4 and IPv6 CIDR ranges and supports set operations like union, intersection, and membership tests. The add() method funnels its argument through an internal _encode() routine, which first checks whether the input matches a netmask or range syntax; if neither matches, _encode() assumes a single IP and recursively calls itself with the value formatted as a /32 (IPv4) or /128 (IPv6) netmask. Because there is no validation that the value is in fact a syntactically valid IP address, a malformed string fails the netmask check again, the function recurses again, and the cycle continues until the Perl interpreter exhausts the stack. The root cause maps to CWE-1287 (Improper Validation of Specified Type of Input), where the code trusts that the input conforms to a category (IP address) without verifying it.
Know when Net 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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (CPANSec).
CVSS VectorVendor: CPANSec
Lifecycle Timeline
3DescriptionCVE.org
Net::CIDR::Set versions through 0.20 for Perl did not validate IP addresses.
The add method called the _encode method to parse addresses. If the addresses did not look like netmasks or network ranges, then they were assumed to single IP addresses and passed back to itself as a 32-bit or 128-bit netmask.
If the argument was not a well-formed IP address, then this would lead to indefinite recursion.
An attacker could use this to cause a denial of service.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Remote code execution is possible in Node.js releases that bundle a vulnerable Brotli decoder: a malformed brotli-compre
.NET and Visual Studio Denial of Service Vulnerability. Rated high severity (CVSS 7.5), this vulnerability is remotely e
Heap-based buffer overflow (CWE-122) in Microsoft .NET and Visual Studio allows a network-based unauthenticated attacker
Heap-based buffer overflow in Microsoft Visual Studio 2022 and 2026 enables network-delivered remote code execution when
Privilege escalation in Microsoft .NET runtimes (8.0, 9.0, and 10.0) and Microsoft Visual Studio 2022 and 2026 results f
Heap-based buffer overflow (CWE-122) in Microsoft .NET enables local code execution across all actively supported .NET r
Local code execution via out-of-bounds write in Microsoft .NET allows an unauthenticated local attacker to achieve full
Local privilege escalation in Microsoft .NET (versions 8.0, 9.0, and 10.0) and Microsoft Visual Studio 2022/2026 allows
Denial-of-service in Microsoft .NET runtimes and Visual Studio allows unauthenticated remote attackers to crash or hang
Integer overflow in Microsoft .NET Framework and modern .NET runtimes enables local code execution with full process com
Use-after-free memory corruption in Microsoft's QUIC protocol implementation (MsQuic) exposes sensitive heap memory to u
Same technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Important| Product | Status |
|---|---|
| openSUSE Tumbleweed | Fixed |
EUVD-2026-34298
GHSA-wvxw-q92g-9ghf
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB