n8n: GitHub Trigger 422 Reuse Path Skips Webhook Secret Storage, Causing Signature Verification to Fail-Open
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-347.
Summary
n8n is an open source workflow automation platform. Prior to 1.123.76, 2.37.7, and 2.38.2, the GitHub Trigger generated a webhook secret but discarded it when GitHub returned HTTP 422 and the node reused an existing webhook. Workflow static data then retained webhookId without webhookSecret, and X-Hub-Signature-256 verification accepted deliveries without a stored secret. The affected logic includes packages/nodes-base/nodes/Github/GithubTriggerHelpers.ts and the 422 webhook reuse path. This issue is fixed in versions 1.123.76, 2.37.7 and 2.38.2.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| n8n | n8n | 2.38.0 to before 2.38.2; 2.0.0 to before 2.37.7; before 1.123.76 | 2.38.2, 2.37.7, 1.123.76 | Patch available | CNA |
| — | n8n (npm) | before 1.123.76 | 1.123.76 | Patch available | GHSA-5m98-cgcr-xx3q |
| — | n8n (npm) | 2.38.0 to before 2.38.2 | 2.38.2 | Patch available | GHSA-5m98-cgcr-xx3q |
| — | n8n (npm) | 2.0.0 to before 2.37.7 | 2.37.7 | Patch available | GHSA-5m98-cgcr-xx3q |
- n8n Vendorn8n Affected 2.38.0 to before 2.38.2; 2.0.0 to before 2.37.7; before 1.123.76 Fixed in 2.38.2, 2.37.7, 1.123.76 Patch available CNA
- n8n (npm) Vendor— Affected before 1.123.76 Fixed in 1.123.76 Patch available GHSA-5m98-cgcr-xx3q
- n8n (npm) Vendor— Affected 2.38.0 to before 2.38.2 Fixed in 2.38.2 Patch available GHSA-5m98-cgcr-xx3q
- n8n (npm) Vendor— Affected 2.0.0 to before 2.37.7 Fixed in 2.37.7 Patch available GHSA-5m98-cgcr-xx3q
Remediation
- Fix · CNA n8n (n8n-io) Fixed in 2.38.2, 2.37.7, 1.123.76
- Fix · GHSA-5m98-cgcr-xx3q n8n (npm) Fixed in 1.123.76 Advisory →
- Fix · GHSA-5m98-cgcr-xx3q n8n (npm) Fixed in 2.38.2 Advisory →
- Fix · GHSA-5m98-cgcr-xx3q n8n (npm) Fixed in 2.37.7 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-86080
- 2026-10-03 Alias added: GHSA-5m98-cgcr-xx3q
References
Advisory 2
More N8n vulnerabilities
- TI-2025-42131 n8n Vulnerable to Remote Code Execution via Expression Injection KEVCVSS 3.1CRITICAL 10.0
- TI-2026-17560 n8n Vulnerable to Unauthenticated File Access via Improper Webhook Request Handling CVSS 3.1CRITICAL 10.0
- TI-2026-01167 Authenticated users can bypass the Expression sandbox mechanism to achieve full remote… CVSS 3.1CRITICAL 9.9
- TI-2026-00644 Sandbox escape in n8n Python task runner allows for arbitrary code execution on the underlying host. CVSS 3.1CRITICAL 9.9
- TI-2025-35293 An arbitrary file upload vulnerability in the Chat Trigger component of N8N v1.95.3… CVSS 3.1HIGH 8.8
- TI-2023-12275 The n8n package 0.218.0 for Node.js allows Escalation of Privileges. CVSS 3.1HIGH 8.8
Sources
- CVE-2026-86080 · CVE Program
- CVE-2026-86080 · NVD
- FIRST EPSS
- GHSA-5m98-cgcr-xx3q · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences