Description
CGI versions before 5.00 for Perl allow HTTP header injection via entity decoding after the newline check in header and unchecked values in multipart_start and do_push.

With autoEscape off, header decodes HTML entities in extra header values after its newline check, so an encoded CR or LF reaches the response. multipart_start does not check header values for newlines, and do_push does not check the type it prints in each part.

An application that passes request data into these header values can be made to add headers or split the response.
Published: 2026-11-03
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: HTTP Header Injection
Action: Immediate Patch
AI Analysis

Impact

The flaw stems from CGI.pm versions before 5.00 that perform HTML entity decoding on header values after a newline check, allowing an encoded carriage return or line feed to slip through. An attacker capable of supplying data to the header, multipart_start, or do_push calls can inject arbitrary HTTP headers or split the response, enabling cache poisoning, injection of malicious content, or facilitation of click‑jacking and other downstream attacks.

Affected Systems

Perl’s CGI.pm module, versions 4.x through 4.71. Any web application that incorporates these modules without prior input validation or sanitization remains vulnerable to header injection and response splitting.

Risk and Exploitability

The CVSS score is 6.5 and no EPSS data are available, indicating the exploitation probability is not quantified. The vulnerability is not reported in CISA’s KEV catalog, so no publicly known exploits exist at this time. Nonetheless, if an attacker can influence data passed into header functions, they can add arbitrary headers or split the response. This could compromise confidentiality by delivering malicious content, disrupt availability through cache poisoning, or serve as a foothold for further attacks. The likely attack vector is remote and depends on applications passing untrusted input into CGI header functions.

Generated by OpenCVE AI on November 4, 2026 at 14:08 UTC.

Remediation

Vendor Solution

Upgrade to CGI 5.00 or later.


OpenCVE Recommended Actions

  • Upgrade the CGI.pm module to version 5.00 or later, which removes the unsafe entity decoding path.
  • Validate or sanitize all user‑supplied data that will be used in header, multipart_start, or do_push calls to eliminate CR and LF characters before they are processed.
  • If an immediate upgrade is not possible, intercept requests containing encoded CR or LF in fields destined for CGI header functions and reject or escape them so that no newlines reach the header construction phase.

Generated by OpenCVE AI on November 4, 2026 at 14:08 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

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

Type Values Removed Values Added
Weaknesses CWE-93
References
Metrics threat_severity

None

cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N'}

threat_severity

Moderate


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

Type Values Removed Values Added
Description CGI versions before 5.00 for Perl allow HTTP header injection via entity decoding after the newline check in header and unchecked values in multipart_start and do_push. With autoEscape off, header decodes HTML entities in extra header values after its newline check, so an encoded CR or LF reaches the response. multipart_start does not check header values for newlines, and do_push does not check the type it prints in each part. An application that passes request data into these header values can be made to add headers or split the response.
Title CGI versions before 5.00 for Perl allow HTTP header injection via entity decoding after the newline check in header and unchecked values in multipart_start and do_push
Weaknesses CWE-113
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

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

Reserved: 2026-11-02T17:40:59.077Z

Link: CVE-2026-120639

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

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

Link: CVE-2026-120639

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-11-03T23:40:30Z

Links: CVE-2026-120639 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-11-04T14:15:15Z

Weaknesses
  • CWE-113

    Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting')

  • CWE-93

    Improper Neutralization of CRLF Sequences ('CRLF Injection')