TECHNOLOGIES: N8N

n8n Security Review

An n8n webhook can trigger a workflow with no authentication at all, so anyone with the URL can run it. We test webhook authentication, credential sharing, execution data and self-hosted exposure. CREST-certified testers, fixed price from £2,670 for a 2-day single-instance scope, quoted within 24 hours.

  • Unlimited retesting
  • Unlimited pre-retesting
  • No hidden fees
Accredited & recognised
Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified Crown Commercial Service supplier UK Cyber Security Council member
CREST
Approved Provider
10
n8n Test Areas
FREE
Retest Until Closed
24h
Scope to Active Test
CLIENT REFERENCE
“I would highly recommend EJN Labs to any organisation seeking reliable, detailed, and well-managed penetration testing services, particularly for government or enterprise-level projects.”
SquareOneImran SaghirProject Lead, SquareOneRead the SquareOne case study →
CLIENT REFERENCE
“There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.”
CelloriDan WilcocksonFounder, CelloriRead the Cellori case study →
See all case studies →
WHY IT MATTERS
Webhooks

A Webhook node’s trigger runs with no authentication unless you configure one, and that single setting decides who can reach the workflow behind it.

A workflow trusts every node inside it, so the boundary you set is the only one there is

n8n’s own Webhook node documentation lists exactly four authentication options for a trigger: Basic auth, Header auth, JWT auth, or none at all, plus a separate IP allowlist that can restrict callers by address regardless of which auth method is set. Whichever option a workflow’s author picked, or didn’t, is the only thing standing between the public internet and whatever that trigger does next, and it is set node by node rather than once for the whole instance.

Sharing in n8n works on the principle of least privilege: a credential shared with a user or a project lets them use it in their own workflows without ever seeing its underlying value, and sharing a workflow does not automatically share the credentials it depends on. All of that protection sits behind a single encryption key that n8n generates on first launch, and every worker in a queue-mode deployment has to hold an identical copy of it, so the key’s own custody matters as much as who a credential was shared with.

What a workflow leaves behind matters as much as who can trigger it. Execution data saves a node’s input and output by default, prunes automatically after 14 days or 10,000 executions, and can hold a credential value or a customer record for exactly as long as that default is left unchanged. Whether the instance is self-hosted, with the editor, the encryption key and every hardening setting in your own hands, or run on n8n Cloud instead, the same question applies: does the access on paper match the access a workflow, a credential or an installed community node actually has. It is the same ownership question we test on Power Automate flows, applied to n8n’s own nodes, credentials and projects.

SCOPE

What we review in an n8n instance

NA-01

Webhook trigger authentication: none, basic, header or JWT

A Webhook node’s trigger accepts Basic auth, Header auth, JWT auth or no authentication at all, and whichever option is selected, or left unselected, decides who can invoke that URL and run the workflow behind it. The IP(s) Allowlist option can restrict callers by address, and a separate test URL exists alongside the production one for the same node, so a workflow can end up authenticated on one and not the other. We test which authentication method is actually configured against what the workflow does once triggered, and whether the test URL is still reachable once the workflow is live.

NA-02

Workflow sharing and project roles

Workflows and credentials sit inside projects, and a user’s project role decides what they can do with them: an Admin can manage members and create end-user credentials, an Editor can edit and execute but cannot manage the project, and a Viewer can see everything in the project but cannot execute a workflow. Instance roles work on a separate axis again, since Owner, Admin and Member control what a user can do across the whole instance rather than inside any one project. We test whether a user’s project role and instance role actually match what they need, and whether a Viewer or Editor added to a project can reach more than that role should allow.

NA-03

Saved credentials: who a shared credential is actually visible to

A credential can be shared directly with other users or shared into a project so every member can use it, and n8n applies the same rule as workflow sharing: whoever a credential is shared with can use it in their own workflows but cannot view or edit the credential’s underlying details. Sharing a workflow and sharing the credentials it depends on are two separate actions, so a shared workflow with unshared credentials leaves its nodes uneditable for whoever received it. We test what every shared credential is actually authorised for, and whether the people or projects it has been shared with still need that access.

