{"id":"CVE-2026-120638","aliases":["AZL-112804","DEBIAN-CVE-2026-120638","EUVD-2026-116605","GHSA-33j8-q94p-w495","UBUNTU-CVE-2026-120638","openSUSE-SU-2026:12465-1"],"status":"published","title":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","severity":{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"adp","from":"cve"},"epss":{"day":"2026-11-12","score":0.0026,"percentile":0.17916,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-180","CWE-601"],"published":"2026-11-03T23:40:27Z","modified":"2026-11-09T18:50:09Z","affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"perl-CGI","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.60-1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.55-1","4.57-1","4.59-1","4.60-1","4.61-1","4.62-1","4.63-1","4.64-1","4.65-1","4.66-1","4.67-1","4.68-1","4.70-1","4.71-1","4.72-1","5.02-1"]},{"source":"osv","ecosystem":"Debian:13","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.68-1","4.70-1","4.71-1","4.72-1","5.02-1"]},{"source":"osv","ecosystem":"Debian:14","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.68-1","4.70-1","4.71-1","4.72-1","5.02-1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.21-1","4.22-1","4.25-1","4.26-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.36-1","4.37-1","4.38-1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.44-1","4.45-1","4.46-1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.51-1","4.53-1","4.54-1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.57-1","4.60-1","4.61-1","4.62-1","4.63-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.71-1build1","4.72-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libcgi-pm-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.68-1","4.71-1","4.71-1build1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"perl-CGI","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.20.0-1.1"}]}],"bundled":20}],"references":[{"url":"https://metacpan.org/release/LEEJO/CGI-4.72/source/lib/CGI.pm","tags":["technical-description","article","report"]},{"url":"https://metacpan.org/release/LEEJO/CGI-5.00/changes","tags":["release-notes","advisory","report"]},{"url":"https://github.com/leejo/CGI.pm/commit/7733c2753f4f240012097507cda2b6e87ae46db4.patch","tags":["patch","fix","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-120638","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-33j8-q94p-w495"},{"url":"https://cpan.org/modules","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/120xxx/CVE-2026-120638.json","tags":["advisory"]},{"url":"https://github.com/leejo/CGI.pm","tags":["package"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-120638","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-120638","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-120638","tags":["report"]},{"url":"https://lists.security.metacpan.org/cve-announce/msg/44874824/","tags":["report"]},{"url":"https://github.com/leejo/CGI.pm/commit/7733c2753f4f240012097507cda2b6e87ae46db4","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120631","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120632","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120633","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120634","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120635","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120636","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120637","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120638","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120639","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120640","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120641","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120642","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120643","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120644","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120645","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120646","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120647","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120648","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120650","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-120651","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2026-120638","title":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-03T23:40:27.142Z","modified":"2026-11-09T18:50:09.092Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"adp"}],"cwes":["CWE-180","CWE-601"],"updated_at":"2026-11-09T19:34:28.960398Z"}],"euvd":[{"id":"EUVD-2026-116605","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-03T23:40:27Z","modified":"2026-11-09T18:50:09Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-09T20:18:00.239313Z"}],"ghsa":[{"id":"GHSA-33j8-q94p-w495","title":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after...","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-04T00:32:22Z","modified":"2026-11-09T21:32:43Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-180"],"updated_at":"2026-11-09T21:50:05.607095Z"}],"nvd":[{"id":"CVE-2026-120638","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-04T00:17:25.137Z","modified":"2026-11-09T19:16:44.29Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-180","CWE-601"],"updated_at":"2026-11-09T22:15:54.230687Z"}],"osv":[{"id":"CVE-2026-120638","title":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-03T23:40:27.142Z","modified":"2026-11-11T10:31:03.332949427Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-180","CWE-601"],"updated_at":"2026-11-10T10:57:25.458985Z"},{"id":"DEBIAN-CVE-2026-120638","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.  redirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-04T00:17:25.137Z","modified":"2026-11-10T10:00:10.485583819Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-10T10:26:30.347596Z"},{"id":"UBUNTU-CVE-2026-120638","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect. redirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-04T00:17:00Z","modified":"2026-11-12T17:25:21.467607006Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-12T18:05:20.870791Z"},{"id":"AZL-112804","title":"CVE-2026-120638 affecting package perl-CGI 4.60-1","description":"CGI versions before 5.00 for Perl allow open redirects via HTML entity decoding of the URL after application validation in redirect.\n\nredirect decodes HTML entities in its URL before writing the Location header, so a URL the application has already validated can change meaning. For example, /\u0026#47;evil.example/ becomes //evil.example/ and sends the user to another host.","status":"published","published":"2026-11-04T00:17:25Z","modified":"2026-11-07T14:18:07.190841586Z","updated_at":"2026-11-07T14:48:11.583685Z"},{"id":"openSUSE-SU-2026:12465-1","title":"perl-CGI-5.20.0-1.1 on GA media","description":"These are all security issues fixed in the perl-CGI-5.20.0-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-11-06T00:00:00Z","modified":"2026-11-07T17:23:15.83251468Z","updated_at":"2026-11-07T17:50:39.727056Z"}]}}
