The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2020-2604

CVE-2020-2604: Java SE Serialization RCE Vulnerability

CVE-2020-2604 is a remote code execution vulnerability in Java SE Serialization that enables complete system takeover. This article covers the technical details, affected Java versions, security impact, and mitigation strategies.

Published: March 4, 2026

CVE-2020-2604 Overview

CVE-2020-2604 is an insecure deserialization vulnerability in the Serialization component of Oracle Java SE and Java SE Embedded. This flaw allows an unauthenticated attacker with network access to potentially achieve complete system takeover through specially crafted serialized data. The vulnerability affects multiple Java versions and has widespread implications for enterprise environments running Java-based applications, web services, and applets.

The vulnerability is particularly dangerous in environments where Java applications process untrusted serialized data, such as web services that accept serialized objects via network protocols. Successful exploitation can result in full confidentiality, integrity, and availability compromise of affected systems.

Critical Impact

Successful exploitation allows unauthenticated attackers to achieve complete takeover of Java SE and Java SE Embedded deployments, potentially compromising sensitive enterprise data and systems.

Affected Products

  • Oracle JDK 7u241, 8u231, 11.0.5, and 13.0.1
  • Oracle JRE 8u231
  • Java SE Embedded 8u231
  • Oracle OpenJDK (multiple versions through update 241)
  • Oracle GraalVM 19.3.0.2 Enterprise
  • Oracle Commerce Experience Manager 11.3.2
  • Oracle Commerce Guided Search 11.3.2
  • Red Hat Enterprise Linux 6.0, 7.0, and 8.0 (Desktop, Server, Workstation variants)
  • Debian Linux 8.0 and 9.0
  • Canonical Ubuntu Linux 16.04 LTS, 18.04 LTS, and 19.10
  • openSUSE Leap 15.1
  • NetApp Active IQ Unified Manager, E-Series products, and OnCommand suite
  • McAfee ePolicy Orchestrator 5.9.x and 5.10.x

Discovery Timeline

  • January 15, 2020 - CVE-2020-2604 published to NVD
  • November 21, 2024 - Last updated in NVD database

Technical Details for CVE-2020-2604

Vulnerability Analysis

This insecure deserialization vulnerability resides in the Java Serialization component, which is responsible for converting Java objects to byte streams and vice versa. The flaw allows attackers to manipulate serialized data to execute arbitrary code during the deserialization process. While the vulnerability requires high attack complexity to exploit successfully, it requires no authentication or user interaction, making it a significant threat to exposed Java applications.

The vulnerability applies to multiple deployment scenarios: Java Web Start applications, sandboxed Java applets (in Java SE 8), and web services that process serialized data through affected APIs. Organizations relying on the Java sandbox for security are particularly at risk, as successful exploitation can escape sandbox restrictions entirely.

Root Cause

The root cause of CVE-2020-2604 is improper handling of serialized data in the Java Serialization component. The deserialization process fails to adequately validate incoming serialized objects before reconstructing them, allowing attackers to inject malicious objects that trigger dangerous operations during the deserialization lifecycle. This is classified as CWE-502 (Deserialization of Untrusted Data).

When a Java application deserializes attacker-controlled data, specially crafted object graphs can exploit gadget chains present in the application's classpath to achieve code execution. The serialization mechanism trusts the incoming byte stream to contain legitimate object data, creating an opportunity for attackers to supply malicious payloads.

Attack Vector

The attack vector is network-based, allowing remote exploitation without authentication. Attackers can deliver malicious serialized payloads through various means:

The vulnerability can be exploited against Java deployments that load and run untrusted code from the internet, particularly through sandboxed Java Web Start applications or Java applets in Java SE 8. Additionally, any web service that accepts serialized Java objects as input can serve as an attack surface. The attacker crafts a malicious serialized object that, when deserialized by the vulnerable Java runtime, triggers arbitrary code execution through exploitation of available gadget chains.

Common attack scenarios include targeting RMI services, JMX endpoints, custom web services accepting serialized data, and applications using vulnerable serialization libraries. The attacker does not need valid credentials or user interaction to execute the attack.

Detection Methods for CVE-2020-2604

Indicators of Compromise

  • Unusual Java process behavior including unexpected child process spawning or network connections
  • Presence of known deserialization gadget class names in network traffic or logs (e.g., ysoserial payload signatures)
  • Anomalous serialized object streams in application logs or network captures containing unexpected class references
  • Unexpected outbound connections from Java processes to unknown external hosts

