Cloudanix VulnDB

CVE-2024-21002

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-trigger flaw in certain Java graphics components could let someone who already has access to a computer make small unauthorized changes to data inside specific Java programs if a user interacts with them.

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 an unauthenticated local attacker who obtains a logon to the host to bypass Java sandbox restrictions in JavaFX, resulting in unauthorized modification (insert/update/delete) of limited accessible data when a user interacts with untrusted sandboxed Java Web Start applications or applets.

Why it matters to the business

Low-risk data tampering exposure in client-side Java applications that load untrusted code; limited operational impact given the high exploitation difficulty, requirement for local access, and user interaction, with no known active exploitation or ransomware use.

How an attack unfolds

An attacker with local logon access to a system running vulnerable Java SE 8u401 or GraalVM Enterprise Edition 20.3.13/21.3.9 crafts or supplies malicious JavaFX content inside a sandboxed applet or Web Start application; the victim must interact with the application, allowing the attacker to abuse the JavaFX component and perform unauthorized data modifications within the sandbox.

How to fix it

Apply the latest Oracle Critical Patch Update to upgrade Oracle Java SE beyond 8u401 and Oracle GraalVM Enterprise Edition beyond 20.3.13 or 21.3.9; disable Java Web Start and applet execution where possible; restrict execution of untrusted Java code on client systems.

How to confirm the fix worked

Verify runtime versions via java -version and javaws commands; confirm deployment of the April 2024 or later CPU; test that sandboxed JavaFX applications no longer permit unauthorized data changes under controlled interaction scenarios.

Typical attack path

  1. Obtain local logon to the target host running affected Java runtime
  2. Deliver or host malicious JavaFX content in a sandboxed Web Start application or applet
  3. Trick a user into launching and interacting with the untrusted Java content
  4. Trigger the JavaFX authorization bypass to perform limited data modifications

How to detect it

Review system logs for unexpected Java process launches from user-writable directories; examine browser or application logs for Java Web Start or applet invocations of untrusted code; no specific post-exploitation artifacts are reliably available due to the nature of the integrity-only impact.

What your security team should do

  • Prioritize patching Java runtimes on all client endpoints within the next maintenance window
  • Inventory and restrict use of Java Web Start and applets that load external code
  • Monitor Oracle CPU releases for subsequent JavaFX fixes

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