// TECHNOLOGIES / N8N

n8n

n8n, without crying wolf.

n8n's public surface looks alarming and mostly is not. It serves a /rest/settings bootstrap document to anyone, answers unknown paths with its single-page app, and exposes webhooks that are meant to be public. A scanner that reports any of that is unusable. NewScan requires two independent n8n signals before it says anything at all, then reports only a real management object returned anonymously, a credential inside a workflow export, and CVEs matched against the version n8n itself declares.

The dashboard blind-spot

// why an external scan matters

// THE DASHBOARD SHOWS (WHAT YOU CONFIGURED)

n8n's own security audit — unprotected webhooks, risky nodes, missing settings, an outdated instance — all of which needs owner authentication to run.

// IT CAN'T SEE (NEWSCAN DOES)

What an anonymous visitor on the internet actually receives: whether /rest/workflows hands back real workflow objects with no credential at all, whether a workflow export carries the API key it drives, and whether the version you are running is inside a published advisory range.

What NewScan records

// proven, then reproduced

Version-gated n8n CVE

CRITICAL

Matched against versionCli, n8n's own declaration, using ranges taken from the vendor advisory. Reported on the version — the exploit chain is never fired.

Management API readable without authentication

HIGH

A workflow, credential, execution or user object returned to an unauthenticated request. Workflow objects describe every system the instance is wired into.

Workflow export exposes a stored credential

HIGH

An n8n workflow structure served publicly with real credential material inside it — the keys to the third-party systems the workflows drive.

What is never flagged

// the false-positive contract

A scanner earns its place by what it stays quiet about. These are guarantees, each one asserted by a test that fails the build if it regresses — not best-effort tuning.

/rest/settings

A public bootstrap document by design. It is the fingerprint and the version source; on its own it confirms nothing and reports nothing.

The SPA catch-all 200

n8n serves its app shell for every unknown path — the single biggest false-positive source on this product. A 200 from a management path proves nothing unless the body is a real n8n object.

{"data":[]}

An endpoint that answers anonymously but returns nothing is not exposed data.

Public form and webhook endpoints

They are meant to be public and are never reported for existing.

How it's proved

// training/cve + training/good/n8n

The CVE claim is proved on real containers, both halves: vulhub n8n 1.65.0 matches both advisories, and a real 2.29.9 comes back clean. Checking the vendor advisory mattered — the widely-copied range for CVE-2025-68613 is wrong.

// FINGERPRINT FIRST

The check is silent unless the product is confirmed by two independent signals. A single, spoofable marker confirms nothing.

// REPRODUCE BEFORE RECORD

Every finding is re-run by our own detector before it is written down. A model's self-assessment is discarded, not merged.

// SEVERITY THAT MAPS

One calibrated severity per finding, translated into PCI DSS, SOC 2, ISO 27001, HITRUST, HIPAA and NIST 800-53 ratings with remediation SLAs.

Run it against your own n8n

NewScan is free and self-hosted — bring your own key. Every check on this page runs in the deterministic floor with no model and no provider key at all, so scanning your own n8n surface is local to you and depends on no hosted resource.