Debian Package Tracker
Register | Log in
Subscribe

libnet-cidr-set-perl

Net::CIDR::Set perl module to manipulate sets of IP addresses

Choose email to subscribe with

general
  • source: libnet-cidr-set-perl (main)
  • version: 0.23-1
  • maintainer: Debian Perl Group (archive) (DMD) (LowNMU)
  • uploaders: Roland Rosenfeld [DMD]
  • arch: all
  • std-ver: 4.7.4
  • VCS: Git (Browse, QA)
versions [more versions can be listed by madison] [old versions available from snapshot.debian.org]
[pool directory]
  • o-o-stable: 0.13-3
  • oldstable: 0.13-4
  • stable: 0.15-1
  • stable-p-u: 0.15-1+deb13u1
  • testing: 0.23-1
  • unstable: 0.23-1
versioned links
  • 0.13-3: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 0.13-4: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 0.15-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 0.15-1+deb13u1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 0.23-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
binaries
  • libnet-cidr-set-perl
action needed
5 security issues in bullseye high

There are 5 open security issues in bullseye.

1 important issue:
  • CVE-2026-19566: Net::CIDR::Set versions before 0.23 for Perl allow memory exhaustion and malformed set ranges via unbounded IPv6 prefix lengths. The _encode method accepts any prefix length matching `(0|[1-9][0-9]*)` and passes it to _width2bits(), which builds the mask as `'1' x ($width + 8)`, one character per bit. The _inc() method then unpacks the packed mask into a Perl array of one scalar per byte, so the prefix length alone sets the allocation size: `::/100000000` builds a 100 MB string and a 12.5 million element array. The value being tested is parsed, not just the configured ranges: contains() builds a set from its argument, and _guess_coder() tries the IPv4 coder and then the IPv6 coder, so an IPv4-only set expands an oversized IPv6 prefix length before the mixed address width check rejects it. Any caller that passes untrusted input to contains() or add() can exhaust process memory. A prefix length above 128 is also stored as a range that does not match the requested block: 2001:db8::/129 stringifies back unchanged, contains() of its own base address returns false, and removing it from a set drops the base address while the set still prints as covering it.
4 issues postponed or untriaged:
  • CVE-2025-40911: (postponed; to be fixed through a stable update) Net::CIDR::Set versions 0.10 through 0.13 for Perl does not properly handle leading zero characters in IP CIDR address strings, which could allow attackers to bypass access control that is based on IP addresses. Leading zeros are used to indicate octal numbers, which can confuse users who are intentionally using octal notation, as well as users who believe they are using decimal notation. Net::CIDR::Set used code from Net::CIDR::Lite, which had a similar vulnerability CVE-2021-47154.
  • CVE-2026-49940: (postponed; to be fixed through a stable update) Net::CIDR::Set versions through 0.20 for Perl accept non-ASCII IP addresses and netmasks. Unicode digits such as the Arabic-Indic One (U+0661) were accepted but not properly parsed as numbers. This could allow network masks to accept larger networks.
  • CVE-2026-49941: (postponed; to be fixed through a stable update) 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.
  • CVE-2026-49942: (postponed; to be fixed through a stable update) Net::CIDR::Set versions through 0.20 for Perl did not validate network masks. The mask portion of a network mask could contain Unicode digits such as the Arabic-Indic One (U+0661), or non-digits, which were ignored. This could allow network masks to accept larger networks. Leading zeros were also accepted, but treated as decimal instead of octal. This could lead to confusion about what networks are acceptable.
Created: 2026-08-12 Last update: 2026-08-17 00:31
5 security issues in bookworm high

There are 5 open security issues in bookworm.

