Cloudanix VulnDB

CVE-2024-21004

Low · 2.5

CVSS

2.5

EPSS

0.4%

Published

Apr 16, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A hard-to-reach flaw in certain older Java setups could let someone who already has access to a computer trick another user into changing a small amount of data inside a protected Java program.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
High
Impact
Data Tampering
Component
Library
Class
Authorization Bypass
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw permits unauthorized modification (insert/update/delete) of a limited subset of accessible data within sandboxed JavaFX applications or applets that process untrusted code from the network; it requires local infrastructure access, high attack complexity, and interaction from a non-attacker user.

Why it matters to the business

Organizations running older Java desktop or client deployments that load untrusted code face a low-risk chance of limited data tampering, with minimal operational disruption but potential compliance or integrity concerns in client-facing applications.

How an attack unfolds

An attacker with logon access to a system running affected Java versions crafts or hosts malicious JavaFX content, then relies on social engineering to have another user load that content in a sandboxed applet or Web Start application, resulting in unauthorized data changes without further privilege escalation.

How to fix it

Upgrade Oracle Java SE beyond 8u401 and GraalVM Enterprise Edition beyond 20.3.13 / 21.3.9 to the latest vendor-released versions; restrict Java deployments to server-side trusted code only where possible and avoid loading untrusted network content in client sandboxes.

How to confirm the fix worked

Inventory all Java runtimes and confirm versions exceed the affected releases; test sandboxed applets/Web Start applications with untrusted code samples to verify absence of unauthorized data modification behavior.

Typical attack path

  1. Obtain local logon to a workstation or server executing the vulnerable Java runtime
  2. Prepare or host untrusted JavaFX code designed to trigger the integrity flaw
  3. Induce a separate user to launch the malicious content inside a sandboxed Java environment
  4. Achieve limited unauthorized data modification within the application's accessible scope

How to detect it

Examine system and application logs for unexpected data changes originating from sandboxed Java processes; review audit trails around JavaFX component activity on systems with the listed affected versions.

What your security team should do

  • Prioritize patching client Java installations that execute sandboxed untrusted code
  • Review and minimize use of Java Web Start or applets that accept external content
  • Monitor EPSS and KEV status for any future increase in exploit activity

The record

Vulnerability in the Oracle Java SE, Oracle GraalVM Enterprise Edition product of Oracle Java SE (component: JavaFX). Supported versions that are affected are Oracle Java SE: 8u401; Oracle GraalVM Enterprise Edition: 20.3.13 and 21.3.9. Difficult to exploit vulnerability allows unauthenticated attacker with logon to the infrastructure where Oracle Java SE, Oracle GraalVM Enterprise Edition executes to compromise Oracle Java SE, Oracle GraalVM Enterprise Edition. Successful attacks require human interaction from a person other than the attacker. Successful attacks of this vulnerability can result in unauthorized update, insert or delete access to some of Oracle Java SE, Oracle GraalVM Enterprise Edition accessible data. Note: This vulnerability 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. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator). CVSS 3.1 Base Score 2.5 (Integrity impacts). CVSS Vector: (CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N).

Affected packages

Ecosystem Package Introduced Fixed
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-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-21-openj9 0 0.48.0-r2
Chainguard openjdk-21-openj9-dbg 0 0.48.0-r2
Chainguard openjdk-21-openj9-default-jdk 0 0.48.0-r2
Chainguard openjdk-21-openj9-default-jvm 0 0.48.0-r2
Chainguard openjdk-21-openj9-default-policy 0 0.48.0-r2
Chainguard openjdk-21-openj9-doc 0 0.48.0-r2
Chainguard openjdk-21-openj9-jmods 0 0.48.0-r2
Chainguard openjdk-21-openj9-jre 0 0.48.0-r2
Chainguard openjdk-8 0 8.412.08-r0
Chainguard openjdk-8-dbg 0 8.412.08-r0
Chainguard openjdk-8-default-jdk 0 8.412.08-r0
Chainguard openjdk-8-default-jvm 0 8.412.08-r0
Chainguard openjdk-8-demos 0 8.412.08-r0
Chainguard openjdk-8-doc 0 8.412.08-r0
Chainguard openjdk-8-jre 0 8.412.08-r0
Chainguard openjdk-8-jre-base 0 8.412.08-r0
Chainguard openjdk-8-jre-lib 0 8.412.08-r0
Chainguard openjdk-8-openj9 0 0.53.0-r1
Chainguard openjdk-8-openj9-dbg 0 0.53.0-r1
Chainguard openjdk-8-openj9-default-jdk 0 0.53.0-r1
Chainguard openjdk-8-openj9-default-jvm 0 0.53.0-r1
Chainguard openjdk-8-openj9-doc 0 0.53.0-r1
Chainguard openjdk-8-openj9-jre 0 0.53.0-r1
Ubuntu:16.04:LTS openjdk-9 0 No fix
Ubuntu:20.04:LTS openjdk-13 0 No fix
Ubuntu:20.04:LTS openjdk-16 0 No fix
Ubuntu:22.04:LTS openjdk-18 0 No fix
Ubuntu:22.04:LTS openjdk-19 0 No fix
Ubuntu:Pro:16.04:LTS openjdk-9 0 No fix
Ubuntu:Pro:20.04:LTS openjdk-13 0 No fix
Ubuntu:Pro:20.04:LTS openjdk-16 0 No fix
Ubuntu:Pro:22.04:LTS openjdk-18 0 No fix
Wolfi openjdk-8 0 8.412.08-r0
Wolfi openjdk-8-dbg 0 8.412.08-r0
Wolfi openjdk-8-default-jdk 0 8.412.08-r0
Wolfi openjdk-8-default-jvm 0 8.412.08-r0
Wolfi openjdk-8-demos 0 8.412.08-r0
Wolfi openjdk-8-doc 0 8.412.08-r0
Wolfi openjdk-8-jre 0 8.412.08-r0
Wolfi openjdk-8-jre-base 0 8.412.08-r0
Wolfi openjdk-8-jre-lib 0 8.412.08-r0

Related vulnerabilities