CVE-2024-20922
Low · 2.5CVSS
2.5
EPSS
0.3%
Published
Jan 16, 2024
CISA due date
—
Cloudanix analysis
A hard-to-exploit flaw in certain Java software could let someone with local access and a victim's help quietly change some data, but the chance of this happening is very low.
- 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 in the JavaFX component permits an unauthenticated local attacker to achieve unauthorized update, insert, or delete operations against some accessible data after successful exploitation that requires human interaction from a non-attacker.
Why it matters to the business
Organizations running affected Oracle Java SE or GraalVM deployments face limited risk of data integrity tampering in client-side sandboxed applications, with low likelihood of material operational impact given the high complexity and prerequisites.
How an attack unfolds
An attacker who can log on locally prepares or supplies a malicious JavaFX application or applet that loads untrusted code; the victim is socially engineered into executing it, after which the flaw is triggered to modify data within the Java sandbox.
How to fix it
Apply the latest Oracle Java SE and GraalVM security updates that resolve the JavaFX issue; replace or upgrade any remaining affected versions such as 8u391, 20.3.12, and 21.3.8. Restrict execution of untrusted Java code where feasible.
How to confirm the fix worked
Confirm installed Java versions exceed the affected releases, review Java deployment configurations to ensure sandbox restrictions remain enforced, and validate that test applications cannot perform unauthorized data changes after updates.
Typical attack path
- Obtain local logon access to a system running affected Java
- Craft or obtain a malicious JavaFX application or applet containing untrusted code
- Induce a user to execute the malicious code via Java Web Start or applet
- Trigger the vulnerability to perform unauthorized data modifications
How to detect it
Examine local authentication logs, Java process execution records, and application sandbox activity for sequences involving untrusted code loading followed by unexpected data modifications; correlate with user interaction events.
What your security team should do
- Patch all Oracle Java SE and GraalVM instances to current versions
- Disable or restrict Java Web Start and applet execution for untrusted content
- Audit systems for the listed affected products and versions
- Monitor Oracle Critical Patch Updates for subsequent 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: 8u391; Oracle GraalVM Enterprise Edition: 20.3.12 and 21.3.8. 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-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 | openjfx | 0 | No fix |
| Ubuntu:18.04:LTS | openjfx | 0 | No fix |
| Ubuntu:20.04:LTS | openjfx | 0 | No fix |
| Ubuntu:22.04:LTS | openjfx | 0 | No fix |
| Ubuntu:24.04:LTS | openjfx | 0 | No fix |
| Ubuntu:24.10 | openjfx | 0 | No fix |
| Ubuntu:25.04 | openjfx | 0 | No fix |
| Ubuntu:25.10 | openjfx | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | openjfx | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | openjfx | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | openjfx | 0 | No fix |
Related vulnerabilities
- CVE-2026-21945 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2026-21932 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2026-21933 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2026-21925 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2025-30761 Vulnerability in the Oracle Java SE, Oracle GraalVM Enterprise Edition product of Oracle… Also affects openjdk-11-openj9
- CVE-2025-50106 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2025-30754 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9
- CVE-2025-30749 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… Also affects openjdk-11-openj9