---
id: "GHSA-jmcg-c7p5-q69g"
page: "https://infrastack.ai/live/GHSA-jmcg-c7p5-q69g"
kind: "vulnerability"
aliases: ["GHSA-jmcg-c7p5-q69g"]
title: "NocoDB Node Sends Its API Token to Attacker-Chosen Hosts When Downloading Attachments"
severity: "medium"
cvss: 6.3
epss: null
exploited: false
status: "open"
category: "package"
products: [{"name": "n8n", "fixed": [">= 1.123.89"], "affected": "< 1.123.89", "ecosystem": "npm"}, {"name": "n8n", "fixed": [">= 2.46.1"], "affected": "< 2.46.1", "ecosystem": "npm"}, {"name": "n8n", "fixed": [">= 2.45.5"], "affected": "< 2.45.5", "ecosystem": "npm"}, {"name": "n8n", "fixed": [">= 3.0.1"], "affected": "< 3.0.1", "ecosystem": "npm"}]
ecosystems: ["npm"]
tags: ["n8n", "nocodb", "package", "self-hosted", "workflow-automation"]
not_affected_if: ["attachments-download-disabled", "fixed-version", "no-nocodb-node"]
published_at: "2026-10-28T08:49:08+00:00"
first_seen_at: "2026-11-09T22:53:25+00:00"
updated_at: "2026-11-09T22:55:01+00:00"
sources: [{"source": "ghsa-repo", "url": "https://github.com/n8n-io/n8n/security/advisories/GHSA-jmcg-c7p5-q69g", "first_seen_at": "2026-11-09T22:53:25+00:00"}]
exploit_sources: []
---

# NocoDB Node Sends Its API Token to Attacker-Chosen Hosts When Downloading Attachments

Link for people: https://infrastack.ai/live/GHSA-jmcg-c7p5-q69g (this .md is for agents)

When the n8n NocoDB node downloads attachments, it fetches the URL stored in the record without checking it against the NocoDB host, so the NocoDB API token is sent to whatever host the URL names. Anyone who can edit an attachment cell in a NocoDB base can make the token go to a host they control when the workflow runs.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- npm:n8n affected < 1.123.89 fixed >= 1.123.89
- npm:n8n affected < 2.46.1 fixed >= 2.46.1
- npm:n8n affected < 2.45.5 fixed >= 2.45.5
- npm:n8n affected < 3.0.1 fixed >= 3.0.1

## How to check

- Check the n8n version with `n8n --version` and compare it with the fixed versions below.
- Look for NocoDB nodes with "Download Attachments" turned on in your workflows.
- Review who has editor access to NocoDB bases that feed those workflows.

## Fix

- n8n `1.123.89` on the 1.x line
- n8n `2.45.5` on the 2.45 line
- n8n `2.46.1` on the 2.46 line
- n8n `3.0.1` on the 3.x line

## Timeline

- 2026-11-09T22:53:25+00:00 ghsa-repo https://github.com/n8n-io/n8n/security/advisories/GHSA-jmcg-c7p5-q69g

## Documents

- [advisory] Maintainer's advisory: github.com https://github.com/n8n-io/n8n/security/advisories/GHSA-jmcg-c7p5-q69g

## From the sources

## Impact

When the NocoDB node reads rows with "Download Attachments" enabled, it takes the attachment URL directly from the record content and fetches it using the configured NocoDB credential. The target host is never compared against the credential's own host, so any party who can write to an attachment cell in a NocoDB base can cause the credential's API token to be sent to a host of their choosing when the workflow next executes.

## Patches

The issue has been fixed in n8n versions 1.123.89, 2.45.5, 2.46.1 and 3.0.1. Users should upgrade to one of these versions or later to remediate the vulnerability.

## Workarounds

If upgrading is not immediately possible, administrators should consider the following temporary mitigations:
- Restrict n8n instance access to fully trusted users only.
- Disable the "Download Attachments" option on all active NocoDB nodes until the instance is patched.
- Audit NocoDB base memberships and remove editor access from any users who are not fully trusted.
- Rotate any NocoDB API tokens used by affected workflows and audit recent execution logs for unexpected outbound requests.
- Enable SSRF protection by setting `N8N_SSRF_PROTECTION_ENABLED=true`.

These workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
