{"id":"CVE-2026-116133","state":"PUBLISHED","title":"HTTP::Body versions before 1.23_01 for Perl allow CPU exhaustion via quadratic rescanning of a multipart body with a missing or malformed boundary","description":"HTTP::Body versions before 1.23_01 for Perl allow CPU exhaustion via quadratic rescanning of a multipart body with a missing or malformed boundary.\n\nBefore the first part, and between parts, the multipart parser searches the whole buffered body for the next boundary. On a miss it keeps everything and searches again from the start when the next chunk arrives. A body with no boundary, or with a delimiter followed by neither CRLF nor \"--\", is therefore rescanned on every chunk, taking time quadratic in its size.\n\nA remote attacker can exhaust worker CPU with a few such requests.","publishedAt":"2026-10-28T17:15:16.522Z","updatedAt":"2026-10-28T17:15:16.522Z","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.23_01","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["HTTP::Body"],"programFiles":["lib/HTTP/Body/MultiPart.pm"],"programRoutines":[{"name":"HTTP::Body::MultiPart::parse_preamble"},{"name":"HTTP::Body::MultiPart::parse_boundary"}],"repo":"https://github.com/libwww-perl/HTTP-Body"}],"references":["https://github.com/libwww-perl/HTTP-Body/commit/bf77eb959bbe1641b77f69eefe98d58ce4c4ec79.patch","https://metacpan.org/release/GETTY/HTTP-Body-1.24/changes"],"weaknesses":["CWE-407"],"ingestedAt":"2026-10-29T20:10:43.281Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/116xxx/CVE-2026-116133.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-116133","state":"PUBLISHED","datePublished":"2026-10-28T17:15:16.522Z","dateUpdated":"2026-10-28T17:15:16.522Z","assignerShortName":"CPANSec","assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateReserved":"2026-10-25T11:14:04.979Z"},"containers":{"cna":{"title":"HTTP::Body versions before 1.23_01 for Perl allow CPU exhaustion via quadratic rescanning of a multipart body with a missing or malformed boundary","descriptions":[{"lang":"en","value":"HTTP::Body versions before 1.23_01 for Perl allow CPU exhaustion via quadratic rescanning of a multipart body with a missing or malformed boundary.\n\nBefore the first part, and between parts, the multipart parser searches the whole buffered body for the next boundary. On a miss it keeps everything and searches again from the start when the next chunk arrives. A body with no boundary, or with a delimiter followed by neither CRLF nor \"--\", is therefore rescanned on every chunk, taking time quadratic in its size.\n\nA remote attacker can exhaust worker CPU with a few such requests."}],"affected":[{"packageName":"HTTP-Body","packageURL":"pkg:cpan/HTTP-Body","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.23_01","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["HTTP::Body"],"programFiles":["lib/HTTP/Body/MultiPart.pm"],"programRoutines":[{"name":"HTTP::Body::MultiPart::parse_preamble"},{"name":"HTTP::Body::MultiPart::parse_boundary"}],"repo":"https://github.com/libwww-perl/HTTP-Body"}],"references":[{"url":"https://github.com/libwww-perl/HTTP-Body/commit/bf77eb959bbe1641b77f69eefe98d58ce4c4ec79.patch","tags":["patch"]},{"url":"https://metacpan.org/release/GETTY/HTTP-Body-1.24/changes","tags":["release-notes"]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-407","description":"CWE-407 Inefficient Algorithmic Complexity","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"CPANSec","orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateUpdated":"2026-10-28T17:15:16.522Z"},"solutions":[{"lang":"en","value":"Upgrade to HTTP-Body 1.23_01 or later."}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"cpansec-cna-tool 0.1"}}}}}