Katalog CVE

CVE-2026-40198

Wysokie
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Wersje Net::CIDR::Lite przed 0.23 dla Perla nie weryfikują liczby grup IPv6, co może prowadzić do obejścia kontroli dostępu IP. Funkcja _pack_ipv6() akceptuje niepoprawne adresy IPv6, co skutkuje błędnymi wartościami długości.

Ocena ryzyka

To niedopatrzenie może umożliwić nieautoryzowany dostęp do zasobów, ponieważ funkcje porównujące mogą błędnie klasyfikować adresy jako mieszczące się w dozwolonym zakresie.

Rekomendacja

Zaleca się aktualizację do wersji Net::CIDR::Lite 0.23 lub nowszej, aby usunąć tę podatność oraz przeprowadzenie przeglądu reguł ACL w celu zapewnienia ich poprawności.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

Net::CIDR::Lite versions before 0.23 for Perl does not validate IPv6 group count, which may allow IP ACL bypass. _pack_ipv6() does not check that uncompressed IPv6 addresses (without ::) have exactly 8 hex groups. Inputs like "abcd", "1:2:3", or "1:2:3:4:5:6:7" are accepted and produce packed values of wrong length (3, 7, or 15 bytes instead of 17). The packed values are used internally for mask and comparison operations. find() and bin_find() use Perl string comparison (lt/gt) on these values, and comparing strings of different lengths gives wrong results. This can cause find() to incorrectly report an address as inside or outside a range. Example: my $cidr = Net::CIDR::Lite->new("::/8"); $cidr->find("1:2:3"); # invalid input, incorrectly returns true This is the same class of input validation issue as CVE-2021-47154 (IPv4 leading zeros) previously fixed in this module. See also CVE-2026-40199, a related issue in the same function affecting IPv4 mapped IPv6 addresses.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS