← Vulnerability feed

Vulnerability record · CVE-2020-8165 · published 19 June 2020

CVE-2020-8165: Ruby on Rails cache store deserialization leads to RCE

Rubyonrails · Rails

Ruby on Rails before 5.2.4.3 and before 6.0.3.1 deserializes untrusted data in MemCacheStore and RedisCacheStore, allowing attacker-supplied objects to be unmarshalled. Because the flaw is reachable without authentication and can end in remote code execution, it is a serious risk for any application using these cache stores.

9.8 CVSS 3.1 Critical EPSS 46% · top 1.2% CWE-502 · Deserialization of untrusted data
9.8CVSS 3.1 base score, v2 7.5
46%EPSS exploitation probability, 30 days
NoNot in CISA KEV
3Affected product versions listed by NVD
17References, 2 tagged exploit
17 Jun 2026Last modified by NVD

Description

A deserialization of untrusted data vulnernerability exists in rails < 5.2.4.3, rails < 6.0.3.1 that can allow an attacker to unmarshal user-provided objects in MemCacheStore and RedisCacheStore potentially resulting in an RCE.

CVSS:3.1/AV:N/AC:L/PR:N/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 20 September 2026. Confidence: high.

critical priorityCVSS 9.8 with network reachability, no authentication, and RCE impact, plus high EPSS and public exploit references, make this an urgent fix.

What it is

Ruby on Rails before 5.2.4.3 and before 6.0.3.1 deserializes untrusted data in MemCacheStore and RedisCacheStore, allowing attacker-supplied objects to be unmarshalled. Because the flaw is reachable without authentication and can end in remote code execution, it is a serious risk for any application using these cache stores.

Impact

An attacker can execute arbitrary code in the context of the Rails application, leading to full server compromise and access to application data and secrets.

Attack surface

The vulnerability is network-reachable (AV:N) with no privileges or user interaction required (PR:N, UI:N), meaning any request path that causes the cache store to deserialize attacker-controlled data can trigger it.

Exploitation

Not listed in CISA KEV, but EPSS is 0.45732 (98.7th percentile) and references include an Exploit-tagged HackerOne report, indicating public exploit material exists.

What to do

  • Upgrade Rails to 5.2.4.3, 6.0.3.1 or later, or apply the vendor patch referenced in the Rails security announcement.
  • Update distribution packages (Debian DSA-4766, openSUSE advisories) to the fixed versions.
  • Avoid deserializing untrusted data through MemCacheStore or RedisCacheStore; validate or restrict what enters the cache.
  • If immediate patching is not possible, isolate affected Rails services and restrict network access to their cache backends.

Detection

  • Monitor Rails application logs for deserialization errors or unexpected object unmarshalling in cache operations.
  • Inspect network traffic to Memcached and Redis for serialized payloads containing suspicious Ruby object markers.
  • Watch for anomalous child processes or outbound connections spawned by the Rails application process.

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

Affected products

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

References

LinkTags
http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00031.html Mailing ListThird Party Advisory
http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00034.html Mailing ListThird Party Advisory
https://groups.google.com/g/rubyonrails-security/c/bv6fW4S0Y1c Mailing ListPatchThird Party Advisory
https://hackerone.com/reports/413388 ExploitPatchThird Party Advisory
https://lists.debian.org/debian-lts-announce/2020/06/msg00022.html Mailing ListThird Party Advisory
https://lists.debian.org/debian-lts-announce/2020/07/msg00013.html Mailing ListThird Party Advisory
https://weblog.rubyonrails.org/2020/5/18/Rails-5-2-4-3-and-6-0-3-1-have-been-released/ Vendor Advisory
https://www.debian.org/security/2020/dsa-4766 Third Party Advisory
http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00031.html Mailing ListThird Party Advisory
http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00034.html Mailing ListThird Party Advisory
https://groups.google.com/g/rubyonrails-security/c/bv6fW4S0Y1c Mailing ListPatchThird Party Advisory
https://hackerone.com/reports/413388 ExploitPatchThird Party Advisory
https://lists.debian.org/debian-lts-announce/2020/06/msg00022.html Mailing ListThird Party Advisory
https://lists.debian.org/debian-lts-announce/2020/07/msg00013.html Mailing ListThird Party Advisory
https://security.netapp.com/advisory/ntap-20250509-0002/
https://weblog.rubyonrails.org/2020/5/18/Rails-5-2-4-3-and-6-0-3-1-have-been-released/ Vendor Advisory
https://www.debian.org/security/2020/dsa-4766 Third Party Advisory

Track CVE-2020-8165 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-8165), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.