In versions 7.1.0 through 7.1.2, the module only delegated to other modules' hook_file_download() implementations when the file was in the private scheme. For every other scheme it returned its headers without any check. An unauthenticated visitor who appended download=1 to the URL of a file in the temporary:// scheme, or in a stream wrapper supplied by another module, could retrieve the file, overriding the access checks that would otherwise have applied. Files in the public and private schemes are not affected.
Metrics
Affected Vendors & Products
No advisories yet.
Solution
No solution given by the vendor.
Workaround
Disable the File Force Download module, avoid keeping sensitive files in the temporary:// scheme or in stream wrappers provided by contributed modules, or block anonymous requests that carry a download parameter at the web server or WAF.
Sat, 31 Oct 2026 00:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | The File Force Download module for Drupal 7 implements hook_file_download() to add a Content-Disposition header when a file URL carries the download query parameter. In Drupal 7, returning a non-empty header array from that hook is itself a grant of access to the file. In versions 7.1.0 through 7.1.2, the module only delegated to other modules' hook_file_download() implementations when the file was in the private scheme. For every other scheme it returned its headers without any check. An unauthenticated visitor who appended download=1 to the URL of a file in the temporary:// scheme, or in a stream wrapper supplied by another module, could retrieve the file, overriding the access checks that would otherwise have applied. Files in the public and private schemes are not affected. | |
| Title | File Force Download for Drupal 7 Access Bypass via Unconditional Download Headers | |
| Weaknesses | CWE-863 | |
| References |
| |
| Metrics |
cvssV4_0
|
Projects
Sign in to view the affected projects.
Status: PUBLISHED
Assigner: drupal
Published:
Updated: 2026-10-31T00:01:51.979Z
Reserved: 2026-10-13T17:02:57.071Z
Link: CVE-2026-110176
No data.
Status : Received
Published: 2026-10-31T01:17:05.153
Modified: 2026-10-31T01:17:05.153
Link: CVE-2026-110176
No data.
OpenCVE Enrichment
Updated: 2026-10-31T01:30:11Z