CVE-2026-60147: Medium severity Oracle Java SE vulnerability
Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. Successful attacks of this vulnerability can result in unauthorized update, insert or delete access to some of Java SE accessible data as well as unauthorized read access to a subset of Java SE accessible data.
Other sources
OpenJDK can apply two different security meanings to the same wildcard dNSName SAN across certificate policy enforcement and hostname verification. During path validation, DNSName.constrains compares .foo.com and secret.foo.com literally and returns NAMESAMETYPE, so NameConstraintsExtension.verify does not reject the chain when secret.foo.com is an exact-host exclusion. Later, HostnameChecker interprets the same SAN as a wildcard template and accepts secret.foo.com for .foo.com.
— Red Hat
Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition product of Oracle Java SE (component: Security). Supported versions that are affected are Oracle Java SE: 8u491, 8u491-perf, 11.0.31, 17.0.19, 21.0.11, 25.0.3, 26.0.1; Oracle GraalVM for JDK: 17.0.19 and 21.0.11; Oracle GraalVM Enterprise Edition: 21.3.18. Easily exploitable 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 update, insert or delete access to some of Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition accessible data as well as unauthorized read access to a subset of Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise Edition accessible data. 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 6.5 (Confidentiality and Integrity impacts). CVSS Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N).
— NVD
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
Restrict exposure of the affected Java Security functionality by ensuring network access to the Java SE/GraalVM endpoints (e.g., any API/web service that supplies certificate/hostname data used by the affected code paths) is limited to trusted clients.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-60147?
The severity of CVE-2026-60147 is classified as medium with a score of 6.5.
How do I fix CVE-2026-60147?
To fix CVE-2026-60147, update your Oracle JRE, JDK, or GraalVM to the latest secure version provided by the vendor.
What software is affected by CVE-2026-60147?
CVE-2026-60147 affects Oracle JRE, Oracle JDK, Oracle Java SE, and Oracle GraalVM distributions.
What is the risk level of CVE-2026-60147?
The risk level of CVE-2026-60147 is assessed at a score of 40.
What type of vulnerability is CVE-2026-60147?
CVE-2026-60147 involves incorrect handling of wildcard dNSName SANs during certificate policy enforcement and hostname verification.