CVE-2026-55806
Executive Summary
CVE-2026-55806 is an Open Redirect vulnerability (CWE-601) in Drupal core that allows an attacker to redirect users to untrusted external sites, enabling content spoofing and phishing attacks. The flaw affects all Drupal core versions from 0.0.0 up to 10.5.12, 10.6.0 to 10.6.11, 11.2.0 to 11.2.14, 11.3.0 to 11.3.12, and all 11.0.x and 11.1.x releases. No official patch has been released by Drupal as of this analysis. The vulnerability is triggered when a user clicks a crafted link that passes through Drupal’s URL redirection logic without proper validation of the destination host.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
Drupal is a widely used content management system (CMS) distributed via its own package ecosystem (Drupal.org) and Composer. This vulnerability affects all Drupal core installations, including those managed via Composer. No malicious packages have been identified in the supply chain, but the lack of a patch means all current installations are at risk. Users should monitor Drupal security advisories and apply any future updates immediately.
CVSS Breakdown & Threat Level
- CVSS Score: 6.1 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: Required (victim must click a crafted link)
- Scope: Changed (redirect to external domain)
- Confidentiality Impact: Low (potential information disclosure via referrer headers)
- Integrity Impact: Low (content spoofing)
- Availability Impact: None
Threat Level: Medium. While the CVSS score is moderate, the ease of exploitation and potential for phishing campaigns make this a significant risk for Drupal-based websites.
Deep Dive & Mechanics
The vulnerability resides in Drupal core’s URL redirection mechanism, likely in the drupal_goto() function or similar redirect logic. When a user is redirected (e.g., after login, form submission, or via a destination parameter), Drupal fails to properly validate that the target URL is within the same origin. An attacker can craft a URL like:
https://victim-drupal-site.com/user/login?destination=https://evil.com/phish
If Drupal does not enforce a strict allowlist of allowed redirect domains, the user will be redirected to evil.com, where the attacker can serve a fake login page or malicious content.
The vulnerability is present in all affected versions because the redirect validation logic does not check for external domains or uses a weak check that can be bypassed (e.g., via URL encoding or using //evil.com).
Vulnerable vs. Patched Code
Vulnerable Code (Drupal core < 10.5.13, etc.):
// In includes/common.inc or similar
function drupal_goto($path = '', $options = array()) {
// No validation of $path against allowed domains
header('Location: ' . $GLOBALS['base_url'] . '/' . $path);
exit;
}
Patched Code (hypothetical fix):
function drupal_goto($path = '', $options = array()) {
$allowed_hosts = array('victim-drupal-site.com', 'www.victim-drupal-site.com');
$parsed_url = parse_url($path);
if (isset($parsed_url['host']) && !in_array($parsed_url['host'], $allowed_hosts)) {
// Block external redirect
return;
}
header('Location: ' . $GLOBALS['base_url'] . '/' . $path);
exit;
}
The fix would involve validating the $path parameter to ensure it does not point to an external host unless explicitly allowed.
Exploitation & Lab Setup
Red Team (Attacker)
Lab Setup:
- Install a vulnerable Drupal version (e.g., 10.5.12) on a local server.
- Set up a malicious website (e.g.,
evil.com) that mimics the Drupal login page. - Craft the exploit URL:
http://localhost/drupal/user/login?destination=http://evil.com/phish - Send the link to a victim via email or social engineering.
Exploit Code:
import requests
target = "http://localhost/drupal"
payload = "/user/login?destination=http://evil.com/phish"
full_url = target + payload
print(f"Send this link to victim: {full_url}")
# Victim clicks and is redirected to evil.com
Blue Team (Defender)
Detection:
- Monitor web server logs for requests containing
destination=parameters pointing to external domains. - Use the Sigma rule below to detect suspicious redirect patterns.
Mitigation:
- Implement a Web Application Firewall (WAF) rule to block external redirects.
- Apply a manual patch by overriding the
drupal_goto()function in a custom module.
Indicators of Compromise (IOCs)
- URL Patterns:
destination=http://ordestination=https://followed by an external domain. - Log Entries: HTTP 302 responses with
Locationheaders pointing to external domains. - Network Traffic: Outbound connections to known phishing domains after a Drupal redirect.
Detection Engineering
YARA Rule
rule CVE_2026_55806_Open_Redirect {
meta:
description = "Detects open redirect attempts in Drupal core"
author = "Valters IT"
date = "2026-01-01"
reference = "CVE-2026-55806"
strings:
$redirect_param = /[?&]destination=(http|https):\/\// nocase
$drupal_path = /\/user\/login|\/node\/\d+\/edit/ nocase
condition:
$redirect_param and $drupal_path
}
Sigma Rule
title: Drupal Open Redirect via destination Parameter
id: 5a8b3c2d-1e4f-4a7b-9c0d-6e8f2a1b3c4d
status: experimental
description: Detects HTTP requests with destination parameter pointing to external domains
author: Valters IT
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: 'GET'
cs-uri-query|contains: 'destination=http'
condition: selection
falsepositives:
- Legitimate redirects to partner sites (rare)
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2026-55806 Drupal Open Redirect"; flow:to_server; content:"destination="; nocase; pcre:"/destination=(http|https):\/\//i"; classtype:attempted-recon; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate: Manually patch the
drupal_goto()function in your Drupal installation to validate redirect targets against an allowlist of trusted domains. - Short-term: Implement a WAF rule to block requests with
destinationparameters pointing to external URLs. - Long-term: Upgrade to a patched version of Drupal core once released by the vendor.
- Monitoring: Enable logging of all redirect responses and review logs for suspicious activity.
- User Education: Train users to avoid clicking links with
destinationparameters in emails.
Valters IT
Cyber Threat Intelligence & DevSecOps