Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,32 @@ the community they pose.
Node.js releases won't be affected by such vulnerabilities. Users are
responsible for keeping the software they use through Corepack up-to-date.

#### Exposing Application-Level APIs to Untrusted Users (CWE-653)

* Node.js trusts the application code that uses its APIs. When application code
exposes Node.js functionality to untrusted users in an unsafe manner, any
resulting crashes, data corruption, or other issues are not considered
vulnerabilities in Node.js itself. It is the application's responsibility to:
* Validate and sanitize all untrusted input before passing it to Node.js APIs.
* Design appropriate access controls and security boundaries.
* Avoid exposing low-level or dangerous APIs directly to untrusted users.

* Examples of scenarios that are **not** Node.js vulnerabilities:
* Allowing untrusted users to register SQLite user-defined functions that can
perform arbitrary operations (e.g., closing database connections during query
execution, causing crashes or use-after-free conditions).
* Exposing `child_process.exec()` or similar APIs to untrusted users without
proper input validation, allowing command injection.
* Allowing untrusted users to control file paths passed to file system APIs
without validation, leading to path traversal issues.
* Permitting untrusted users to define custom code that executes with the
application's privileges (e.g., custom transforms, plugins, or callbacks).

* These scenarios represent application-level security issues, not Node.js
vulnerabilities. The root cause is the application's failure to establish
proper security boundaries between trusted application logic and untrusted
user input.

## Assessing experimental features reports

Experimental features are eligible for security reports just like any other
Expand Down
Loading