Critical Performance Degradation in node-jose Package Due to JWE Decryption Vulnerability

node-jose Updated 03 Oct 2025

Summary

09/03/2024
N/A
No i
Medium
4.9

UBUNTU-CVE-2024-28176: jose is JavaScript module for JSON Object Signing and Encryption, providing support for JSON Web Tokens (JWT), JSON Web Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), JSON Web Key Set (JWKS), and more. Affects node-jose versions 4.3.7+ds-1 – 4.5.0+ds-1. 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 Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The node-jose package is a JavaScript module designed for JSON Object Signing and Encryption. It provides essential functionalities such as support for JSON Web Tokens (JWT), JSON Web Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), and JSON Web Key Set (JWKS). This package is widely used in applications requiring secure data transmission and authentication. However, it has recently been identified to have a vulnerability that can lead to significant performance issues under specific conditions.

Vulnerability Detail

A vulnerability has been identified in the JSON Web Encryption (JWE) decryption interfaces of the node-jose package. This issue arises from the handling of decompression of plaintext after decryption. Under certain circumstances, an attacker could exploit this vulnerability to cause the user's environment to consume an unreasonable amount of CPU time or memory during JWE decryption operations. This could lead to denial-of-service conditions, severely impacting application performance and user experience. The vulnerability has been assigned the identifier CVE-2024-28176 and has a CVSS score of 4.9, indicating a medium severity level.

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

If immediate patching is not feasible, consider implementing rate limiting on JWE decryption operations to mitigate the impact of potential abuse. Additionally, ensure that input validation is performed to prevent malformed JWE tokens from being processed.

Conclusion

The node-jose package has a critical vulnerability related to JWE decryption that can lead to significant performance degradation. It is crucial to update to the patched version to mitigate risks. Users should also consider workarounds if immediate updates are not possible.

See every vulnerability recorded for node-jose →

Share this vulnerability

FAQ

node-jose is a JavaScript module that provides functionalities for JSON Object Signing and Encryption, including support for JWT, JWS, JWE, JWK, and JWKS.

The vulnerability allows for excessive CPU and memory usage during JWE decryption, potentially leading to denial-of-service conditions.

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

Implement rate limiting on JWE decryption operations and ensure proper input validation to mitigate the effects of the vulnerability.

The CVSS score of this vulnerability is 4.9, indicating a medium severity level.

Related vulnerabilities

Recent vulnerabilities recorded for node-jose.

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