{"id":"CVE-2026-117500","state":"PUBLISHED","title":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload","description":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload.\n\nFor every file part, the multipart parser finds the suffix of the uploaded filename by matching the default $basename_regexp, qr/[^.]+(\\.[^\\\\\\/]+)$/, against the whole basename. A basename made of many dots and ending in a backslash makes the regex backtrack in time quadratic in its length.\n\nA remote attacker can exhaust CPU with one request, as a basename of about 32 KB takes several seconds to match and every file part is matched separately.","publishedAt":"2026-10-28T17:17:11.051Z","updatedAt":"2026-10-28T17:17:11.051Z","severity":null,"assigner":"CPANSec","products":["HTTP-Body"],"affected":[{"packageName":"HTTP-Body","packageURL":"pkg:cpan/HTTP-Body","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.24_01","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["HTTP::Body"],"programFiles":["lib/HTTP/Body/MultiPart.pm"],"programRoutines":[{"name":"HTTP::Body::MultiPart::handler"}],"repo":"https://github.com/libwww-perl/HTTP-Body"}],"references":["https://github.com/libwww-perl/HTTP-Body/commit/9ab46daaede02fb13ea55a7e3ede34c8b918d8ca.patch","https://github.com/libwww-perl/HTTP-Body/commit/3abc958d78bd84bf4abb87bad79b9432eab7e694.patch","https://metacpan.org/release/GETTY/HTTP-Body-1.24_01/changes"],"weaknesses":["CWE-1333"],"ingestedAt":"2026-10-29T20:10:52.580Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/117xxx/CVE-2026-117500.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-117500","state":"PUBLISHED","datePublished":"2026-10-28T17:17:11.051Z","dateUpdated":"2026-10-28T17:17:11.051Z","assignerShortName":"CPANSec","assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateReserved":"2026-10-27T08:44:49.796Z"},"containers":{"cna":{"title":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload","descriptions":[{"lang":"en","value":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload.\n\nFor every file part, the multipart parser finds the suffix of the uploaded filename by matching the default $basename_regexp, qr/[^.]+(\\.[^\\\\\\/]+)$/, against the whole basename. A basename made of many dots and ending in a backslash makes the regex backtrack in time quadratic in its length.\n\nA remote attacker can exhaust CPU with one request, as a basename of about 32 KB takes several seconds to match and every file part is matched separately."}],"affected":[{"packageName":"HTTP-Body","packageURL":"pkg:cpan/HTTP-Body","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.24_01","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["HTTP::Body"],"programFiles":["lib/HTTP/Body/MultiPart.pm"],"programRoutines":[{"name":"HTTP::Body::MultiPart::handler"}],"repo":"https://github.com/libwww-perl/HTTP-Body"}],"references":[{"url":"https://github.com/libwww-perl/HTTP-Body/commit/9ab46daaede02fb13ea55a7e3ede34c8b918d8ca.patch","tags":["patch"]},{"url":"https://github.com/libwww-perl/HTTP-Body/commit/3abc958d78bd84bf4abb87bad79b9432eab7e694.patch","tags":["patch"]},{"url":"https://metacpan.org/release/GETTY/HTTP-Body-1.24_01/changes","tags":["release-notes"]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-1333","description":"CWE-1333 Inefficient Regular Expression Complexity","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"CPANSec","orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateUpdated":"2026-10-28T17:17:11.051Z"},"solutions":[{"lang":"en","value":"Upgrade to HTTP-Body 1.24_01 or later."}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"cpansec-cna-tool 0.1"}}}}}