NA-04

The encryption key protecting every saved credential

Every credential n8n stores is encrypted before it reaches the database, using a key that n8n generates automatically on first launch and saves to the instance’s own settings file; set N8N_ENCRYPTION_KEY explicitly instead and every worker in a queue-mode deployment has to be given the same value or it cannot decrypt existing credentials. Losing that key without a backup makes every stored credential permanently unreadable, and n8n’s own key rotation feature is a one-way migration with no rollback path once enabled. We test how the encryption key is generated, stored and backed up, and whether it has ever been exposed outside the instance it protects.

NA-05

What execution data actually saves, and for how long

Every trigger and action’s input and output data is saved to run history by default, separately configurable for successful, failed, manually launched and in-progress executions, and that setting can be overridden per workflow rather than only at the instance level. Finished executions are pruned automatically once they pass 14 days old or the total exceeds 10,000, whichever comes first, though annotated, tagged or still-running executions are exempt, and a default SQLite database does not reclaim the disk space pruning frees. We test what a saved execution actually contains for the workflows in scope, including any credential value or personal data a node’s input or output has captured.

NA-06

The editor and the public API reachable from the internet

A self-hosted n8n instance’s editor and its public REST API sit on the same address unless a reverse proxy or firewall rule is put in front of them, and the public API itself can be turned off entirely if nothing in your stack actually calls it. n8n’s own hardening guidance covers SSL, SAML or OIDC single sign-on and SSRF protection to limit which hosts a workflow node can reach, none of which apply automatically on installation. We test what is reachable from outside your network without a login, and whether the public API, if enabled, is scoped to what your integrations actually need.

NA-07

Instance roles and account-level security policies

An n8n instance has three built-in roles: Owner, Admin and Member, and because the Owner can see and edit every workflow, credential and project with no record of who actually created what, n8n’s own guidance is to create a separate Member account for day-to-day building rather than working as the Owner. Instance-wide policies covering multi-factor authentication enforcement, personal workspace controls and restricting sign-up to verified email addresses sit alongside those roles and have to be turned on deliberately. We test who holds Owner and Admin, whether MFA is actually enforced rather than optional, and whether a personal, unshared space is hiding a workflow or credential from the review it should have had.

NA-08

Blocked nodes and file or environment access

The Execute Command node is disabled by default because it runs arbitrary shell commands, and it stays disabled only until someone removes it from the NODES_EXCLUDE list; the Code node’s access to environment variables is the opposite case, allowed by default until N8N_BLOCK_ENV_ACCESS_IN_NODE is explicitly set to restrict it. File access from nodes can be limited to specific directories with N8N_RESTRICT_FILE_ACCESS_TO, separate from the setting that already blocks reading files from the instance’s own configuration directory. We test which of these settings are actually applied against what the workflows in scope need the Code node, Execute Command node or file-handling nodes to do.

NA-09

Community nodes installed from npm

Installing a community node means installing unverified code from a public npm package into your instance, and only an instance owner or admin can install or manage one, whether from the nodes panel or an environment-variable-driven install. Verified community nodes go through n8n’s own review and are barred from using runtime dependencies or touching environment variables and the file system, but an unverified node carries none of those restrictions, and community nodes can be disabled entirely with N8N_COMMUNITY_PACKAGES_ENABLED. We test what every installed community node in scope can actually reach, and whether it needed that reach to do its job.

NA-10

n8n Cloud and self-hosted carry different security surfaces

