Cloudanix VulnDB

CVE-2024-21217

Low · 3.7

CVSS

3.7

EPSS

1.1%

Published

Oct 15, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A problem in how certain Java software handles incoming data can let remote attackers briefly disrupt parts of an application without needing login credentials.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
High
Impact
Denial Of Service
Component
Library
Class
Deserialization
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw is a difficult-to-exploit deserialization issue in the Java Serialization component that permits an unauthenticated network attacker to trigger a partial denial of service condition.

Why it matters to the business

Organizations running affected Java runtimes or libraries that depend on them may experience intermittent service degradation or application unavailability when untrusted data is processed, increasing operational risk for internet-facing or client-side Java deployments.

How an attack unfolds

An attacker crafts malicious serialized payloads and supplies them to Java APIs exposed over network protocols; because the vulnerability can be reached through web services or sandboxed applets that accept untrusted data, successful delivery results in partial resource exhaustion without requiring authentication or user interaction.

How to fix it

Upgrade all affected Oracle Java SE installations to patched releases beyond 8u421, 11.0.24, 17.0.12, 21.0.4 or 23, and update any org.jline:jline-parent dependencies to version 3.25.0 or later; apply vendor patches promptly given the public disclosure date and presence in widely used Java ecosystems.

How to confirm the fix worked

Verify Java version strings and library manifests against the listed fixed versions; conduct targeted deserialization tests with known-bad payloads in a lab environment and confirm absence of the partial DoS effect after upgrade.

Typical attack path

  1. Identify a Java application or service exposing serialization endpoints or accepting untrusted serialized input
  2. Craft and transmit a specially formed serialized object via HTTP, RMI, or other supported protocols
  3. Trigger deserialization within the vulnerable Oracle Java SE or GraalVM component
  4. Cause partial denial of service affecting availability of the targeted process

How to detect it

Review application and web server logs for unusual serialized object sizes or repeated deserialization failures from external sources; monitor for spikes in CPU or memory usage tied to Java processes handling untrusted input.

What your security team should do

  • Prioritize patching of internet-facing or client-facing Java deployments within the next maintenance window
  • Inventory all uses of org.jline libraries and Oracle GraalVM/ Java SE runtimes across the environment
  • Implement input validation and sandboxing controls around any deserialization code paths until upgrades are complete

