Security Advisories (1)
CVE-2021-4456 (2026-02-27)

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.

Changes for version 0.20

  • 2019-04-16 Sam Varshavchik <mrsam@courier-mta.com>
    • _ipcmp: handle comparison of mixed IPv4 and IPv6-specified addresses, allowing cidrlookup() to look up IPv6-mapped IPv4 addresses in IPv4 address ranges, and vice versa.

Modules

Manipulate IPv4/IPv6 netblocks in CIDR notation