CVE DatabaseCVE-2013-0422
한국어 권고문 →
CVE-2013-04229.8/CRITICALCISA KEVCWE-284

Oracle Java 7 Sandbox Escape and Remote Code Execution Vulnerability (CVE-2013-0422) Technical Advisory

⚡ Jump to Patch
Affected Vendors
oracle
Affected Components
java
Published Date
2013-01-10
CVSS v3.1
9.8
CRITICAL
EPSS (30d)
97.1%
FIRST.org
CISA KEV
Exploited

Executive & SecOps Summary

SECOPS ASSESSMENT
Affected Scope

Oracle Java 7 Update 10 and earlier versions (all versions prior to Java 7 Update 11).

Impact

Remote attackers can completely bypass the JVM security sandbox and execute arbitrary system commands with the privileges of the running user by enticing them to visit a malicious web page containing a crafted Java applet.

Mitigation

Immediately upgrade to Oracle Java 7 Update 11 or later (or migrate to modern LTS versions like Java 8/11/17), and disable the Java browser plug-in across all enterprise endpoints.

Affected Products & Version Scope

Oracle Java SE 7 Update 10 and earlier (all versions prior to Java 7 Update 11)

Remediation & Live Workaround Commands

PATCH & WORKAROUND

1. Official Patch & Version Upgrade Commands

The primary remediation is to upgrade the JRE/JDK to a patched version (Java 7 Update 11 or higher, or modern LTS releases).

To upgrade OpenJDK on Debian/Ubuntu-based systems:

bash
# Update package repositories and upgrade OpenJDK
sudo apt-get update
sudo apt-get install --only-upgrade default-jre default-jdk -y

# Verify the installed Java version
java -version

To upgrade OpenJDK on RedHat/CentOS-based systems:

bash
# Upgrade Java 7 package using YUM
sudo yum update java-1.7.0-openjdk -y
# Recommended: Migrate to a modern LTS version such as Java 11
sudo yum install java-11-openjdk -y

2. Temporary Workaround & Hardening Configuration

If immediate patching is not feasible, disable the Java plug-in in web browsers to eliminate the primary attack vector.

Use the following PowerShell script to disable the Java browser plug-in via the Windows Registry:

powershell
# Disable Java Web Start and Applet execution in Internet Explorer/browsers
$RegistryPath = 'HKLM:\SOFTWARE\JavaSoft\Java Plug-in'
if (-not (Test-Path $RegistryPath)) {
    New-Item -Path $RegistryPath -Force | Out-Null
}
New-ItemProperty -Path $RegistryPath -Name 'UseJava2IExplorer' -Value 0 -PropertyType DWord -Force
New-ItemProperty -Path $RegistryPath -Name 'Enabled' -Value 0 -PropertyType DWord -Force
Write-Host 'Java Browser Plugin has been disabled successfully.'

3. Log Audit & IoC Verification Commands

Run the following bash script to audit local systems and identify if a vulnerable Java 7 runtime is currently active:

bash
#!/bin/bash
# Audit script to detect vulnerable Java 7 installations

echo '[*] Auditing system for vulnerable Java versions...'
if command -v java >/dev/null 2>&1; then
    JAVA_VER=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}')
    echo "[-] Detected Java Version: $JAVA_VER"
    if [[ "$JAVA_VER" =~ ^1\.7\.0_([0-9]+) ]]; then
        SUB_VER=${BASH_REMATCH}
        if [ "$SUB_VER" -lt 11 ]; then
            echo '[!] ALERT: Vulnerable Java 7 version detected (CVE-2013-0422)!'
        else
            echo '[+] Java 7 version is patched.'
        fi
    else
        echo '[+] Java version is outside the vulnerable Java 7 range.'
    fi
else
    echo '[+] Java is not installed or not in the system PATH.'
fi
Interactive SecOps Remediation Checklist
0/4 (0%)
Recommended Security Control & Mitigation Partner
SentinelOne Singularity AI EDR
Immediately upgrade all Java 7 installations to Update 11 or later, and disable Java plug-ins in web browsers across the enterprise.

Block Kernel Privilege Escalation & Ransomware Payloads Before You Can Reboot