Detection Strategies

  • Monitor for serialized Java object signatures (0xAC 0xED magic bytes) in network traffic to sensitive Java endpoints
  • Deploy application-level logging to capture deserialization events and flag attempts to deserialize known dangerous classes
  • Use intrusion detection signatures to identify common deserialization exploit payloads and gadget chain patterns
  • Implement runtime application self-protection (RASP) solutions to detect and block deserialization attacks in real-time

Monitoring Recommendations

  • Enable verbose logging for Java applications processing external data to capture serialization events
  • Monitor JVM metrics for unusual memory allocation patterns that may indicate deserialization-based attacks
  • Implement network monitoring for traffic patterns associated with RMI, JMX, and custom serialization endpoints
  • Review application logs for serialization-related exceptions that may indicate exploitation attempts

How to Mitigate CVE-2020-2604

Immediate Actions Required

  • Update all Oracle JDK and JRE installations to the latest patched versions released after January 2020
  • Audit applications for use of Java serialization with untrusted input and implement deserialization filters
  • Restrict network access to Java RMI, JMX, and other serialization-dependent services
  • Consider deploying Web Application Firewalls (WAF) with rules to detect and block serialized Java objects

Patch Information

Oracle released patches addressing this vulnerability in the January 2020 Critical Patch Update. Organizations should apply updates from the Oracle Security Alert January 2020. Additional guidance was provided in the Oracle Security Alert July 2021.

For Linux distributions, refer to vendor-specific advisories:

  • Red Hat: Multiple RHSA advisories including RHSA-2020:0122 and RHSA-2020:0128
  • Debian: DSA-4621
  • Ubuntu: USN-4257-1
  • Gentoo: GLSA 202101-19
  • NetApp: Security Advisory ntap-20200122-0003
  • McAfee: Security Bulletin SB10315

Workarounds

  • Implement JEP 290 deserialization filters to whitelist allowed classes for deserialization
  • Disable Java RMI and JMX services if not required by business operations
  • Deploy network segmentation to isolate Java applications from untrusted network segments
  • Replace Java native serialization with safer alternatives like JSON or Protocol Buffers where feasible
bash
# Example: Configure JEP 290 deserialization filter
# Add to java command line or java.security properties
-Djdk.serialFilter=maxdepth=5;maxrefs=500;maxbytes=500000;maxarray=100000;!*

# Or add to $JAVA_HOME/conf/security/java.security:
# jdk.serialFilter=maxdepth=5;maxrefs=500;maxbytes=500000;maxarray=100000;!*

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeRCE

  • Vendor/TechOracle Java Se

  • SeverityHIGH

  • CVSS Score8.1

  • EPSS Probability1.70%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Impact Assessment
  • ConfidentialityHigh
  • IntegrityNone
  • AvailabilityHigh
  • CWE References
  • CWE-502
  • Technical References
  • openSUSE Security Announcement

  • openSUSE Security Announcement

  • Red Hat Errata RHSA-2020:0122

  • Red Hat Errata RHSA-2020:0128

  • Red Hat Errata RHSA-2020:0196

  • Red Hat Errata RHSA-2020:0202

  • Red Hat Errata RHSA-2020:0231

  • Red Hat Errata RHSA-2020:0232

  • Red Hat Errata RHSA-2020:0465

  • Red Hat Errata RHSA-2020:0467

  • Red Hat Errata RHSA-2020:0468

  • Red Hat Errata RHSA-2020:0469

  • Red Hat Errata RHSA-2020:0470

  • Red Hat Errata RHSA-2020:0541

  • Red Hat Errata RHSA-2020:0632

  • McAfee Security Bulletin SB10315

  • Debian LTS Announcement

  • Bugtraq Security Discussion

  • Gentoo GLSA 202101-19

  • NetApp Security Advisory

  • Ubuntu Security Notice USN-4257-1

  • Debian Security DSA-4621
  • Vendor Resources
  • Oracle Security Alert January 2020

  • Oracle Security Alert July 2021
  • Related CVEs
  • CVE-2026-21932: Oracle Java SE RCE Vulnerability

  • CVE-2025-30749: Oracle Java SE RCE Vulnerability

  • CVE-2024-21147: NetApp Active IQ Unified Manager RCE

  • CVE-2023-22049: Oracle Java SE Libraries RCE Vulnerability
Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English