Cloudanix VulnDB

CVE-2024-21003

Low · 3.1

CVSS

3.1

EPSS

0.9%

Published

Apr 16, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in certain Java installations could let a remote attacker change some data if a user opens specially crafted content from the internet, though it is hard to pull off and only affects specific client setups.

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

What it actually does

The flaw permits an unauthenticated remote attacker to cause unauthorized modification of application data through improper validation of untrusted input delivered over network protocols to JavaFX components in sandboxed client environments.

Why it matters to the business

Organizations running affected Java client deployments face a low but non-zero risk of data tampering in applications that process untrusted code, potentially requiring additional integrity checks or user retraining, though server-side trusted deployments remain unaffected.

How an attack unfolds

An attacker crafts malicious content that exploits the input validation weakness in JavaFX; the victim must interact with the content (for example by loading a web page or opening a document) in a vulnerable Java client environment, resulting in limited unauthorized data changes.

How to fix it

Upgrade Oracle Java SE beyond 8u401 and GraalVM Enterprise Edition beyond 20.3.13 or 21.3.9 to versions containing the fix; restrict Java client usage to trusted code only where possible and apply vendor patches promptly.

How to confirm the fix worked

Confirm Java runtime versions are updated past the listed affected releases, review application manifests and deployment configurations to ensure untrusted code is not executed in sandboxed contexts, and retest JavaFX components with known-bad input patterns.

Typical attack path

  1. Identify or host a delivery mechanism for untrusted Java content over supported protocols
  2. Craft input that bypasses validation in the JavaFX component
  3. Convince a user to load and interact with the content in a sandboxed Java Web Start or applet context
  4. Trigger the integrity modification on accessible data

How to detect it

Review Java process logs and web proxy records for unexpected network fetches of Java content followed by data modification events; examine client application behavior for anomalous updates to data stores after user interaction with external resources.

What your security team should do

  • Prioritize patching Java SE and GraalVM deployments that execute untrusted client code
  • Audit environments to identify any remaining sandboxed Java applet or Web Start usage
  • Implement application allow-listing to prevent execution of untrusted Java content
  • Monitor vendor release notes for subsequent security updates

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 network access via multiple protocols 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 3.1 (Integrity impacts). CVSS Vector: (CVSS:3.1/AV:N/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