Oracle JRE Remote Code Execution
CVE-2013-0422 is a high-severity improper access control vulnerability in JDK from Oracle, with a CVSS 2.0 base score of 10.0 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. Affected JDK versions: 1.7.0. The record does not name a fixed version, so check the vendor advisory. CISA added it to the Known Exploited Vulnerabilities catalogue on May 25, 2022, which means attacks have been observed in the wild, including in ransomware campaigns.
Attackers are already exploiting this vulnerability, according to CISA.
What to do
- Check which version of JDK you run against the affected versions below, and install the vendor's latest release.
- CISA's required action: Apply updates per vendor instructions.
- Read the advisory on oracle.com for workarounds and exact fixed builds.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Oracle | JDK | 1.7.0 | Not stated |
| Oracle | JRE | 1.7.0 | Not stated |
| Canonical | Ubuntu Linux | 12.10 | Not stated |
| openSUSE | Opensuse | 12.2 | Not stated |
Version data comes from NVD's product matching. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Access vector
- NetworkCan be exploited remotely over a network.
- Access complexity
- LowNo special conditions are needed.
- Authentication
- NoneNo login is needed.
- Confidentiality
- CompleteAll data can be read.
- Integrity
- CompleteAny data can be modified.
- Availability
- CompleteThe system can be shut down completely.
Vector: AV:N/AC:L/Au:N/C:C/I:C/A:C. Scored by NVD.
| Scoring system | Score | Severity | Scored by |
|---|---|---|---|
| CVSS 3.1 | 9.8 | Critical | CISA (ADP) |
| CVSS 2.0 | 10.0 | High | NVD |
Official description
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using the public getMBeanInstantiator method in the JmxMBeanServer class to obtain a reference to a private MBeanInstantiator object, then retrieving arbitrary Class references using the findClass method, and (2) using the Reflection API with recursion in a way that bypasses a security check by the java.lang.invoke.MethodHandles.Lookup.checkSecurityManager method due to the inability of the sun.reflect.Reflection.getCallerClass method to skip frames related to the new reflection API, as exploited in the wild in January 2013, as demonstrated by Blackhole and Nuclear Pack, and a different vulnerability than CVE-2012-4681 and CVE-2012-3174. NOTE: some parties have mapped the recursive Reflection API issue to CVE-2012-3174, but CVE-2012-3174 is for a different vulnerability whose details are not public as of 20130114. CVE-2013-0422 covers both the JMX/MBean and Reflection API issues. NOTE: it was originally reported that Java 6 was also vulnerable, but the reporter has retracted this claim, stating that Java 6 is not exploitable because the relevant code is called in a way that does not bypass security checks. NOTE: as of 20130114, a reliable third party has claimed that the findClass/MBeanInstantiator vector was not fixed in Oracle Java 7 Update 11. If there is still a vulnerable condition, then a separate CVE identifier might be created for the unfixed issue.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Improper Access Control
The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor.
How developers prevent this class of flaw
- Very carefully manage the setting, management, and handling of privileges. Explicitly manage trust zones in the software.
- Compartmentalize the system to have safe areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
Timeline
- CVE record published.
- Added to CISA's Known Exploited Vulnerabilities catalogue.
- Deadline for US federal agencies to remediate, set by CISA.
- CISA published its SSVC assessment (exploitation: active, automatable: yes, technical impact: total).
- Record last changed materially (score, affected products, status or references).
References
Advisories
Third-party and government advisories
- immunityproducts.blogspot.ca/2013/01/confirmed-java-only-fixed-one-of-two.htmlThird Party Advisory
- krebsonsecurity.com/2013/01/zero-day-java-exploit-debuts-in-crimeware/Third Party Advisory
- lists.opensuse.org/opensuse-security-announce/2013-01/msg00025.htmlMailing List, Third Party Advisory
- malware.dontneedcoffee.com/2013/01/0-day-17u10-spotted-in-while-disable.htmlThird Party Advisory
- rhn.redhat.com/errata/RHSA-2013-0156.htmlThird Party Advisory
- rhn.redhat.com/errata/RHSA-2013-0165.htmlThird Party Advisory
- seclists.org/bugtraq/2013/Jan/48Mailing List, Third Party Advisory
- kb.cert.org/vuls/id/625617Third Party Advisory, US Government Resource
- ubuntu.com/usn/USN-1693-1Third Party Advisory
- us-cert.gov/cas/techalerts/TA13-010A.htmlThird Party Advisory, US Government Resource
- wiki.mageia.org/en/Support/Advisories/MGASA-2013-0018Third Party Advisory
- cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2013-0422US Government Resource
Other references
Other vulnerabilities in JDK
- 7.8 High severity
- 7.5 High severity
- 7.4 High severity
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
Recent Improper Access Control vulnerabilities
- 10.0 High severity
Oracle Java SE Sandbox Bypass Exploited
- 9.8 Critical severity
- 10.0 High severity
- 9.8 Critical severity
Spotted an error? Tell us.