Node.js Integrity Check Bypass Vulnerability in Node.js Packages

nodejs Updated 02 Oct 2025

Summary

18/10/2023
N/A
No i
High
7.5

UBUNTU-CVE-2023-38552: When the Node.js policy feature checks the integrity of a resource against a trusted manifest, the application can intercept the operation and return a forged checksum to the node's policy implementation, thus effectivel... Affects nodejs versions 12.22.5~dfsg-5ubuntu1 – 12.22.9~dfsg-1ubuntu3.6. No fix is published. 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 Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

Node.js is a popular open-source JavaScript runtime built on Chrome's V8 JavaScript engine, widely used for building scalable network applications. The affected packages, including 'nodejs', 'libnode-dev', and 'libnode72', are integral to the Node.js ecosystem, providing essential functionalities for developers. However, a recent vulnerability has been identified that compromises the integrity check mechanism of Node.js, particularly affecting users who utilize the experimental policy feature.

Vulnerability Detail

The vulnerability, identified as CVE-2023-38552, arises when the Node.js policy feature checks the integrity of a resource against a trusted manifest. An attacker can intercept this operation and return a forged checksum, effectively disabling the integrity check. This flaw affects all users employing the experimental policy mechanism across active release lines, including versions 18.x and 20.x. The ramifications include potential unauthorized access and manipulation of resources, posing significant security risks.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary workaround, users can disable the experimental policy feature in their Node.js applications until a patch is applied. This can be done by avoiding the use of the policy mechanism in the application code.

Conclusion

The CVE-2023-38552 vulnerability poses significant risks to Node.js applications utilizing the experimental policy feature. It is crucial for users to update their packages to the latest versions to mitigate these risks. Additionally, utilizing tools like Vulert can help monitor and alert for open-source vulnerabilities in real-time.

See every vulnerability recorded for nodejs →

Share this vulnerability

FAQ

CVE-2023-38552 is a vulnerability in Node.js that allows attackers to bypass integrity checks by returning forged checksums.

The vulnerability affects all users of the experimental policy mechanism in Node.js versions 18.x and 20.x.

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

As a temporary measure, consider disabling the experimental policy feature in your application until you can apply the patch.

The CVSS score for CVE-2023-38552 is 7.5, indicating a high severity level.

Related vulnerabilities

Recent vulnerabilities recorded for nodejs.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. 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