{"id":228891,"date":"2026-01-13T05:19:29","date_gmt":"2026-01-13T11:19:29","guid":{"rendered":"https:\/\/lifeboat.com\/blog\/2026\/01\/n8n-supply-chain-attack-abuses-community-nodes-to-steal-oauth-tokens"},"modified":"2026-01-13T05:19:29","modified_gmt":"2026-01-13T11:19:29","slug":"n8n-supply-chain-attack-abuses-community-nodes-to-steal-oauth-tokens","status":"publish","type":"post","link":"https:\/\/lifeboat.com\/blog\/2026\/01\/n8n-supply-chain-attack-abuses-community-nodes-to-steal-oauth-tokens","title":{"rendered":"N8n Supply Chain Attack Abuses Community Nodes to Steal OAuth Tokens"},"content":{"rendered":"<p><a class=\"aligncenter blog-photo\" href=\"https:\/\/lifeboat.com\/blog.images\/n8n-supply-chain-attack-abuses-community-nodes-to-steal-oauth-tokens2.jpg\"><\/a><\/p>\n<p>N8n has also <a href=\"https:\/\/docs.n8n.io\/integrations\/community-nodes\/risks\/\" rel=\"noopener\" target=\"_blank\">warned<\/a> about the security risk arising from the use of community nodes from npm, which it said can introduce breaking changes or execute malicious actions on the machine that the service runs on. On self-hosted n8n instances, it\u2019s advised to disable community nodes by setting N8N_COMMUNITY_PACKAGES_ENABLED to false.<\/p>\n<p>\u201cCommunity nodes run with the same level of access as n8n itself. They can read environment variables, access the file system, make outbound network requests, and, most critically, receive decrypted API keys and OAuth tokens during workflow execution,\u201d researchers Kiran Raj and Henrik Plate said. \u201cThere is no sandboxing or isolation between node code and the n8n runtime.\u201d<\/p>\n<p>\u201cBecause of this, a single malicious npm package is enough to gain deep visibility into workflows, steal credentials, and communicate externally without raising immediate suspicion. For attackers, the npm supply chain offers a quiet and highly effective entry point into n8n environments.\u201d<\/p>\n","protected":false},"excerpt":{"rendered":"<p>N8n has also warned about the security risk arising from the use of community nodes from npm, which it said can introduce breaking changes or execute malicious actions on the machine that the service runs on. On self-hosted n8n instances, it\u2019s advised to disable community nodes by setting N8N_COMMUNITY_PACKAGES_ENABLED to false. \u201cCommunity nodes run with [\u2026]<\/p>\n","protected":false},"author":427,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1492],"tags":[],"class_list":["post-228891","post","type-post","status-publish","format-standard","hentry","category-security"],"_links":{"self":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts\/228891","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/users\/427"}],"replies":[{"embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/comments?post=228891"}],"version-history":[{"count":0,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/posts\/228891\/revisions"}],"wp:attachment":[{"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/media?parent=228891"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/categories?post=228891"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lifeboat.com\/blog\/wp-json\/wp\/v2\/tags?post=228891"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}