CVE-2021-4456

Net::CIDR versions before 0.24 for Perl mishandle leading zeros in IP CIDR addresses, which may have unspecified impact

Published Feb 27, 2026 CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Description
Net::CIDR versions before 0.24 for Perl mishandle leading zeros in IP CIDR addresses, which may have unspecified impact.

The functions `addr2cidr` and `cidrlookup` may return leading zeros in a CIDR string, which may in turn be parsed as octal numbers by subsequent users. In some cases an attacker may be able to leverage this to bypass access controls based on IP addresses.

The documentation advises validating untrusted CIDR strings with the `cidrvalidate` function. However, this mitigation is optional and not enforced by default. In practice, users may call `addr2cidr` or `cidrlookup` with untrusted input and without validation, incorrectly assuming that this is safe.

Remediation

Vendor Solution

Use the `cidrvalidate` function on untrusted input before passing to the affected functions or upgrade to version 0.24 or later

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Ubuntu USN Ubuntu USN USN-8110-1 Net-CIDR vulnerability
History
Type Values Removed Values Added
First Time appeared Mrsam net\
CPEs cpe:2.3:a:mrsam:net\:\:cidr:*:*:*:*:*:perl:*:*
Vendors & Products Mrsam net\
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Mrsam
Mrsam net::cidr
Vendors & Products Mrsam
Mrsam net::cidr
Type Values Removed Values Added
Description Net::CIDR versions before 0.24 for Perl mishandle leading zeros in IP CIDR addresses, which may have unspecified impact. The functions `addr2cidr` and `cidrlookup` may return leading zeros in a CIDR string, which may in turn be parsed as octal numbers by subsequent users. In some cases an attacker may be able to leverage this to bypass access controls based on IP addresses. The documentation advises validating untrusted CIDR strings with the `cidrvalidate` function. However, this mitigation is optional and not enforced by default. In practice, users may call `addr2cidr` or `cidrlookup` with untrusted input and without validation, incorrectly assuming that this is safe.
Title Net::CIDR versions before 0.24 for Perl mishandle leading zeros in IP CIDR addresses, which may have unspecified impact
Weaknesses CWE-704
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
CPANSec
Published
Updated
Feb 27, 2026, 4:53 PM
Reserved
May 18, 2025, 10:36 PM
Status
Analyzed
Published
Feb 27, 2026, 1:16 AM
Modified
Jun 17, 2026, 4:19 AM