n8n Cloud is fully hosted and managed, so infrastructure patching, updates and scaling are n8n’s responsibility, while a self-hosted instance puts SSL, network exposure, the encryption key and every hardening setting in your own hands instead. Feature availability shifts the same way: project roles, workflow and credential sharing, SSO and external secrets need a paid plan on either deployment, and the free self-hosted Community edition has none of them, restricting access to the instance owner and whoever created each workflow or credential. We test the instance as it is actually deployed and licensed, not the feature set a higher plan would have given it.

OUR PROCESS

n8n Security Review: From Scope to Attestation

01

Workflow, Trigger and Credential Mapping

We map every workflow in scope, its triggers and authentication settings, and every credential it can reach, on n8n Cloud or your self-hosted instance.

02

Access and Sharing Testing

We test project roles, instance roles, workflow sharing and credential sharing for gaps between who has access and who should.

03

Trigger, Data and Hardening Testing

We test webhook authentication directly, review execution data retention and pruning, and check environment hardening, blocked nodes, community nodes and public API exposure.

04

Reporting and Retest

Executive summary, technical report with CVSS scores and reproduction steps, a walkthrough call, a free retest after remediation and an attestation letter.

CREDENTIALS

Verified Accreditations Auditors Accept

Every credential below is independently verifiable. UK procurement teams, FCA supervisors, ISO 27001 / SOC 2 auditors, and cyber insurance underwriters all recognise these standards.

GET YOUR QUOTE

Get a CREST n8n pen test quote in 24 hours

A fixed-price quote back in one business day, from a named CREST assessor. No sales pipeline, no chasing.

  • CREST and IASME accredited. Testing your auditors and clients already recognise.
  • Fast-track testing within 24 hours where required. Free retest of every fix included.
  • Live findings via your client portal, not a four-week PDF.
  • Fixed price from £3,500 for a single-role, single-app scope, agreed up front. Most engagements run £5,000 and up. No day-rate surprises.
What clients say
There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.
CelloriDan WilcocksonFounder, Cellori

Under NDA Further named references available on a scoping call.

What happens next
  1. We reply within one business day with a fixed-price quote from a named CREST assessor.
  2. You approve the scope and we book a start date, usually within 24 hours.
  3. Live findings land in your client portal as we test, with a free retest of every fix.
Accredited & recognised
CREST member Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified UK Cyber Security Council Crown Commercial Service supplier

Get your fixed pen test quote in 24 hours

⚡24h reply ✓CREST tester ↻Free retests

or book a 20-min scoping call first

We reply within one business day. Your data stays with us. No newsletter signup.

COMPLIANCE READY

Reports Mapped to Every Framework

Findings are written so your team can reference the report against each framework without translation work.

ISO 27001:2022

Annex A.8.8 management of technical vulnerabilities plus A.5.15-5.18 and A.8.2-8.5 access control validation.

SOC 2 Type I & II

CC6 logical access, CC7 system operations, CC8 change management evidence.

PCI DSS

Requirement 11.4 application penetration testing across cardholder data environments, including ecommerce penetration testing for online retail platforms.

FCA SYSC

SYSC 4.1.1R, 6.1.1R, 13 mapped to each finding for FCA-regulated firms.

UK GDPR

Article 32 effectiveness testing, customer-data security controls, ICO-acceptable evidence.

Cyber Essentials Plus

Direct certification through our IASME body status, single-vendor delivery.

PRICING

Transparent n8n Security Review Pricing

Pricing depends on the number of roles, integrations and environments in scope. See our pricing page for how we quote.

✦ ALWAYS · ON EVERY TIER · NO EXCEPTIONS ✦
✓Free retests, no time limit
✓Free rescheduling
✓No cancellation fees
✓24-hour scope to active testing
✓Live findings to client portal
✓Executive + technical report
✓60-min walkthrough call
✓Letter of attestation
SMALL / SMB
£2,670–£3,920
2 to 3 testing days

Single user role, basic CRUD application, marketing website with auth. Around 5 working days from kickoff to report.

Get a fixed quote
ENTERPRISE
£6,270–£9,560
5 to 7 testing days

