{"answers":{"affected":"2 open source packages ship an affected version, including n8n. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-21877 exists.","fix":"Upgrade n8n to 1.121.3 or later.","what":"CVE-2026-21877 is a critical code injection vulnerability in N8n N8n, published on 8 Jan 2026. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-21877 and fix it if it is affected.\n\nWhat it is: CVE-2026-21877 is a critical code injection vulnerability in N8n N8n, published on 8 Jan 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-21877 exists.\n\nAffected packages and fixed versions:\n- n8n (npm): affected from 0.123.0; fixed in 1.121.3\n- n8n (npm): affected from 0.123.0; fixed in 1.121.3\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-21877/ (Markdown: https://insights.sbomify.com/CVE-2026-21877/index.md)","id":"CVE-2026-21877","markdown":"https://insights.sbomify.com/CVE-2026-21877/index.md","name":"CVE-2026-21877","record":{"aliases":["GHSA-v364-rw7m-3263"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["code_execution"],"network_reachable":"yes","non_default_config":false,"product_category":"workflow automation platform","requires_auth":"low_privilege","summary":"An authenticated attacker can execute arbitrary code via file write in n8n, leading to full system compromise.","user_interaction":"not_required","vuln_class":"code_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"n8n","vendor":"n8n"}],"cvss":{"score":10,"severity":"critical","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-94","name":"Improper Control of Generation of Code"},{"id":"CWE-434","name":"Unrestricted Upload of File with Dangerous Type"}],"description":"n8n is an open source workflow automation platform. In versions 0.121.2 and below, an authenticated attacker may be able to execute malicious code using the n8n service. This could result in full compromise and can impact both self-hosted and n8n Cloud instances. This issue is fixed in version 1.121.3. Administrators can reduce exposure by disabling the Git node and limiting access for untrusted users, but upgrading to the latest version is recommended.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":"2026-04-22","github_poc":2,"max_poc_stars":0,"metasploit":0,"nuclei":1,"refs":[{"date":"2026-04-22T13:26:34Z","kind":"github_poc","ref":"https://github.com/CVEs-Labs/CVE-2026-21877","stars":0,"title":null},{"date":"2026-04-26T12:52:28Z","kind":"github_poc","ref":"https://github.com/monkeontheroof/cve-2026-21877-rce","stars":0,"title":null},{"date":null,"kind":"nuclei","ref":"http/cves/2026/CVE-2026-21877.yaml","stars":null,"title":"n8n \u003e= 0.123.0 and \u003c 1.121.3 - Remote Code Execution"}],"tier":"weaponised"},"has_fix":true,"headline":"n8n is vulnerable to Remote Code Execution via Arbitrary File Write","id":"CVE-2026-21877","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":"n8n:n8n","products":["n8n:n8n"],"type":"code_injection","year":"2026"},"n_packages":2,"n_references":2,"next":{"headline":"BACnet Stack Improperly Limits Pathnames to a Restricted Directory","id":"CVE-2026-21878"},"packages":[{"ecosystem":"npm","fixed":["1.121.3"],"introduced":["0.123.0"],"last_affected":[],"package":"n8n","purl":null,"source":"GHSA-v364-rw7m-3263"},{"ecosystem":"npm","fixed":["1.121.3"],"introduced":["0.123.0"],"last_affected":[],"package":"n8n","purl":"pkg:npm/n8n","source":"GHSA-v364-rw7m-3263"}],"prev":{"headline":"OWASP CRS has multipart bypass using multiple content-type parts","id":"CVE-2026-21876"},"products":["n8n"],"published":"2026-01-08","related":[{"cvss_score":10,"headline":"n8n Improper Control of Dynamically-Managed Code Resources","id":"CVE-2025-68613","kev_date_added":"2026-03-11","published":"2025-12-19"},{"cvss_score":10,"headline":"n8n Vulnerable to Unauthenticated File Access via Improper Webhook Request Handling","id":"CVE-2026-21858","kev_date_added":null,"published":"2026-01-07"},{"cvss_score":9.9,"headline":"n8n Unsafe Workflow Expression Evaluation Allows Remote Code Execution","id":"CVE-2026-1470","kev_date_added":null,"published":"2026-01-27"},{"cvss_score":9.9,"headline":"n8n Vulnerable to Arbitrary Command Execution in Pyodide based Python Code Node","id":"CVE-2025-68668","kev_date_added":null,"published":"2025-12-26"},{"cvss_score":9.5,"headline":"n8n has Unauthenticated Expression Evaluation via Form Node","id":"CVE-2026-27493","kev_date_added":null,"published":"2026-02-25"},{"cvss_score":9.4,"headline":"n8n: HTTP Request Node Pagination Prototype Pollution to RCE","id":"CVE-2026-44789","kev_date_added":null,"published":"2026-06-23"}],"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)"},{"class":"attribution","licence":"MIT","name":"Nuclei templates"},{"class":"open","licence":"CC0","name":"PoC-in-GitHub"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-01-08","vendors":["n8n-io"]},"summary":"An authenticated attacker can execute arbitrary code via file write in n8n, leading to full system compromise.","url":"https://insights.sbomify.com/CVE-2026-21877/"}