Lucene search
+L

n8n Webhooks - Remote Code Execution Detection

🗓️ 28 Jul 2026 11:27:38Reported by KittySploitType 
kittysploit
 kittysploit
🔗 kittysploit.com👁 2 Views

Unauthenticated RCE in n8n via form-based workflows allows access to system files.

Related
Refs
Code
ReporterTitlePublishedViews
Family
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
21 Jan 202615:01
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
11 Feb 202601:01
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
20 Jan 202611:50
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
20 Jan 202615:59
–githubexploit
githubexploit
GithubExploit
Exploit for CVE-2026-21858
12 Jan 202614:32
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
17 Jan 202604:57
–githubexploit
githubexploit
GithubExploit
CVE-2026-21858-and-CVE-2025-68613
31 Jul 202614:12
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
30 Jan 202622:38
–githubexploit
githubexploit
GithubExploit
Exploit for Improper Input Validation in N8N
9 Apr 202611:09
–githubexploit
githubexploit
GithubExploit
cve-2026-poc-collection
6 Aug 202601:26
–githubexploit
Rows per page
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""n8n is an open source workflow automation platform."""

from kittysploit import *
from lib.protocols.http.http_client import Http_client


class Module(Scanner, Http_client):
    __info__ = {
        'name': 'n8n Webhooks - Remote Code Execution Detection',
        'description': 'n8n is an open source workflow automation platform. Versions starting with 1.65.0 and below 1.121.0 enable an attacker to access files on the underlying server through execution of certain form-based workflows. A vulnerable workflow could grant access to an unauthenticated remote attacker, resulting in exposure of sensitive information stored on the system and may enable further compromise depending on deployment configuration and workflow usage. This issue is fixed in version 1.121.0.',
        'author': ['KittySploit Team'],
        'severity': 'critical',
        'modules': [
            'exploits/linux/http/n8n_full_chain_rce',
        ],
        'tags': ['web', 'scanner', 'cve', 'cve2026', 'n8n', 'workflow', 'rce', 'passive', 'vkev'],
        'agent': {
            'risk': 'active',
            'effects': ['network_probe'],
            'expected_requests': 1,
            'reversible': True,
            'approval_required': False,
            'produces': ['tech_hints', 'risk_signals', 'endpoints'],
            'cost': 1.0,
            'noise': 0.3,
            'value': 1.0,
            'requires': {
                'min_endpoints': 0,
                'min_params': 0,
                'tech_hints_any': [],
                'tech_hints_all': [],
                'specializations_any': [],
                'risk_signals_any': [],
                'auth_session': False,
                'capabilities_any': [],
                'capabilities_all': [],
                'confidence_min': {},
                'confidence_min_any': {},
                'endpoint_pattern_any': [],
                'param_any': [],
                'api_surface_ready': False,
            },
            'chain': {
                'produces_capabilities': [
                    {
                        'capability': 'admin_surface',
                        'from_detail': '',
                    },
                ],
                'consumes_capabilities': [],
                'option_bindings': {},
                'suggested_followups': [],
            },
        },
        'references': [
            'https://thehackernews.com/2026/01/critical-n8n-vulnerability-cvss-100.html',
            'https://nvd.nist.gov/vuln/detail/CVE-2026-21858',
        ],
        'cve': 'CVE-2026-21858',
    }

    def run(self):
        path = '/signin'
        r = self.http_request(method='GET', path=path, allow_redirects=False)
        if not r or r.status_code != 200:
            return False
        body = (r.text or "").lower()
        body_any = ('<title>n8n.io',)
        if any(m in body for m in body_any):
            self.set_info(
                severity='critical',
                reason='n8n Webhooks - Remote Code Execution detected',
                path=path,
            )
            return True
        return False

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

28 Jul 2026 11:27Current
8.8High risk
Vulners AI Score8.8
CVSS 3.110
EPSS0.78188
SSVC
2