1 important issue:
  • CVE-2026-19566: Net::CIDR::Set versions before 0.23 for Perl allow memory exhaustion and malformed set ranges via unbounded IPv6 prefix lengths. The _encode method accepts any prefix length matching `(0|[1-9][0-9]*)` and passes it to _width2bits(), which builds the mask as `'1' x ($width + 8)`, one character per bit. The _inc() method then unpacks the packed mask into a Perl array of one scalar per byte, so the prefix length alone sets the allocation size: `::/100000000` builds a 100 MB string and a 12.5 million element array. The value being tested is parsed, not just the configured ranges: contains() builds a set from its argument, and _guess_coder() tries the IPv4 coder and then the IPv6 coder, so an IPv4-only set expands an oversized IPv6 prefix length before the mixed address width check rejects it. Any caller that passes untrusted input to contains() or add() can exhaust process memory. A prefix length above 128 is also stored as a range that does not match the requested block: 2001:db8::/129 stringifies back unchanged, contains() of its own base address returns false, and removing it from a set drops the base address while the set still prints as covering it.
4 issues postponed or untriaged:
  • CVE-2025-40911: (needs triaging) Net::CIDR::Set versions 0.10 through 0.13 for Perl does not properly handle leading zero characters in IP CIDR address strings, which could allow attackers to bypass access control that is based on IP addresses. Leading zeros are used to indicate octal numbers, which can confuse users who are intentionally using octal notation, as well as users who believe they are using decimal notation. Net::CIDR::Set used code from Net::CIDR::Lite, which had a similar vulnerability CVE-2021-47154.
  • CVE-2026-49940: (needs triaging) Net::CIDR::Set versions through 0.20 for Perl accept non-ASCII IP addresses and netmasks. Unicode digits such as the Arabic-Indic One (U+0661) were accepted but not properly parsed as numbers. This could allow network masks to accept larger networks.
  • CVE-2026-49941: (needs triaging) 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.
  • CVE-2026-49942: (needs triaging) Net::CIDR::Set versions through 0.20 for Perl did not validate network masks. The mask portion of a network mask could contain Unicode digits such as the Arabic-Indic One (U+0661), or non-digits, which were ignored. This could allow network masks to accept larger networks. Leading zeros were also accepted, but treated as decimal instead of octal. This could lead to confusion about what networks are acceptable.
Created: 2026-08-12 Last update: 2026-08-17 00:31
1 low-priority security issue in trixie low

There is 1 open security issue in trixie.

1 issue left for the package maintainer to handle:
  • CVE-2026-19566: (needs triaging) Net::CIDR::Set versions before 0.23 for Perl allow memory exhaustion and malformed set ranges via unbounded IPv6 prefix lengths. The _encode method accepts any prefix length matching `(0|[1-9][0-9]*)` and passes it to _width2bits(), which builds the mask as `'1' x ($width + 8)`, one character per bit. The _inc() method then unpacks the packed mask into a Perl array of one scalar per byte, so the prefix length alone sets the allocation size: `::/100000000` builds a 100 MB string and a 12.5 million element array. The value being tested is parsed, not just the configured ranges: contains() builds a set from its argument, and _guess_coder() tries the IPv4 coder and then the IPv6 coder, so an IPv4-only set expands an oversized IPv6 prefix length before the mixed address width check rejects it. Any caller that passes untrusted input to contains() or add() can exhaust process memory. A prefix length above 128 is also stored as a range that does not match the requested block: 2001:db8::/129 stringifies back unchanged, contains() of its own base address returns false, and removing it from a set drops the base address while the set still prints as covering it.

You can find information about how to handle this issue in the security team's documentation.

3 issues that should be fixed with the next stable update:
  • CVE-2026-49940: Net::CIDR::Set versions through 0.20 for Perl accept non-ASCII IP addresses and netmasks. Unicode digits such as the Arabic-Indic One (U+0661) were accepted but not properly parsed as numbers. This could allow network masks to accept larger networks.
  • CVE-2026-49941: 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.
  • CVE-2026-49942: Net::CIDR::Set versions through 0.20 for Perl did not validate network masks. The mask portion of a network mask could contain Unicode digits such as the Arabic-Indic One (U+0661), or non-digits, which were ignored. This could allow network masks to accept larger networks. Leading zeros were also accepted, but treated as decimal instead of octal. This could lead to confusion about what networks are acceptable.
