← Vulnerability feed

Vulnerability record · CVE-2020-26217 · published 16 November 2020

CVE-2020-26217: XStream blocklist bypass allows remote code execution

Xstream · Xstream

XStream before 1.4.14 can be tricked into deserializing attacker-controlled input that leads to OS command execution. Only deployments relying on XStream blocklists are affected; those using the Security Framework allowlist are not. The flaw is fixed in 1.4.14.

8.8 CVSS 3.1 High EPSS 85% · top 0.3% CWE-78 · OS command injection
8.8CVSS 3.1 base score, v2 9.3
85%EPSS exploitation probability, 30 days
NoNot in CISA KEV
15Affected product versions listed by NVD
30References, 2 tagged exploit
17 Jun 2026Last modified by NVD

Description

XStream before version 1.4.14 is vulnerable to Remote Code Execution.The vulnerability may allow a remote attacker to run arbitrary shell commands only by manipulating the processed input stream. Only users who rely on blocklists are affected. Anyone using XStream's Security Framework allowlist is not affected. The linked advisory provides code workarounds for users who cannot upgrade. The issue is fixed in version 1.4.14.

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 18 September 2026. Confidence: high.

high priorityRemote code execution with high EPSS and public exploit material, though it requires low privileges and only affects blocklist-based deployments.

What it is

XStream before 1.4.14 can be tricked into deserializing attacker-controlled input that leads to OS command execution. Only deployments relying on XStream blocklists are affected; those using the Security Framework allowlist are not. The flaw is fixed in 1.4.14.

Impact

A remote attacker who can supply the processed input stream can run arbitrary shell commands in the context of the application, giving full compromise of confidentiality, integrity and availability.

Attack surface

Reached over the network by submitting a crafted serialized stream to an application that uses XStream with blocklist-based protection. The CVSS vector indicates low privileges are required and no user interaction, so any authenticated or otherwise low-privileged input path is sufficient.

Exploitation

Not listed in CISA KEV and no ransomware groups are documented using it, but EPSS is very high (0.85, 99.7th percentile) and the vendor advisory is tagged Exploit, indicating public exploit material exists.

What to do

  • Upgrade XStream to 1.4.14 or later.
  • Replace blocklist-based protection with XStream's Security Framework allowlist.
  • Apply the code workarounds in the vendor advisory where upgrading is not immediately possible.
  • Update dependent products (Debian, NetApp, Apache ActiveMQ/Camel, Oracle) to versions carrying the fix.
  • Restrict network and input paths that feed untrusted data into XStream deserialization.

Detection

  • Search application and server logs for XStream deserialization errors or unexpected class-loading exceptions.
  • Monitor for child processes spawned by Java application servers (e.g. shell, curl, wget) that are not part of normal operation.
  • Inventory code and dependencies for XStream versions below 1.4.14 and for blocklist-based configurations.
  • Alert on outbound network connections from application hosts following deserialization activity.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

