CGI versions before 5.00 for Perl allow an infinite loop on a short request body when $DISABLE_UPLOADS is set.

When $CGI::PUTDATA_UPLOAD or an upload hook is set, read_postdata_putdata takes a request body that is not a form submission. With $CGI::DISABLE_UPLOADS set, it discards the body by reading until Content-Length bytes have arrived. Once a body shorter than its Content-Length runs out, every read returns 0, so the loop never ends.

A client can keep a server process spinning with one such request.

Project Subscriptions

No data.

Advisories

No advisories yet.

Fixes

Solution

Upgrade to CGI 5.00 or later.


Workaround

No workaround given by the vendor.

History

Wed, 04 Nov 2026 00:00:00 +0000

Type Values Removed Values Added
Description CGI versions before 5.00 for Perl allow an infinite loop on a short request body when $DISABLE_UPLOADS is set. When $CGI::PUTDATA_UPLOAD or an upload hook is set, read_postdata_putdata takes a request body that is not a form submission. With $CGI::DISABLE_UPLOADS set, it discards the body by reading until Content-Length bytes have arrived. Once a body shorter than its Content-Length runs out, every read returns 0, so the loop never ends. A client can keep a server process spinning with one such request.
Title CGI versions before 5.00 for Perl allow an infinite loop on a short request body when $DISABLE_UPLOADS is set
Weaknesses CWE-835
References

Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-11-03T23:41:17.179Z

Reserved: 2026-11-02T17:59:11.920Z

Link: CVE-2026-120651

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-04T00:17:26.633

Modified: 2026-11-04T00:17:26.633

Link: CVE-2026-120651

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-04T08:15:10Z

Weaknesses