CVE-2026-9186: Langflow is vulnerable to stored cross-site scripting and IP spoofing due to unsanitized Markdown rendering and untrusted proxy header trust
IBM Langflow OSS 1.0.0 through 1.11.2 allows remote authenticated attackers to bypass localhost-only MCP configuration installation by spoofing X-Forwarded-For: 127.0.0.1 header, enabling arbitrary writes to IDE config files (~/.cursor/mcp.json, etc.).
Other sources
Langflow OSS allows remote authenticated attackers to bypass localhost-only MCP configuration installation by spoofing X-Forwarded-For: 127.0.0.1 header, enabling arbitrary writes to IDE config files (~/.cursor/mcp.json, etc.).
— IBM
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Langflow OSSto a version that resolves this vulnerability.Fixed in 1.11.3 - Compensating control
Ensure the application is configured to not trust spoofable proxy headers such as X-Forwarded-For (e.g., only trust X-Forwarded-For from known/authorized reverse proxies) to prevent bypasses like spoofing X-Forwarded-For: 127.0.0.1.
Event History
Frequently Asked Questions
Who can exploit this issue?
A remote attacker must be authenticated to Langflow OSS. The affected versions identified are 1.0.0 through 1.11.2.
What does an attacker need to do to bypass the localhost-only restriction?
The attacker sends an X-Forwarded-For header with the value 127.0.0.1. This causes Langflow to treat the request as local when installing MCP configuration.
What is the impact of a successful bypass?
An attacker can perform arbitrary writes to IDE MCP configuration files, including paths such as ~/.cursor/mcp.json. This can allow installation of attacker-controlled MCP configuration.