{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-19953",
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "state": "PUBLISHED",
        "assignerShortName": "CPANSec",
        "dateReserved": "2026-08-15T21:13:08.480Z",
        "datePublished": "2026-08-31T17:29:42.929Z",
        "dateUpdated": "2026-08-31T17:29:42.929Z"
    },
    "containers": {
        "cna": {
            "affected": [
                {
                    "collectionURL": "https://cpan.org/modules",
                    "defaultStatus": "unaffected",
                    "modules": [
                        "URI"
                    ],
                    "packageName": "URI",
                    "packageURL": "pkg:cpan/URI",
                    "programFiles": [
                        "lib/URI/_idna.pm"
                    ],
                    "programRoutines": [
                        {
                            "name": "URI::_idna::nameprep"
                        }
                    ],
                    "repo": "https://github.com/libwww-perl/URI",
                    "versions": [
                        {
                            "lessThan": "5.36",
                            "status": "affected",
                            "version": "0",
                            "versionType": "custom"
                        }
                    ]
                }
            ],
            "credits": [
                {
                    "lang": "en",
                    "type": "finder",
                    "value": "Naseeb Dangi (naseeb0), Nankai University"
                }
            ],
            "descriptions": [
                {
                    "lang": "en",
                    "value": "URI versions before 5.36 for Perl encode non-NFC host names to non-standard punycode labels via missing normalization in nameprep.\n\nnameprep lowercases each host label but performs no Unicode normalization. IDNA requires a label to be normalized to Form C before it is encoded (RFC 5891), so a label that is not already in NFC is encoded to a different A-label than its normalized form. A label built from the precomposed Devanagari sequence U+0958 U+093E encodes to xn--72b5c without normalization but to xn--11b2fg after NFC normalization, and xn--72b5c does not round-trip back to the original label.\n\nAny caller that reads host() from a URI built from untrusted input and uses it for a security decision (an allow or deny list, an SSRF filter, deduplication, a cache key) sees the non-standard label, while a client that fetches the same URL resolves the NFC form, so the check and the fetch can disagree about the host."
                }
            ],
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-1289",
                            "description": "CWE-1289 Improper Validation of Unsafe Equivalence in Input",
                            "lang": "en",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "providerMetadata": {
                "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
                "shortName": "CPANSec",
                "dateUpdated": "2026-08-31T17:29:42.929Z"
            },
            "references": [
                {
                    "tags": [
                        "patch"
                    ],
                    "url": "https://github.com/libwww-perl/URI/commit/956619a9e94f86d8d2c529b4e06a3674c54a73e7.patch"
                },
                {
                    "tags": [
                        "issue-tracking"
                    ],
                    "url": "https://github.com/libwww-perl/URI/pull/191"
                },
                {
                    "tags": [
                        "release-notes"
                    ],
                    "url": "https://metacpan.org/release/OALDERS/URI-5.36/changes"
                },
                {
                    "tags": [
                        "technical-description"
                    ],
                    "url": "https://www.rfc-editor.org/rfc/rfc5891#section-5.2"
                }
            ],
            "solutions": [
                {
                    "lang": "en",
                    "value": "Upgrade to URI 5.36 or later."
                }
            ],
            "source": {
                "discovery": "UNKNOWN"
            },
            "title": "URI versions before 5.36 for Perl encode non-NFC host names to non-standard punycode labels via missing normalization in nameprep",
            "x_generator": {
                "engine": "cpansec-cna-tool 0.1"
            }
        }
    }
}