Protect unpatched Windows, Linux, and macOS workloads against in-memory exploitation and lateral movement with autonomous EDR.

100% MITRE ATT&CK Detection · 1-Click Rollback

Technical Root Cause & Exploitation Mechanics

1. Vulnerability Overview & Root Cause

CVE-2013-0422 is a critical vulnerability arising from two distinct flaws within the Oracle Java Runtime Environment (JRE) 7 that, when combined, allow for complete sandbox escape. The first flaw lies in the JmxMBeanServer class, where the public getMBeanInstantiator method inadvertently exposes a reference to the private MBeanInstantiator object. This exposure allows untrusted code to invoke the findClass method and retrieve arbitrary class references. The second flaw involves recursive invocation within the Reflection API. The sun.reflect.Reflection.getCallerClass method fails to properly skip stack frames associated with the new Reflection API, allowing attackers to bypass the security manager checks enforced by java.lang.invoke.MethodHandles.Lookup.checkSecurityManager.

2. Exploitation Mechanics & Attack Scenario

In a real-world exploitation scenario, threat actors chain these two flaws to achieve full system compromise:

  • Class Loader Acquisition: The attacker hosts a malicious Java applet on a website. When a victim visits the site, the applet executes and calls JmxMBeanServer.getMBeanInstantiator().findClass() to obtain a restricted class loader with elevated privileges.
  • Security Verification Bypass: By leveraging recursive Reflection API calls, the exploit misleads the JVM's caller class verification mechanism, tricking the runtime into treating the untrusted applet code as trusted system code.
  • Sandbox Escape & Payload Execution: With the verification bypassed, the exploit calls System.setSecurityManager(null) to disable the Java Security Manager entirely. The attacker then executes arbitrary OS commands via Runtime.getRuntime().exec(). This vulnerability was actively exploited in the wild in January 2013 via exploit kits such as Blackhole and Nuclear Pack.

3. Infrastructure & Business Impact

With a CVSS score of 9.8 and its inclusion in the CISA KEV catalog, this vulnerability poses an extreme risk to enterprise environments. Successful exploitation allows external attackers to gain an initial foothold on internal endpoints. This can lead to lateral movement within the corporate network, deployment of ransomware, and unauthorized exfiltration of sensitive business data, resulting in severe operational disruption and financial loss.

Official Vendor Advisories & References

NVD Original English 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.

Frequently Asked SecOps Questions (CVE-2013-0422)

FAQ

Q1. How critical is CVE-2013-0422 and is it actively exploited in the wild?

CVE-2013-0422 is rated CVSS 9.8 (CRITICAL) with a 30-day EPSS exploitation probability of 97.1%. It is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog, requiring immediate emergency remediation.

Q2. Which vendors and products are affected by CVE-2013-0422?

Primary impacted vendors include oracle across java. Scope summary: Oracle Java SE 7 Update 10 and earlier (all versions prior to Java 7 Update 11)

Q3. What temporary mitigations or workarounds exist for CVE-2013-0422 before patching?

[Mitigation] Immediately upgrade to Oracle Java 7 Update 11 or later (or migrate to modern LTS versions like Java 8/11/17), and disable the Java browser plug-in across all enterprise endpoints. Follow the CLI remediation commands and interactive SecOps checklist on this page to restrict exposure prior to your maintenance window.

SECOPS WORKBENCH INTEGRATION

Generate an Internal Engineering Notice or CISO Report for CVE-2013-0422

Instantly format this advisory into an executive CISO summary or engineering patch ticket.

Generate Report →

🔗 Related Advisories in Similar Stack (oracle)

View Category →
SecOps Advisory Dispatch & RSS Feed

Subscribe to Daily Vulnerability Briefings & KEV Alerts

Concise morning briefings for SecOps, DevSecOps, and SRE teams covering newly exploited CVEs and mitigation priorities.

Slack / Teams / RSS Feed:
PatchKO
CVE-2013-0422 Oracle Java 7 Sandbox Escape and Remote Code Execution Vulnerability (CVE-2013-0422) Technical Advisory (CVSS 9.8) - Patch & Workaround | CVE Pulse