{"id":"CVE-2026-117500","aliases":["DEBIAN-CVE-2026-117500","EUVD-2026-112276","GHSA-w2gq-c2cx-w9q6","UBUNTU-CVE-2026-117500","openSUSE-SU-2026:12467-1"],"status":"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.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"adp","from":"cve"},"epss":{"day":"2026-11-12","score":0.00452,"percentile":0.39755,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1333"],"published":"2026-10-28T17:17:11Z","modified":"2026-11-07T17:27:06Z","fixes":[{"ecosystem":"Debian:14","package":"libhttp-body-perl","fixed_in":["1.24.01-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-2","1.23-1","1.24.01-1"]},{"source":"osv","ecosystem":"Debian:13","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.23-1","1.24.01-1"]},{"source":"osv","ecosystem":"Debian:14","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.24.01-1"}]}],"versions":["1.23-1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-1.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.22-2"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.23-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libhttp-body-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.23-1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"perl-HTTP-Body","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.250.0-1.1"}]}],"bundled":3}],"references":[{"url":"https://github.com/libwww-perl/HTTP-Body/commit/9ab46daaede02fb13ea55a7e3ede34c8b918d8ca.patch","tags":["patch","fix","report"]},{"url":"https://github.com/libwww-perl/HTTP-Body/commit/3abc958d78bd84bf4abb87bad79b9432eab7e694.patch","tags":["patch","fix","report"]},{"url":"https://metacpan.org/release/GETTY/HTTP-Body-1.24_01/changes","tags":["release-notes","advisory","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-117500","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-w2gq-c2cx-w9q6"},{"url":"https://cpan.org/modules","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/117xxx/CVE-2026-117500.json","tags":["advisory"]},{"url":"https://github.com/libwww-perl/HTTP-Body","tags":["package"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-117500","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-117500","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-117500","tags":["report"]},{"url":"https://lists.security.metacpan.org/cve-announce/msg/44711935/","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2026-117500","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-117501","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-121006","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2026-117500","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.","status":"published","published":"2026-10-28T17:17:11.051Z","modified":"2026-11-05T21:03:43.961Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"adp"}],"cwes":["CWE-1333"],"updated_at":"2026-11-05T22:55:19.167207Z"}],"euvd":[{"id":"EUVD-2026-112276","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.","status":"published","published":"2026-10-28T17:17:11Z","modified":"2026-11-05T21:03:43Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-05T22:02:09.198589Z"}],"ghsa":[{"id":"GHSA-w2gq-c2cx-w9q6","title":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the...","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.","status":"published","published":"2026-10-28T18:32:13Z","modified":"2026-11-05T21:34:43Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-1333"],"updated_at":"2026-11-05T21:56:36.974002Z"}],"nvd":[{"id":"CVE-2026-117500","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.","status":"published","published":"2026-10-28T18:17:14.747Z","modified":"2026-11-05T21:18:40.127Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-1333"],"updated_at":"2026-11-05T23:57:22.237283Z"}],"osv":[{"id":"CVE-2026-117500","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.","status":"published","published":"2026-10-28T17:17:11.051Z","modified":"2026-11-07T17:27:06.450228303Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-1333"],"updated_at":"2026-11-07T03:08:01.156605Z"},{"id":"DEBIAN-CVE-2026-117500","description":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload.  For 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.  A 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.","status":"published","published":"2026-10-28T18:17:14.747Z","modified":"2026-11-06T10:04:01.078309791Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-06T10:38:22.758306Z"},{"id":"UBUNTU-CVE-2026-117500","description":"HTTP::Body versions before 1.24_01 for Perl allow CPU exhaustion via regex backtracking on the filename of a multipart upload. For 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. A 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.","status":"published","published":"2026-10-28T18:17:00Z","modified":"2026-11-07T01:45:12.950716779Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-07T01:57:06.567161Z"},{"id":"openSUSE-SU-2026:12467-1","title":"perl-HTTP-Body-1.250.0-1.1 on GA media","description":"These are all security issues fixed in the perl-HTTP-Body-1.250.0-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-11-06T00:00:00Z","modified":"2026-11-07T17:23:15.977731812Z","updated_at":"2026-11-07T17:50:39.727056Z"}]}}