15 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
https://github.com/x-stream/xstream/commit/0fec095d534126931c99fd38e9c6d41f5c685c1a PatchThird Party Advisory
https://github.com/x-stream/xstream/security/advisories/GHSA-mw36-7c6c-q4q2 MitigationThird Party Advisory
https://lists.apache.org/thread.html/r2de526726e7f4db4a7cb91b7355070779f51a84fd985c6529c2f4e9e%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.apache.org/thread.html/r7c9fc255edc0b9cd9567093d131f6d33fde4c662aaf912460ef630e9%40%3Ccommits.camel.apache Issue TrackingMailing List
https://lists.apache.org/thread.html/r826a006fda71cc96fc87b6eca4b5d195f19a292ad36cea501682c38c%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.apache.org/thread.html/redde3609b89b2a4ff18b536a06ef9a77deb93d47fda8ed28086fa8c3%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.debian.org/debian-lts-announce/2020/12/msg00001.html Mailing ListThird Party Advisory
https://security.netapp.com/advisory/ntap-20210409-0004/ Third Party Advisory
https://www.debian.org/security/2020/dsa-4811 Third Party Advisory
https://www.oracle.com//security-alerts/cpujul2021.html PatchThird Party Advisory
https://www.oracle.com/security-alerts/cpuApr2021.html PatchThird Party Advisory
https://www.oracle.com/security-alerts/cpuapr2022.html Not ApplicableThird Party Advisory
https://www.oracle.com/security-alerts/cpujan2022.html Not ApplicableThird Party Advisory
https://www.oracle.com/security-alerts/cpuoct2021.html PatchThird Party Advisory
https://x-stream.github.io/CVE-2020-26217.html ExploitMitigationVendor Advisory
https://github.com/x-stream/xstream/commit/0fec095d534126931c99fd38e9c6d41f5c685c1a PatchThird Party Advisory
https://github.com/x-stream/xstream/security/advisories/GHSA-mw36-7c6c-q4q2 MitigationThird Party Advisory
https://lists.apache.org/thread.html/r2de526726e7f4db4a7cb91b7355070779f51a84fd985c6529c2f4e9e%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.apache.org/thread.html/r7c9fc255edc0b9cd9567093d131f6d33fde4c662aaf912460ef630e9%40%3Ccommits.camel.apache Issue TrackingMailing List
https://lists.apache.org/thread.html/r826a006fda71cc96fc87b6eca4b5d195f19a292ad36cea501682c38c%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.apache.org/thread.html/redde3609b89b2a4ff18b536a06ef9a77deb93d47fda8ed28086fa8c3%40%3Cissues.activemq.apac Issue TrackingMailing List
https://lists.debian.org/debian-lts-announce/2020/12/msg00001.html Mailing ListThird Party Advisory
https://security.netapp.com/advisory/ntap-20210409-0004/ Third Party Advisory
https://www.debian.org/security/2020/dsa-4811 Third Party Advisory
https://www.oracle.com//security-alerts/cpujul2021.html PatchThird Party Advisory
https://www.oracle.com/security-alerts/cpuApr2021.html PatchThird Party Advisory
https://www.oracle.com/security-alerts/cpuapr2022.html Not ApplicableThird Party Advisory
https://www.oracle.com/security-alerts/cpujan2022.html Not ApplicableThird Party Advisory
https://www.oracle.com/security-alerts/cpuoct2021.html PatchThird Party Advisory
https://x-stream.github.io/CVE-2020-26217.html ExploitMitigationVendor Advisory

Track CVE-2020-26217 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

10.0CVE-2025-32433Erlang/OTP SSH server missing authentication allows remote code executionErlang/OTP SSH servers before OTP-27.3.3, OTP-26.2.5.11 and OTP-25.3.2.20 mishandle SSH protocol messages, letting an unauthenticated attacker execut…KEVEPSS 99%analysed10.0CVE-2025-24201Apple WebKit out-of-bounds write allows sandbox escapeCVE-2025-24201 is an out-of-bounds write in Apple's WebKit that was addressed with improved checks. Maliciously crafted web content may break out of …KEVEPSS 3.8%analysed10.0CVE-2021-44228Apache Log4j2 JNDI lookup remote code executionApache Log4j2 versions 2.0-beta9 through 2.15.0 (excluding 2.12.2, 2.12.3, and 2.3.1) do not protect against attacker-controlled LDAP and other JNDI …KEVEPSS 100%analysed9.8CVE-2026-24061GNU Inetutils telnetd argument injection allows remote auth bypasstelnetd in GNU Inetutils through 2.7 fails to sanitize the USER environment variable, so a value such as "-f root" is passed as an argument to login …KEVEPSS 99%analysed9.8CVE-2025-39682Linux kernel TLS zero-length record handling flaw on rx_listThe Linux kernel TLS receive path mishandles zero-length records that arrive from the rx_list, breaking the assumption that a record type change cann…KEVEPSS 2.9%analysed9.8CVE-2025-24813Apache Tomcat Default Servlet path equivalence enables RCE and file disclosureApache Tomcat mishandles path equivalence for names containing an internal dot, letting a remote unauthenticated attacker write files through the Def…KEVEPSS 100%analysed9.8CVE-2024-9680Mozilla Firefox and Thunderbird use-after-free in Animation timelinesA use-after-free flaw in Animation timelines allows an attacker to execute code in the content process of Firefox and Thunderbird. Mozilla reports ex…KEVEPSS 23%analysed9.8CVE-2023-46604Apache ActiveMQ OpenWire deserialization remote code executionThe Java OpenWire protocol marshaller in Apache ActiveMQ deserializes untrusted data, letting an attacker manipulate serialized class types so the br…KEVEPSS 100%analysed

Source: NIST National Vulnerability Database (record CVE-2020-26217), CISA KEV, FIRST EPSS (scores of 2026-09-24). This page is refreshed as NVD updates the record.