Multi-tenant platform, complex authorisation matrix, integration-heavy applications. Around 15 to 20 working days from kickoff to report.

Get a fixed quote

Full UK pen test cost guide

WHY EJN LABS

What You Get From n8n Security Review

Six concrete differentiators competitors don’t all match.

CREST-Certified Testers, Verifiable

Every test by a CREST-certified pen tester (CRT, CCT APP, CCT INF where applicable). Verify our company status at crest-approved.org.

24-Hour Startup, Where Required

From signed scope to active testing in a single business day for incident response, audit deadlines, or regulator-driven timelines.

Live Findings, Not 4-Week PDFs

Critical issues reported during testing through your client portal. Your team remediates while testing continues.

Audit-Ready Reports

Executive summary plus full technical report with CVSS scores and explicit framework mappings (ISO 27001, SOC 2, PCI DSS, FCA SYSC).

Free Retests, Standard

Verify remediation of every finding before close-out. Letter of attestation for audit submission included. Most competitors charge £1,500-£3,000 per retest.

UK-Based CREST Testers

Every engagement performed by vetted, UK-based CREST-certified testers, matched to your needs, security clearance, and compliance scope.

FAQ

Frequently Asked

What access do you need to test our n8n instance?

At least one login for every project role and instance role in scope, plus Owner or Admin access where we’re reviewing instance-wide policies, MFA enforcement or environment variables directly. Read access to workflow definitions and the credentials list, not the credential values themselves, and on self-hosted the environment configuration, speeds up scoping but is not required to start.

Will testing touch live data?

We test read-only against production by default, and where a workflow writes, updates or deletes real records we agree a sandbox environment or specific test data with you first. Anything we create during testing to prove a finding is documented and removed afterwards.

Is this different for n8n Cloud versus a self-hosted instance?

Yes. n8n Cloud removes infrastructure, patching and network exposure from scope since n8n manages that layer, so testing focuses on your workflows, credentials, roles and projects. A self-hosted instance adds the editor’s network exposure, the encryption key, environment hardening and any blocked or enabled nodes to the same scope.

Does n8n have a customer penetration-testing policy we need to follow?

n8n publishes its own testing cadence, an annual third-party penetration test and vulnerability scans at least every 90 days, but does not publish a separate policy authorising customers to run their own tests against n8n Cloud. We confirm n8n’s current terms of service and any Cloud-specific restrictions with you before testing starts; a self-hosted instance you control does not need that sign-off.

What is out of scope?

n8n’s own Cloud infrastructure, multi-tenant hosting, and the third-party services your credentials connect to are all out of scope. We test your workflows, triggers, credentials, roles, projects and, on self-hosted, your instance configuration; a separate system on the other end of an integration is scoped and quoted as its own engagement.

How long does an n8n security review take?

A single instance with a handful of workflows sits in our 2-day single-instance scope, with more workflows, projects, community nodes or a wider integration surface extending it. We confirm the exact day count once we’ve seen the instance.

Do you need our workflow source or admin access?

No, testing is black-box by default against the role accounts you provide. Read access to exported workflow JSON, node configurations and, where relevant, community node source speeds up root-causing anything we find, and pairs well with a separate source code review.

Are your testers CREST certified?

Yes. Every n8n engagement is carried out by UK-based, CREST-certified testers, and your report and attestation letter are recognised by auditors and insurers accordingly.

EXPLORE EVERY SERVICE

20+ CREST-accredited testing services in one place

Web, mobile, API, cloud, AI, infrastructure, red team. Pick the test that fits your environment.

Penetration testing services
READY TO START

Get a fixed price for your n8n instance

An n8n webhook can trigger a workflow with no authentication at all, so anyone with the URL can run it. We test webhook authentication, credential sharing, execution data and self-hosted exposure. CREST-certified testers, fixed price from £2,670 for a 2-day single-instance scope, quoted within 24 hours.