CVE-2026-120638: CGI for Perl open redirect via HTML entity decoding in URL

CVE-2026-120638 · Severity: info · Published 2026-11-04

CGI is a widely-used Perl library for building web applications. The redirect() function decodes HTML entities in URLs after the application has already validated them, allowing an attacker to bypass validation and send users to arbitrary external sites. For example, a validated URL like //evil.example/ gets decoded to //evil.example/, turning a local redirect into an open redirect to another domain.

Technologies: Perl CGI. Vendors: Perl.

Quick answers

Is CVE-2026-120638 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-120638 being exploited in the wild.
How severe is CVE-2026-120638?
Informational severity, published 4 November 2026.
Which products and versions are affected?
Perl CGI before 5.00.
Is there a fix for CVE-2026-120638?
Yes: fixed in CGI 5.00. Until then: Do not pass HTML-encoded redirect URLs to the redirect() function; applications must pass unescaped values and handle URL encoding separately at the HTTP layer. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-120638 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-120638?
Check whether you run Perl CGI at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: CGI 5.00

Do not pass HTML-encoded redirect URLs to the redirect() function; applications must pass unescaped values and handle URL encoding separately at the HTTP layer.

Technical details

The redirect() function in CGI.pm, as well as header() and multipart_start(), perform HTML entity decoding on their arguments including Location headers and redirect URLs. This occurs after application-level validation, allowing an attacker to supply encoded entities that decode to dangerous URLs after validation passes. An unauthenticated network attacker can craft a link with HTML-encoded redirect parameters to perform phishing or credential theft attacks.

Affected products

  • Perl CGI before 5.00

Timeline

  • 2026-11-04: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.