Critical Vulnerability in Node.js: Diagnostics Channel Event Hooking

nodejs Updated 02 Oct 2025

Summary

22/01/2025
N/A
Yes i
Unrated
Not published

CVE-2025-23083: With the aid of the diagnostics_channel utility, an event can be hooked into whenever a worker thread is created. Affects nodejs versions < 22.13.1-r0. Fixed in 22.13.1-r0. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored MarkAI Find prospects already talking about the problem you solve AI watches the communities your customers use to find qualified prospects, then alerts you when a conversation is worth joining. See MarkAI

Background

Node.js is a powerful JavaScript runtime built on Chrome's V8 engine, designed for building scalable network applications. It allows developers to use JavaScript on the server-side, enabling the creation of dynamic web applications. The diagnostics_channel utility in Node.js facilitates event-driven programming by allowing developers to hook into various events. However, a vulnerability has been identified that exposes internal worker threads, potentially allowing malicious actors to exploit this functionality.

Vulnerability Detail

The vulnerability, identified as CVE-2025-23083, arises from the diagnostics_channel utility, which allows an event to be hooked whenever a worker thread is created. This exposure is not limited to user-created workers; it also includes internal workers, which can be fetched and manipulated. This could lead to unauthorized access and execution of malicious code, particularly affecting users who have enabled the Permission Model in Node.js versions 20, 22, and 23. The implications of this vulnerability are severe, as it can compromise the integrity and security of applications relying on Node.js.

How To Fix

Minimum fixed version

22.13.1-r0

This is the first release that contains the fix.

sudo apk add --upgrade nodejs

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a temporary workaround, users can disable the diagnostics_channel utility or avoid using the Permission Model until a patch is applied. This can be done by modifying the application code to refrain from utilizing these features until the vulnerability is resolved.

Conclusion

CVE-2025-23083 presents a significant risk to applications using Node.js, particularly those utilizing the diagnostics_channel utility and the Permission Model. It is crucial for developers to stay informed about this vulnerability and take necessary actions to mitigate risks by updating their Node.js installations or implementing workarounds.

See every vulnerability recorded for nodejs →

Share this vulnerability

FAQ

CVE-2025-23083 is a vulnerability in Node.js that allows unauthorized access to internal worker threads through the diagnostics_channel utility.

Node.js versions 20, 22, and 23 are affected by this vulnerability.

You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.

If immediate updates are not possible, consider disabling the diagnostics_channel utility or avoiding the use of the Permission Model as a temporary workaround.

More information can be found on the official CVE database or through security advisories related to Node.js.

Related vulnerabilities

Recent vulnerabilities recorded for nodejs.

How To Fix

Minimum fixed version

22.13.1-r0

This is the first release that contains the fix.

sudo apk add --upgrade nodejs

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback