CVE-2026-106512
Deferred Deferred - Pending Action

BaseFortify

Vulnerability report for CVE-2026-106512, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-06

Last updated on: 2026-10-07

Assigner: CIRCL

Description

The CakeResponse::download() method in lib/Cake/Network/CakeResponse.php constructs a Content-Disposition header by directly interpolating a caller-supplied filename into a quoted-string value without sanitization. Two distinct injection vectors exist in the unpatched code. First, if the filename contains C0 control characters (CR or LF), PHP refuses to emit the entire Content-Disposition header, silently dropping the attachment disposition. The response body is then served with its own Content-Type (for example text/html for an .html attachment) and renders inline in the browser on the application origin, creating a stored cross-site scripting condition. The commit message notes this is reachable even when the download_attachments_on_load setting is enabled, meaning a victim merely needs to view a page that triggers the download. Second, a double-quote character in the filename terminates the quoted-string value early, permitting injection of additional Content-Disposition parameters. The affected code path covers all callers of CakeResponse::download(), including attribute downloads, proposal downloads, and restSearch exports. An authenticated user who can create or upload an attachment with a crafted filename (for example through MISP attribute naming or proposal attachment naming) can store the malicious filename. When any other authenticated user views the affected page, the unsanitized filename is reflected into the HTTP response header, resulting in header manipulation and potential execution of arbitrary HTML or JavaScript in the context of the application origin. The security impact is equivalent to a stored cross-site scripting vulnerability, allowing session hijacking, data exfiltration, and unauthorized actions on behalf of the victim.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-06
Last Modified
2026-10-07
Generated
2026-10-19
AI Q&A
2026-10-07
EPSS Evaluated
2026-10-18
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
MISP sachertortephp 0

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
CWE-20 The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
CWE-113 The product receives data from an HTTP agent/component (e.g., web server, proxy, browser, etc.), but it does not neutralize or incorrectly neutralizes CR and LF characters before the data is included in outgoing HTTP headers.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability exists in the CakeResponse::download() method in CakePHP. It allows attackers to inject malicious filenames that manipulate HTTP headers. The issue occurs because the method directly inserts user-supplied filenames into a Content-Disposition header without proper sanitization. This can lead to stored cross-site scripting (XSS) attacks where arbitrary HTML or JavaScript executes in the context of the application.

Detection Guidance

To detect this vulnerability, inspect CakeResponse::download() calls in your codebase for unsanitized filename handling. Check for filenames containing C0 control characters (CR/LF) or double quotes. Review HTTP responses for Content-Disposition headers with injected parameters or missing attachments.

Impact Analysis

An attacker could upload a file with a specially crafted filename containing control characters or quotes. When another user views a page triggering the download, the malicious filename is reflected in the HTTP response header. This could allow session hijacking, data theft, or unauthorized actions on behalf of the victim. The attack requires only viewing a page, not direct interaction.

Compliance Impact

This vulnerability could lead to unauthorized data access or modification, violating GDPR's integrity and confidentiality principles or HIPAA's security requirements. The stored XSS risk may result in data breaches, triggering mandatory breach notifications under GDPR Article 33 or HIPAA Breach Notification Rule.

Mitigation Strategies

Update the CakePHP framework to the latest patched version to fix the CakeResponse::download() method vulnerability. Review and sanitize all user-supplied filenames in download functions to prevent C0 control characters and double-quote injections. Implement strict input validation for filenames in attachment and export functionalities.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-106512. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart