{"id":"GHSA-m7qq-gm3x-v79g","kind":"vulnerability","aliases":["GHSA-m7qq-gm3x-v79g"],"related":[],"title":"Invitation Acceptance Endpoint Lets a Member Take Over Pending User Accounts","description":"## Impact\n\nn8n let an invited user set up their account through the invitation acceptance endpoint. The endpoint accepted any inviter and invitee user IDs without a signed invitation token. A member with permission to list users could read the ID of a pending account and set its password without authentication. They could then log in as that user, with its project access, or as an admin when the pending invitation had the admin role.\n\nExploitation required an invitation that had not been accepted yet.\n\n## Patches\n\nThe issue has been fixed in n8n versions 1.123.90 and 2.14.0. Users should upgrade to one of these versions or later to remediate the vulnerability.\n\n## Workarounds\n\nIf upgrading is not immediately possible, administrators should consider the following temporary mitigations:\n- Restrict n8n instance access to fully trusted users only.\n- Delete pending invitations that have not been accepted, and send new invitations after upgrading.\n\nThese workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.","summary":"n8n's invitation acceptance endpoint accepted user IDs without a signed invitation token, so a member who can list users can set the password of a pending account. The attacker can then log in as that user, or as an admin if the pending invitation had the admin role.","severity":"high","cvss":7.7,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"n8n","fixed":["1.123.90"],"affected":"< 1.123.90","ecosystem":"npm"},{"name":"n8n","fixed":["2.14.0"],"affected":"< 2.14.0","ecosystem":"npm"}],"ecosystems":["npm"],"tags":["ai-tooling","automation","cwe-287","n8n","self-hosted"],"not_affected_if":["managed-hosting","no-pending-invitations"],"how_to_check":"- Check the installed n8n version with `npm ls n8n` or `n8n --version`; versions below `1.123.90` on the 1.x line or below `2.14.0` on the 2.x line are affected.\n- Look for pending invitations that have not been accepted in the n8n user management screen.","fix":"- Upgrade n8n to `1.123.90` on the 1.x line.\n- Upgrade n8n to `2.14.0` on the 2.x line.","status":"open","published_at":"2026-11-13T10:55:10+00:00","first_seen_at":"2026-11-13T11:06:24+00:00","triaged_at":"2026-11-13T11:06:57+00:00","updated_at":"2026-11-13T11:06:57+00:00","category":"ai-tooling","confidence":0.8,"triage":{"at":"2026-11-13T11:06:57Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade n8n to `1.123.90` on the 1.x line.\n- Upgrade n8n to `2.14.0` on the 2.x line.","reach":"network","title":"n8n: invitation endpoint lets a member take over pending accounts","impact":"high","summary":"n8n's invitation acceptance endpoint accepted user IDs without a signed invitation token, so a member who can list users can set the password of a pending account. The attacker can then log in as that user, or as an admin if the pending invitation had the admin role.","audience":"businesses","category":"ai-tooling","nicknames":[],"who_cares":["n8n","self-hosted","automation"],"confidence":0.8,"fix_status":"available","needs_auth":"yes","worst_case":"attacker logs in as a pending user, possibly an admin","analyst_note":"","how_to_check":"- Check the installed n8n version with `npm ls n8n` or `n8n --version`; versions below `1.123.90` on the 1.x line or below `2.14.0` on the 2.x line are affected.\n- Look for pending invitations that have not been accepted in the n8n user management screen.","plain_action":"","product_name":"","needs_analyst":false,"not_affected_if":["managed-hosting","no-pending-invitations"],"who_is_affected":"Self-hosted n8n instances where users can be invited and where some members can list users. The flaw needs an invitation that has not yet been accepted, so instances with no pending invitations have less exposure. Hosted n8n instances run by the vendor are not the team's concern, and teams on patched versions can skip it.","user_interaction":"no","product_ecosystem":"","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000782,"input_tokens":4873,"output_tokens":590,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-287':29B '1.123.90':176C '2.14.0':178C 'accept':2A,37B,39B,96C,100C,165C,223C 'access':144C,210C 'account':11A,61B,92C,126C 'admin':74B,81B,148C,155C 'administr':200C 'ai':25B 'ai-tool':24B 'attack':63B 'authent':132C 'autom':27B 'consid':202C 'could':119C,134C 'cwe':28B 'delet':216C 'endpoint':3A,38B,97C,99C 'exploit':157C 'fix':172C 'follow':204C 'fulli':212C,234C 'ghsa':13A,18A 'ghsa-m7qq-gm3x-v79g':12A,17A 'gm3x':15A,20A 'host':33B 'id':41B,106C,122C 'immedi':198C 'impact':83C 'instanc':209C 'invit':1A,36B,45B,78B,87C,95C,102C,110C,152C,160C,218C,227C 'invite':104C 'issu':169C 'later':188C 'let':4A,85C 'list':52B,117C 'log':66B,136C 'm7qq':14A,19A 'measur':248C 'member':6A,49B,113C 'mitig':206C,247C 'n8n':22A,23A,30B,34B,84C,174C,208C 'new':226C 'one':183C 'password':57B,130C 'patch':167C 'pend':9A,60B,77B,125C,151C,217C 'permiss':115C 'possibl':199C 'project':143C 'read':120C 'remedi':190C,235C 'requir':158C 'restrict':207C 'risk':237C 'role':82B,156C 'self':32B 'self-host':31B 'send':225C 'set':55B,89C,128C 'short':245C 'short-term':244C 'sign':44B,109C 'take':7A 'temporari':205C 'term':246C 'token':46B,111C 'tool':26B 'trust':213C 'upgrad':181C,195C,229C 'use':242C 'user':10A,40B,53B,70B,88C,105C,118C,140C,179C,214C 'v79g':16A,21A 'version':175C,186C 'vulner':192C 'without':42B,107C,131C 'workaround':193C,231C 'yet':166C","nicknames":[],"mitigations":[],"who_affected":"Self-hosted n8n instances where users can be invited and where some members can list users. The flaw needs an invitation that has not yet been accepted, so instances with no pending invitations have less exposure. Hosted n8n instances run by the vendor are not the team's concern, and teams on patched versions can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":["n8n"],"ptokens":["n8n"],"labels":["aitooling","automation","cwe287","high","n8n","npm","selfhosted"],"campaign_type":null,"search_a":"'accept':2A 'account':11A 'endpoint':3A 'ghsa':13A,18A 'ghsa-m7qq-gm3x-v79g':12A,17A 'gm3x':15A,20A 'invit':1A 'let':4A 'm7qq':14A,19A 'member':6A 'n8n':22A,23A 'pend':9A 'take':7A 'user':10A 'v79g':16A,21A","search_b":"'-287':29B 'accept':37B,39B 'account':61B 'admin':74B,81B 'ai':25B 'ai-tool':24B 'attack':63B 'autom':27B 'cwe':28B 'endpoint':38B 'host':33B 'id':41B 'invit':36B,45B,78B 'list':52B 'log':66B 'member':49B 'n8n':30B,34B 'password':57B 'pend':60B,77B 'role':82B 'self':32B 'self-host':31B 'set':55B 'sign':44B 'token':46B 'tool':26B 'user':40B,53B,70B 'without':42B","search_c":"'1.123.90':176C '2.14.0':178C 'accept':96C,100C,165C,223C 'access':144C,210C 'account':92C,126C 'admin':148C,155C 'administr':200C 'authent':132C 'consid':202C 'could':119C,134C 'delet':216C 'endpoint':97C,99C 'exploit':157C 'fix':172C 'follow':204C 'fulli':212C,234C 'id':106C,122C 'immedi':198C 'impact':83C 'instanc':209C 'invit':87C,95C,102C,110C,152C,160C,218C,227C 'invite':104C 'issu':169C 'later':188C 'let':85C 'list':117C 'log':136C 'measur':248C 'member':113C 'mitig':206C,247C 'n8n':84C,174C,208C 'new':226C 'one':183C 'password':130C 'patch':167C 'pend':125C,151C,217C 'permiss':115C 'possibl':199C 'project':143C 'read':120C 'remedi':190C,235C 'requir':158C 'restrict':207C 'risk':237C 'role':156C 'send':225C 'set':89C,128C 'short':245C 'short-term':244C 'sign':109C 'temporari':205C 'term':246C 'token':111C 'trust':213C 'upgrad':181C,195C,229C 'use':242C 'user':88C,105C,118C,140C,179C,214C 'version':175C,186C 'vulner':192C 'without':107C,131C 'workaround':193C,231C 'yet':166C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-13T10:55:10+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"ghsa-repo","external_id":"GHSA-m7qq-gm3x-v79g","url":"https://github.com/n8n-io/n8n/security/advisories/GHSA-m7qq-gm3x-v79g","severity":"high","published_at":"2026-11-13T10:55:10+00:00","modified_at":"2026-11-13T10:55:10+00:00","first_seen_at":"2026-11-13T11:06:24+00:00","fetched_at":"2026-11-13T11:06:24+00:00","note":null}],"documents":[{"id":145549,"url":"https://github.com/n8n-io/n8n/security/advisories/GHSA-m7qq-gm3x-v79g","title":"Maintainer's advisory: github.com","kind":"vendor","source":"ghsa-repo","publisher":"vendor","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Maintainer's advisory: github.com"}],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}