{"answers":{"affected":"2 open source packages ship an affected version, including n8n-mcp. It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-41495 in the wild and no public exploit code.","fix":"Upgrade n8n-mcp to 2.47.11 or later.","what":"CVE-2026-41495 is a medium-severity vulnerability in czlonkowski n8n-mcp, published on 8 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-41495 and fix it if it is affected.\n\nWhat it is: CVE-2026-41495 is a medium-severity vulnerability in czlonkowski n8n-mcp, published on 8 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-41495 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- n8n-mcp (npm): affected all versions; fixed in 2.47.11\n- n8n-mcp (npm): affected all versions; fixed in 2.47.11\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-41495/ (Markdown: https://insights.sbomify.com/CVE-2026-41495/index.md)","id":"CVE-2026-41495","markdown":"https://insights.sbomify.com/CVE-2026-41495/index.md","name":"CVE-2026-41495","record":{"aliases":["GHSA-pfm2-2mhg-8wpx"],"analysis":{"component_type":"server_software","fix_type":"patch","impacts":["data_read"],"network_reachable":"yes","non_default_config":true,"product_category":"MCP server","requires_auth":"none","summary":"Attackers with log access can view sensitive tokens and API keys from rejected requests in n8n-MCP HTTP mode deployments.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"n8n-mcp","vendor":"n8n-mcp"}],"cvss":{"score":5.3,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","version":"3.1"},"cwes":[{"id":"CWE-532","name":"Insertion of Sensitive Information into Log File"}],"description":"n8n-MCP is an MCP server that provides AI assistants access to n8n node documentation, properties, and operations. Prior to version 2.47.11, when n8n-mcp runs in HTTP transport mode, incoming requests to the POST /mcp endpoint had their request metadata written to server logs regardless of the authentication outcome. In deployments where logs are collected, forwarded to external systems, or viewable outside the request trust boundary (shared log storage, SIEM pipelines, support/ops access), this can result in disclosure of: bearer tokens from the Authorization header, per-tenant API keys from the, x-n8n-key header in multi-tenant setups, JSON-RPC request payloads sent to the MCP endpoint. Access control itself was not bypassed — unauthenticated requests were correctly rejected with 401 Unauthorized — but sensitive values from those rejected requests could still be persisted in logs. This issue has been patched in version 2.47.11.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"n8n-MCP Logs Sensitive Request Data on Unauthorized /mcp Requests","id":"CVE-2026-41495","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":null,"products":[],"type":"information_disclosure","year":"2026"},"n_packages":2,"n_references":2,"next":{"headline":"PraisonAI: SQL Injection via unvalidated `table_prefix` in 9 conversation store backends (incomplete fix for CVE-2026-40315)","id":"CVE-2026-41496"},"packages":[{"ecosystem":"npm","fixed":["2.47.11"],"introduced":["0"],"last_affected":[],"package":"n8n-mcp","purl":null,"source":"GHSA-pfm2-2mhg-8wpx"},{"ecosystem":"npm","fixed":["2.47.11"],"introduced":["0"],"last_affected":[],"package":"n8n-mcp","purl":"pkg:npm/n8n-mcp","source":"GHSA-pfm2-2mhg-8wpx"}],"prev":{"headline":"yard: Possible arbitrary path traversal and file access via yard server","id":"CVE-2026-41493"},"products":["n8n-mcp"],"published":"2026-05-08","related":[{"cvss_score":9.9,"headline":"n8n-MCP: Cross-tenant access to workflow version backups in multi-tenant HTTP deployments","id":"CVE-2026-54052","kev_date_added":null,"published":"2026-07-15"},{"cvss_score":8.5,"headline":"n8n-MCP: IPv4-mapped IPv6 addresses bypass SSRF protection in validateUrlSync(), enabling full SSRF for SDK embedders","id":"CVE-2026-42449","kev_date_added":null,"published":"2026-05-07"},{"cvss_score":8.5,"headline":"n8n-MCP has an Authenticated SSRF via instance-URL header in multi-tenant HTTP mode","id":"CVE-2026-39974","kev_date_added":null,"published":"2026-04-09"},{"cvss_score":8.1,"headline":"n8n-MCP: Multi-tenant MCP requests fall back to process-level n8n credentials when tenant headers are absent or incomplete","id":"CVE-2026-45707","kev_date_added":null,"published":"2026-05-29"},{"cvss_score":7.2,"headline":"n8n-MCP: Authenticated SSRF in n8n-mcp webhook and API client paths","id":"CVE-2026-44694","kev_date_added":null,"published":"2026-05-08"},{"cvss_score":6.5,"headline":"n8n-MCP: Workflow telemetry sanitizer could retain partial values from URL-shaped node parameters","id":"CVE-2026-45582","kev_date_added":null,"published":"2026-05-29"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-05-13","vendors":["czlonkowski"]},"summary":"Attackers with log access can view sensitive tokens and API keys from rejected requests in n8n-MCP HTTP mode deployments.","url":"https://insights.sbomify.com/CVE-2026-41495/"}