CVE-2024-28176
JavaScript vulnerability analysis and mitigation

Overview

A vulnerability has been identified in the JSON Web Encryption (JWE) decryption interfaces of the jose JavaScript module, specifically related to the support for decompressing plaintext after its decryption. The vulnerability (CVE-2024-28176) was discovered in versions ≤ 4.15.4 and has been patched in versions ^2.0.7 and ^4.15.5 (GitHub Advisory).

Technical details

The vulnerability allows an adversary to exploit scenarios where the compression ratio becomes exceptionally high during JWE decryption operations. The length of the JWE token, which is determined by the compressed content's size, can fall below application-defined limits, potentially rendering existing application-level mechanisms for preventing resource exhaustion ineffective. The issue has been assigned a CVSS v3.1 base score of 5.3 (Moderate) with vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L (GitHub Advisory).

Impact

Under certain conditions, it is possible for an attacker to cause the user's environment to consume unreasonable amounts of CPU time or memory during JWE Decryption operations. The impact is limited to Node.js users utilizing the JWE decryption APIs to decrypt JWEs from untrusted sources (GitHub Advisory).

Exploitability

The vulnerability is exploitable when processing JWE tokens from untrusted sources in Node.js environments. Users are not affected if they use jose version v5.x (where JWE Compression is not supported), run in environments other than Node.js, do not use JWE decryption APIs, or only accept JWEs from trusted sources (GitHub Advisory).

Mitigation and workarounds

The vulnerability has been patched in versions v2.0.7 and v4.15.5, which limit the decompression routine to only allow decompressing up to 250 kB of plaintext. For users who cannot upgrade, they can detect and reject compressed JWE tokens by checking the token's protected header. Additionally, as per RFC 8725, compression of data SHOULD NOT be done before encryption, as compressed data often reveals information about the plaintext (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-59160HIGH8.8
  • JavaScript logoJavaScript
  • @yeger/turbo-graph
NoYesSep 09, 2026
CVE-2026-59179HIGH8.3
  • JavaScript logoJavaScript
  • @openhop/server
NoYesSep 09, 2026
GHSA-x7m8-jrm8-hpvxHIGH8.1
  • JavaScript logoJavaScript
  • @eigenpal/docx-editor-core
NoYesSep 10, 2026
CVE-2026-59176HIGH7.8
  • JavaScript logoJavaScript
  • functype-mcp-server
NoYesSep 09, 2026
CVE-2026-59158HIGH7.5
  • JavaScript logoJavaScript
  • nuxt-ollama
NoYesSep 09, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management