{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-77781",
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "state": "PUBLISHED",
        "assignerShortName": "CPANSec",
        "dateReserved": "2026-08-21T11:41:39.920Z",
        "datePublished": "2026-08-21T23:57:02.918Z",
        "dateUpdated": "2026-08-22T04:12:19.600Z"
    },
    "containers": {
        "cna": {
            "affected": [
                {
                    "collectionURL": "https://cpan.org/modules",
                    "defaultStatus": "unaffected",
                    "modules": [
                        "Tie::Hash::Regex"
                    ],
                    "packageName": "Tie-Hash-Regex",
                    "packageURL": "pkg:cpan/Tie-Hash-Regex",
                    "programFiles": [
                        "lib/Tie/Hash/Regex.pm"
                    ],
                    "programRoutines": [
                        {
                            "name": "Tie::Hash::Regex::FETCH"
                        },
                        {
                            "name": "Tie::Hash::Regex::EXISTS"
                        },
                        {
                            "name": "Tie::Hash::Regex::DELETE"
                        }
                    ],
                    "repo": "https://github.com/davorg-cpan/tie-hash-regex",
                    "versions": [
                        {
                            "lessThan": "2.0.0",
                            "status": "affected",
                            "version": "0",
                            "versionType": "custom"
                        }
                    ]
                }
            ],
            "descriptions": [
                {
                    "lang": "en",
                    "value": "Tie::Hash::Regex versions before 2.0.0 for Perl will throw an exception on unparseable lookup keys.\n\nThe FETCH, EXISTS and DELETE methods throw an exception when on malformed regular expressions.\n\nEach method falls back to a regex match when the key is not already stored in the hash, compiling the caller's key with a bare qr// and no eval guard. A key that is not a valid regular expression pattern, such as a single unmatched bracket, dies.\n\nAn application that looks up externally supplied strings in a tied hash will die on an invalid key."
                }
            ],
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-248",
                            "description": "CWE-248 Uncaught Exception",
                            "lang": "en",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "providerMetadata": {
                "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
                "shortName": "CPANSec",
                "dateUpdated": "2026-08-21T23:57:02.918Z"
            },
            "references": [
                {
                    "tags": [
                        "release-notes"
                    ],
                    "url": "https://metacpan.org/release/DAVECROSS/Tie-Hash-Regex-2.0.0/source/Changes"
                },
                {
                    "tags": [
                        "patch"
                    ],
                    "url": "https://github.com/davorg-cpan/tie-hash-regex/commit/4239732cb76233543e2ded8ff5e0f238af152e0c.patch"
                }
            ],
            "solutions": [
                {
                    "lang": "en",
                    "value": "Upgrade to Tie::Hash::Regex version 2.0.0 or later."
                }
            ],
            "source": {
                "discovery": "UNKNOWN"
            },
            "title": "Tie::Hash::Regex versions before 2.0.0 for Perl will throw an exception on unparseable lookup keys",
            "workarounds": [
                {
                    "lang": "en",
                    "value": "For deployments that cannot be upgraded, ensure that calls to check the existence of keys, fetch values from keys or delete keys are wrapped in an eval block."
                }
            ],
            "x_generator": {
                "engine": "cpansec-cna-tool 0.1"
            }
        },
        "adp": [
            {
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "http://www.openwall.com/lists/oss-security/2026/08/22/2"
                    }
                ],
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2026-08-22T04:12:19.600Z"
                }
            }
        ]
    }
}