CVE-2026-120647
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
Exploit likelihood
What each source reports
CVE List No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
CVE-2026-120647- Weakness
- CWE-116
- Updated
- 2026-11-04
EUVDEUVD-2026-116614 No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
EUVD-2026-116614- Updated
- 2026-11-04
GitHub AdvisoriesGHSA-599q-wvvm-v4wp No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped...
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
GHSA-599q-wvvm-v4wp- Weakness
- CWE-116
- Updated
- 2026-11-04
NVD No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
CVE-2026-120647- Weakness
- CWE-116
- Updated
- 2026-11-04
OSVAZL-112780 No score
CVE-2026-120647 affecting package perl-CGI 4.60-1
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
AZL-112780- Updated
- 2026-11-07
OSV No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename.
header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes.
An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
CVE-2026-120647- Weakness
- CWE-116
- Updated
- 2026-11-07
OSVDEBIAN-CVE-2026-120647 No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename. header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes. An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
DEBIAN-CVE-2026-120647- Updated
- 2026-11-05
OSVopenSUSE-SU-2026:12465-1 No score
perl-CGI-5.20.0-1.1 on GA media
These are all security issues fixed in the perl-CGI-5.20.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12465-1- Updated
- 2026-11-07
OSVUBUNTU-CVE-2026-120647 No score
CGI versions before 5.00 for Perl allow Content-Disposition parameter injection via unescaped double quotes in the header attachment filename. header(-attachment => $name) writes $name into the quoted filename parameter of Content-Disposition without escaping double quotes. An application that passes request data as the attachment name can be made to send a second filename parameter, changing the name the response is saved under.
- Record
UBUNTU-CVE-2026-120647- Updated
- 2026-11-05
Affected packages
| Package | Affected | Fixed |
|---|---|---|
perl-CGIAzure Linux:3 |
through 4.60-1 | None known |
libcgi-pm-perlDebian:12 |
All versions, plus listed versions 4.55-14.57-14.59-14.60-14.61-1 Show 11 moreShow less4.62-14.63-14.64-14.65-14.66-14.67-14.68-14.70-14.71-14.72-15.02-1 |
None known |
libcgi-pm-perlDebian:13 |
All versions, plus listed versions 4.68-14.70-14.71-14.72-15.02-1 |
None known |
libcgi-pm-perlDebian:14 |
All versions, plus listed versions 4.68-14.70-14.71-14.72-15.02-1 |
None known |
libcgi-pm-perlUbuntu:16.04:LTS |
All versions, plus listed versions 4.21-14.22-14.25-14.26-1 |
None known |
libcgi-pm-perlUbuntu:18.04:LTS |
All versions, plus listed versions 4.36-14.37-14.38-1 |
None known |
libcgi-pm-perlUbuntu:20.04:LTS |
All versions, plus listed versions 4.44-14.45-14.46-1 |
None known |
libcgi-pm-perlUbuntu:22.04:LTS |
All versions, plus listed versions 4.51-14.53-14.54-1 |
None known |
libcgi-pm-perlUbuntu:24.04:LTS |
All versions, plus listed versions 4.57-14.60-14.61-14.62-14.63-1 |
None known |
libcgi-pm-perlUbuntu:26.10 |
All versions, plus listed versions 4.71-1build14.72-1 |
None known |
libcgi-pm-perlUbuntu:26.04:LTS |
All versions, plus listed versions 4.68-14.71-14.71-1build1 |
None known |
perl-CGIopenSUSE:Tumbleweed From an advisory covering 20 CVEs |
before 5.20.0-1.1 | 5.20.0-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| affected, aliases, references | OSV | |
| affected, aliases, references | NVD, OSV | |
| references | OSV | |
| affected, aliases, references | OSV | |
| aliases | EUVD, NVD | |
| first indexed | CVE List, GitHub Advisories |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-120647 is a vulnerability with no CVSS score yet in perl-CGI, published November 3, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.21%, the 10th percentile. No source names a fixed version.
References
metacpan.org/release/LEEJO/CGI-4.72/source/lib/CGI.pm
metacpan.org/release/LEEJO/CGI-5.00/changes
github.com/leejo/CGI.pm/commit/131280a5c5bc51b65797bd57ef0ee8da8468065b.patch
nvd.nist.gov/vuln/detail/CVE-2026-120647
github.com/advisories/GHSA-599q-wvvm-v4wp
cpan.org/modules
Show 27 moreShow less
github.com/CVEProject/cvelistV5/tree/main/cves/2026/120xxx/CVE-2026-120647.json
github.com/leejo/CGI.pm
security-tracker.debian.org/tracker/CVE-2026-120647
ubuntu.com/security/CVE-2026-120647
cve.org/CVERecord?id=CVE-2026-120647
lists.security.metacpan.org/cve-announce/msg/44874995
github.com/leejo/CGI.pm/commit/131280a5c5bc51b65797bd57ef0ee8da8468065b
suse.com/security/cve/CVE-2026-120631
suse.com/security/cve/CVE-2026-120632
suse.com/security/cve/CVE-2026-120633
suse.com/security/cve/CVE-2026-120634
suse.com/security/cve/CVE-2026-120635
suse.com/security/cve/CVE-2026-120636
suse.com/security/cve/CVE-2026-120637
suse.com/security/cve/CVE-2026-120638
suse.com/security/cve/CVE-2026-120639
suse.com/security/cve/CVE-2026-120640
suse.com/security/cve/CVE-2026-120641
suse.com/security/cve/CVE-2026-120642
suse.com/security/cve/CVE-2026-120643
suse.com/security/cve/CVE-2026-120644
suse.com/security/cve/CVE-2026-120645
suse.com/security/cve/CVE-2026-120646
suse.com/security/cve/CVE-2026-120647
suse.com/security/cve/CVE-2026-120648
suse.com/security/cve/CVE-2026-120650
suse.com/security/cve/CVE-2026-120651