CVE-2026-40198: CWE-1286 Improper Validation of Syntactic Correctness of Input in STIGTSP Net::CIDR::Lite
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.
AI Analysis
Technical Summary
The vulnerability in Net::CIDR::Lite (pre-0.23) arises from _pack_ipv6() not verifying that uncompressed IPv6 addresses contain exactly 8 hex groups. Inputs with fewer groups (e.g., "abcd", "1:2:3", "1:2:3:4:5:6:7") are accepted and produce packed values of incorrect length. These malformed packed values are used in string comparisons within find() and bin_find(), which rely on Perl string comparison operators. Because string comparisons of different lengths yield incorrect results, find() may incorrectly report an address as within or outside a specified CIDR range, enabling potential IP ACL bypass. This is a syntactic input validation flaw classified under CWE-1286 and is related to CVE-2026-40199, which affects IPv4 mapped IPv6 addresses in the same function.
Potential Impact
The vulnerability allows attackers to bypass IP access control lists by exploiting improper validation of IPv6 address syntax. This can lead to unauthorized access or incorrect filtering decisions in systems relying on Net::CIDR::Lite for IP range checks. The CVSS score of 7.5 (high) reflects the network attack vector, low complexity, no privileges required, no user interaction, and an integrity impact without confidentiality or availability impact.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or temporary workaround is currently documented. Users should monitor the vendor's advisories for updates and consider additional validation of IPv6 input addresses outside of Net::CIDR::Lite until a patch is available.
CVE-2026-40198: CWE-1286 Improper Validation of Syntactic Correctness of Input in STIGTSP Net::CIDR::Lite
Description
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.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in Net::CIDR::Lite (pre-0.23) arises from _pack_ipv6() not verifying that uncompressed IPv6 addresses contain exactly 8 hex groups. Inputs with fewer groups (e.g., "abcd", "1:2:3", "1:2:3:4:5:6:7") are accepted and produce packed values of incorrect length. These malformed packed values are used in string comparisons within find() and bin_find(), which rely on Perl string comparison operators. Because string comparisons of different lengths yield incorrect results, find() may incorrectly report an address as within or outside a specified CIDR range, enabling potential IP ACL bypass. This is a syntactic input validation flaw classified under CWE-1286 and is related to CVE-2026-40199, which affects IPv4 mapped IPv6 addresses in the same function.
Potential Impact
The vulnerability allows attackers to bypass IP access control lists by exploiting improper validation of IPv6 address syntax. This can lead to unauthorized access or incorrect filtering decisions in systems relying on Net::CIDR::Lite for IP range checks. The CVSS score of 7.5 (high) reflects the network attack vector, low complexity, no privileges required, no user interaction, and an integrity impact without confidentiality or availability impact.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or temporary workaround is currently documented. Users should monitor the vendor's advisories for updates and consider additional validation of IPv6 input addresses outside of Net::CIDR::Lite until a patch is available.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- CPANSec
- Date Reserved
- 2026-04-09T22:12:06.334Z
- Cvss Version
- null
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 69d9743b1cc7ad14daee266d
Added to database: 4/10/2026, 10:05:47 PM
Last enriched: 4/18/2026, 2:43:55 PM
Last updated: 5/26/2026, 7:56:27 AM
Views: 90
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.