CGI versions before 5.00 for Perl allow the POSTDATA, PUTDATA, PATCHDATA and XForms:Model parameters to be set from the query string or form fields.

CGI stores a non-form request body under POSTDATA, PUTDATA or PATCHDATA, and an XForms body under XForms:Model, but also accepts these names from the query string, a form field or a multipart part, so an application cannot tell a client-sent value from the real body.

A cross-site HTML form can post POSTDATA={"admin":true} to an endpoint that reads JSON from param('POSTDATA'), a request forgery that needs no CORS preflight.

Project Subscriptions

No data.

Advisories

No advisories yet.

Fixes

Solution

Upgrade to CGI 5.00 or later.


Workaround

For deployments that cannot upgrade, check the request Content-Type before trusting param('POSTDATA').

History

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

Type Values Removed Values Added
Description CGI versions before 5.00 for Perl allow the POSTDATA, PUTDATA, PATCHDATA and XForms:Model parameters to be set from the query string or form fields. CGI stores a non-form request body under POSTDATA, PUTDATA or PATCHDATA, and an XForms body under XForms:Model, but also accepts these names from the query string, a form field or a multipart part, so an application cannot tell a client-sent value from the real body. A cross-site HTML form can post POSTDATA={"admin":true} to an endpoint that reads JSON from param('POSTDATA'), a request forgery that needs no CORS preflight.
Title CGI versions before 5.00 for Perl allow the POSTDATA, PUTDATA, PATCHDATA and XForms:Model parameters to be set from the query string or form fields
Weaknesses CWE-352
References

Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-11-03T23:40:33.770Z

Reserved: 2026-11-02T17:41:07.710Z

Link: CVE-2026-120640

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

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

Link: CVE-2026-120640

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.

Weaknesses