The record

Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition product of Oracle Java SE (component: Serialization). Supported versions that are affected are Oracle Java SE: 8u421, 8u421-perf, 11.0.24, 17.0.12, 21.0.4, 23; Oracle GraalVM for JDK: 17.0.12, 21.0.4, 23; Oracle GraalVM Enterprise Edition: 20.3.15 and 21.3.11. Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition. Note: This vulnerability can be exploited by using APIs in the specified Component, e.g., through a web service which supplies data to the APIs. This vulnerability also applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. CVSS 3.1 Base Score 3.7 (Availability impacts). CVSS Vector: (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L).

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 java-21-openjdk 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-demo 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-demo-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-demo-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-devel 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-devel-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-devel-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-headless 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-headless-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-headless-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-javadoc 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-javadoc-zip 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-jmods 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-jmods-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-jmods-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-src 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-src-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-src-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-static-libs 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-static-libs-fastdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:8 java-21-openjdk-static-libs-slowdebug 0 1:21.0.5.0.10-3.el8.alma.1
AlmaLinux:9 java-1.8.0-openjdk 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-demo 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-demo-fastdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-demo-slowdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-devel 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-devel-fastdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-devel-slowdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-fastdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-headless 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-headless-fastdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-headless-slowdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-javadoc 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-javadoc-zip 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-slowdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-src 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-src-fastdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-1.8.0-openjdk-src-slowdebug 0 1:1.8.0.432.b06-2.el9
AlmaLinux:9 java-11-openjdk 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-demo 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-demo-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-demo-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-devel 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-devel-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-devel-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-headless 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-headless-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-headless-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-javadoc 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-javadoc-zip 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-jmods 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-jmods-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-jmods-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-src 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-src-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-src-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-static-libs 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-static-libs-fastdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-11-openjdk-static-libs-slowdebug 0 1:11.0.25.0.9-2.el9
AlmaLinux:9 java-17-openjdk 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-demo 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-demo-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-demo-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-devel 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-devel-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-devel-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-headless 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-headless-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-headless-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-javadoc 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-javadoc-zip 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-jmods 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-jmods-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-jmods-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-src 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-src-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-src-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-static-libs 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-static-libs-fastdebug 0 1:17.0.13.0.11-3.el9.alma.1
AlmaLinux:9 java-17-openjdk-static-libs-slowdebug 0 1:17.0.13.0.11-3.el9.alma.1
Chainguard corretto-17 0 17.0.13.11.1-r0
Chainguard corretto-17-dbg 0 17.0.13.11.1-r0
Chainguard corretto-17-default-jdk 0 17.0.13.11.1-r0
Chainguard corretto-17-default-jvm 0 17.0.13.11.1-r0
Chainguard corretto-17-default-policy 0 17.0.13.11.1-r0
Chainguard corretto-17-demos 0 17.0.13.11.1-r0
Chainguard corretto-17-doc 0 17.0.13.11.1-r0
Chainguard corretto-17-jmods 0 17.0.13.11.1-r0
Chainguard corretto-17-jre 0 17.0.13.11.1-r0
Chainguard corretto-17-jre-base 0 17.0.13.11.1-r0
Chainguard corretto-21 0 21.0.5.11.1-r0
Chainguard corretto-21-dbg 0 21.0.5.11.1-r0
Chainguard corretto-21-default-jdk 0 21.0.5.11.1-r0
Chainguard corretto-21-default-jvm 0 21.0.5.11.1-r0
Chainguard corretto-21-default-policy 0 21.0.5.11.1-r0
Chainguard corretto-21-demos 0 21.0.5.11.1-r0
Chainguard corretto-21-doc 0 21.0.5.11.1-r0
Chainguard corretto-21-jmods 0 21.0.5.11.1-r0
Chainguard corretto-21-jre 0 21.0.5.11.1-r0
Chainguard openjdk-11-bcfips 0 11.0.25-r0
Chainguard openjdk-11-bcfips-additional-sun-providers 0 11.0.25-r0
Chainguard openjdk-11-dbg-bcfips 0 11.0.25-r0
Chainguard openjdk-11-default-jdk-bcfips 0 11.0.25-r0
Chainguard openjdk-11-default-jvm-bcfips 0 11.0.25-r0
Chainguard openjdk-11-demos-bcfips 0 11.0.25-r0
Chainguard openjdk-11-doc-bcfips 0 11.0.25-r0
Chainguard openjdk-11-jmods-bcfips 0 11.0.25-r0
Chainguard openjdk-11-jre-base-bcfips 0 11.0.25-r0
Chainguard openjdk-11-jre-bcfips 0 11.0.25-r0
Chainguard openjdk-11-jre-bcfips-additional-sun-providers 0 11.0.25-r0
Chainguard openjdk-11-openj9 0 0.53.0-r0
Chainguard openjdk-11-openj9-dbg 0 0.53.0-r0
Chainguard openjdk-11-openj9-default-jdk 0 0.53.0-r0
Chainguard openjdk-11-openj9-default-jvm 0 0.53.0-r0
Chainguard openjdk-11-openj9-default-policy 0 0.53.0-r0
Chainguard openjdk-11-openj9-doc 0 0.53.0-r0
Chainguard openjdk-11-openj9-jmods 0 0.53.0-r0
Chainguard openjdk-11-openj9-jre 0 0.53.0-r0
Chainguard openjdk-13 0 13.0.14.5-r4
Chainguard openjdk-13-default-jdk 0 13.0.14.5-r4
Chainguard openjdk-13-default-jvm 0 13.0.14.5-r4
Chainguard openjdk-13-demos 0 13.0.14.5-r4
Chainguard openjdk-13-doc 0 13.0.14.5-r4
Chainguard openjdk-13-jmods 0 13.0.14.5-r4
Chainguard openjdk-13-jre 0 13.0.14.5-r4
Chainguard openjdk-13-jre-base 0 13.0.14.5-r4
Chainguard openjdk-14 0 14.0.2.12-r7
Chainguard openjdk-14-default-jdk 0 14.0.2.12-r7
Chainguard openjdk-14-default-jvm 0 14.0.2.12-r7
Chainguard openjdk-14-demos 0 14.0.2.12-r7
Chainguard openjdk-14-doc 0 14.0.2.12-r7
Chainguard openjdk-14-jmods 0 14.0.2.12-r7
Chainguard openjdk-14-jre 0 14.0.2.12-r7
Chainguard openjdk-14-jre-base 0 14.0.2.12-r7
Chainguard openjdk-15 0 15.0.10.5-r7
Chainguard openjdk-15-default-jdk 0 15.0.10.5-r7
Chainguard openjdk-15-default-jvm 0 15.0.10.5-r7
Chainguard openjdk-15-demos 0 15.0.10.5-r7
Chainguard openjdk-15-doc 0 15.0.10.5-r7
Chainguard openjdk-15-jmods 0 15.0.10.5-r7
Chainguard openjdk-15-jre 0 15.0.10.5-r7
Chainguard openjdk-15-jre-base 0 15.0.10.5-r7
Chainguard openjdk-16 0 16.0.2.7-r7
Chainguard openjdk-16-default-jdk 0 16.0.2.7-r7
Chainguard openjdk-16-default-jvm 0 16.0.2.7-r7
Chainguard openjdk-16-demos 0 16.0.2.7-r7
Chainguard openjdk-16-doc 0 16.0.2.7-r7
Chainguard openjdk-16-jmods 0 16.0.2.7-r7
Chainguard openjdk-16-jre 0 16.0.2.7-r7
Chainguard openjdk-16-jre-base 0 16.0.2.7-r7
Chainguard openjdk-17-bcfips 0 17.0.13-r0
Chainguard openjdk-17-bcfips-additional-sun-providers 0 17.0.13-r0
Chainguard openjdk-17-dbg-bcfips 0 17.0.13-r0
Chainguard openjdk-17-default-jdk-bcfips 0 17.0.13-r0
Chainguard openjdk-17-default-jvm-bcfips 0 17.0.13-r0
Chainguard openjdk-17-demos-bcfips 0 17.0.13-r0
Chainguard openjdk-17-doc-bcfips 0 17.0.13-r0
Chainguard openjdk-17-jmods-bcfips 0 17.0.13-r0
Chainguard openjdk-17-jre-base-bcfips 0 17.0.13-r0
Chainguard openjdk-17-jre-bcfips 0 17.0.13-r0
Chainguard openjdk-17-jre-bcfips-additional-sun-providers 0 17.0.13-r0
Chainguard openjdk-17-openj9 0 0.53.0-r0
Chainguard openjdk-17-openj9-dbg 0 0.53.0-r0
Chainguard openjdk-17-openj9-default-jdk 0 0.53.0-r0
Chainguard openjdk-17-openj9-default-jvm 0 0.53.0-r0
Chainguard openjdk-17-openj9-default-policy 0 0.53.0-r0
Chainguard openjdk-17-openj9-doc 0 0.53.0-r0
Chainguard openjdk-17-openj9-jmods 0 0.53.0-r0
Chainguard openjdk-17-openj9-jre 0 0.53.0-r0
Chainguard openjdk-18 0 18.0.2.1.0-r6
Chainguard openjdk-18-default-jdk 0 18.0.2.1.0-r6
Chainguard openjdk-18-default-jvm 0 18.0.2.1.0-r6
Chainguard openjdk-18-demos 0 18.0.2.1.0-r6
Chainguard openjdk-18-doc 0 18.0.2.1.0-r6
Chainguard openjdk-18-jmods 0 18.0.2.1.0-r6
Chainguard openjdk-18-jre 0 18.0.2.1.0-r6
Chainguard openjdk-18-jre-base 0 18.0.2.1.0-r6
Chainguard openjdk-19 0 19.0.2.7-r6
Chainguard openjdk-19-default-jdk 0 19.0.2.7-r6
Chainguard openjdk-19-default-jvm 0 19.0.2.7-r6
Chainguard openjdk-19-demos 0 19.0.2.7-r6
Chainguard openjdk-19-doc 0 19.0.2.7-r6
Chainguard openjdk-19-jmods 0 19.0.2.7-r6
Chainguard openjdk-19-jre 0 19.0.2.7-r6
Chainguard openjdk-19-jre-base 0 19.0.2.7-r6
Chainguard openjdk-20 0 20.0.2.9-r5
Chainguard openjdk-20-dbg 0 20.0.2.9-r5
Chainguard openjdk-20-default-jdk 0 20.0.2.9-r5
Chainguard openjdk-20-default-jvm 0 20.0.2.9-r5
Chainguard openjdk-20-demos 0 20.0.2.9-r5
Chainguard openjdk-20-doc 0 20.0.2.9-r5
Chainguard openjdk-20-jmods 0 20.0.2.9-r5
Chainguard openjdk-20-jre 0 20.0.2.9-r5
Chainguard openjdk-20-jre-base 0 20.0.2.9-r5

Related vulnerabilities