Description
Node-RED's local-filesystem library storage module (getLibraryEntry() and saveLibraryEntry() in packages/node_modules/@node-red/runtime/lib/storage/localfilesystem/library.js), reachable via GET/POST /library/:lib/:type/*path, joins the user-supplied path parameter directly into the filesystem path via fspath.join(libDir, type, path) with no traversal sanitization, containment check, or path normalization/prefix verification. An authenticated user (including read-only-scoped tokens for the read path) can supply a path containing `../` sequences to read arbitrary files outside the library directory; a user with write access can write arbitrary files, enabling remote code execution via SSH authorized_keys or cron injection. This is a distinct, separately unpatched traversal from the previously fixed CVE-2021-21298 (Projects API).
Published: 2026-08-05
Score: 7.2 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Node-RED's local-filesystem library storage module exposes a REST endpoint that concatenates a user-supplied path directly into a filesystem path without sanitization, making the system vulnerable to classic path traversal. An attacker who is authenticated—either with full privileges or with a read-only token for reading, or with write access for creating files—can supply a path containing ../ sequences. This allows the actor to read any file outside the intended library directory, and with write permissions to create or overwrite files. Writing arbitrary files can lead to remote code execution, for example by placing a malicious key into a user's SSH authorized_keys or inserting a script into cron, thereby compromising the underlying host. The vulnerability originates from the getLibraryEntry() and saveLibraryEntry() functions in the localfilesystem module.

Affected Systems

The affected product is Node-RED, specifically the local-filesystem storage implementation found in the packages/node_modules/@node-red/runtime/lib/storage/localfilesystem library. Any Node-RED installation that has the default filesystem storage enabled and exposes the /library/:lib/:type/*path endpoint is susceptible; this includes all versions prior to the patch that was released after detection of the flaw. Network exposure or admin-configured roles that allow authenticated users to invoke the endpoint will broaden the attack surface.

Risk and Exploitability

The CVSS score of 7.2 indicates high severity. EPSS data is not available, but the lack of listing in the CISA KEV catalog suggests no known exploitable code is widespread yet. The attack requires authentication, yet read-only tokens are sufficient to read arbitrary files, and write tokens can force remote code execution. If an attacker can gain write access, the exploitation path is straightforward: upload a malicious payload that is executed by the host, granting full control. Consequently, the practical risk is high for environments with publicly accessible Node-RED instances or where privileged users have outdated installations.

Generated by OpenCVE AI on August 5, 2026 at 15:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Node-RED to the latest version that includes the path-sanitization mitigation.
  • If upgrading immediately is not feasible, limit access to the /library/:lib/:type/*path endpoint by restricting it to users with necessary privileges and disabling it for anonymous or read-only tokens.
  • Monitor system logs for unexpected file read or write activity outside the library directory and regularly audit SSH authorized_keys and cron files for unauthorized modifications.

Generated by OpenCVE AI on August 5, 2026 at 15:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 05 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 05 Aug 2026 13:15:00 +0000

Type Values Removed Values Added
Description Node-RED's local-filesystem library storage module (getLibraryEntry() and saveLibraryEntry() in packages/node_modules/@node-red/runtime/lib/storage/localfilesystem/library.js), reachable via GET/POST /library/:lib/:type/*path, joins the user-supplied path parameter directly into the filesystem path via fspath.join(libDir, type, path) with no traversal sanitization, containment check, or path normalization/prefix verification. An authenticated user (including read-only-scoped tokens for the read path) can supply a path containing `../` sequences to read arbitrary files outside the library directory; a user with write access can write arbitrary files, enabling remote code execution via SSH authorized_keys or cron injection. This is a distinct, separately unpatched traversal from the previously fixed CVE-2021-21298 (Projects API).
Title Node-RED Library API Path Traversal Leading to Arbitrary File Read/Write
Weaknesses CWE-22
References
Metrics cvssV3_1

{'score': 7.2, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-05T15:42:25.391Z

Reserved: 2026-08-05T12:23:34.967Z

Link: CVE-2026-71269

cve-icon Vulnrichment

Updated: 2026-08-05T15:42:22.557Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T15:30:17Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')