Created: 2026-08-12 Last update: 2026-08-17 00:31
news
[rss feed]
  • [2026-08-17] libnet-cidr-set-perl 0.23-1 MIGRATED to testing (Debian testing watch)
  • [2026-08-11] Accepted libnet-cidr-set-perl 0.23-1 (source) into unstable (Roland Rosenfeld)
  • [2026-07-14] Accepted libnet-cidr-set-perl 0.15-1+deb13u1 (source) into proposed-updates (Debian FTP Masters) (signed by: Roland Rosenfeld)
  • [2026-06-18] libnet-cidr-set-perl 0.22-1 MIGRATED to testing (Debian testing watch)
  • [2026-06-14] Accepted libnet-cidr-set-perl 0.22-1 (source) into unstable (Roland Rosenfeld)
  • [2026-06-08] libnet-cidr-set-perl 0.21-1 MIGRATED to testing (Debian testing watch)
  • [2026-06-03] Accepted libnet-cidr-set-perl 0.21-1 (source) into unstable (Roland Rosenfeld)
  • [2026-05-07] libnet-cidr-set-perl 0.20-1 MIGRATED to testing (Debian testing watch)
  • [2026-04-30] Accepted libnet-cidr-set-perl 0.20-1 (source) into unstable (Roland Rosenfeld)
  • [2025-08-19] libnet-cidr-set-perl 0.19-1 MIGRATED to testing (Debian testing watch)
  • [2025-08-15] Accepted libnet-cidr-set-perl 0.19-1 (source) into unstable (Roland Rosenfeld)
  • [2025-06-17] libnet-cidr-set-perl 0.15-1 MIGRATED to testing (Debian testing watch)
  • [2025-05-28] Accepted libnet-cidr-set-perl 0.15-1 (source) into unstable (Roland Rosenfeld)
  • [2023-12-08] libnet-cidr-set-perl 0.13-5 MIGRATED to testing (Debian testing watch)
  • [2023-12-04] Accepted libnet-cidr-set-perl 0.13-5 (source) into unstable (gregor herrmann)
  • [2022-10-11] libnet-cidr-set-perl 0.13-4 MIGRATED to testing (Debian testing watch)
  • [2022-10-08] Accepted libnet-cidr-set-perl 0.13-4 (source) into unstable (Roland Rosenfeld)
  • [2020-12-09] libnet-cidr-set-perl 0.13-3 MIGRATED to testing (Debian testing watch)
  • [2020-12-06] Accepted libnet-cidr-set-perl 0.13-3 (source) into unstable (Roland Rosenfeld)
  • [2019-01-29] libnet-cidr-set-perl 0.13-2 MIGRATED to testing (Debian testing watch)
  • [2019-01-27] Accepted libnet-cidr-set-perl 0.13-2 (source all) into unstable (Roland Rosenfeld)
  • [2018-07-29] libnet-cidr-set-perl 0.13-1 MIGRATED to testing (Debian testing watch)
  • [2018-07-27] Accepted libnet-cidr-set-perl 0.13-1 (source all) into unstable, unstable (Roland Rosenfeld)
bugs [bug history graph]
  • all: 0
links
  • homepage
  • lintian
  • buildd: logs, reproducibility
  • popcon
  • browse source code
  • other distros
  • security tracker
  • debci
ubuntu Ubuntu logo [Information about Ubuntu for Debian Developers]
  • version: 0.23-1

Debian Package Tracker — Copyright 2013-2025 The Distro Tracker Developers
Report problems to the tracker.debian.org pseudo-package in the Debian BTS.
Documentation — Bugs — Git Repository — Contributing