The Ruby on Rails development team has released security updates to fix a critical vulnerability, CVE-2026-66066, with a CVSS score of 9.5. The vulnerability is an arbitrary file read flaw within the Active Storage component that can be escalated to remote code execution (RCE). An unauthenticated attacker can exploit this by uploading a specially crafted file to an application that uses the libvips library for image processing. The flaw allows the attacker to read sensitive files, including environment variables that may contain secrets like secret_key_base, enabling a full RCE. All users of affected versions are urged to update immediately.
The vulnerability exists in the way Ruby on Rails' Active Storage component interacts with the libvips image processing library. The libvips library contains certain file operations that are considered unsafe for handling untrusted content. However, Active Storage did not disable these unsafe operations.
An attacker can craft a malicious image file that, when processed by libvips via Active Storage, triggers one of these unsafe operations. This allows the attacker to read arbitrary files on the server's filesystem. The attack can be escalated to RCE if the attacker can read a file containing sensitive information, such as the application's process environment, which often stores the secret_key_base, database credentials, or API keys.
libvips for image processing and allow image uploads from untrusted sources.There are no public reports of this vulnerability being exploited in the wild. However, given the popularity of Ruby on Rails and the critical severity of the flaw, it is highly likely that threat actors will begin scanning for and attempting to exploit vulnerable applications. The release of the patch details provides a roadmap for exploit development.
A successful exploit of CVE-2026-66066 could lead to a complete compromise of the affected web application and server. The initial arbitrary file read can expose sensitive configuration files, source code, and credentials. If an attacker successfully reads the secret_key_base, they can forge or tamper with session cookies, leading to account takeovers. If they can read database or cloud service credentials, they can escalate their access to achieve full remote code execution, steal the entire application database, or pivot to other systems in the environment.
Security teams can hunt for signs of exploitation by monitoring for the following:
Application Logslibvips..svg, .tiff) being uploaded that cause processing errors.vipsvips process for unusual file access patterns, such as attempts to read files outside of the expected temporary directories (e.g., /etc/passwd, /proc/self/environ).rails or activestorage gems.libvips could be an indicator of scanning or exploitation attempts.config/secrets.yml or similar files by the web server process would be a strong indicator of compromise.rails gem to a patched version (7.2.3.2, 8.0.5.1, or 8.1.3.1). This is the most effective way to resolve the vulnerability and is an application of MITRE's Update Software (M1051).libvips to another library like imagemagick, which is not affected by this specific issue. This should only be a temporary measure.Update the Ruby on Rails framework to a patched version.
Mapped D3FEND Techniques:
Run the application in a container with strict file permission and network policies to limit the impact of a compromise.

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.
CyberNetSec.io uses automation to assist source monitoring, deduplication, observable extraction, and structured intelligence generation. Published analysis follows human-defined editorial standards and adds defensive context including MITRE ATT&CK, D3FEND, STIX, and Sigma where applicable. Read our editorial policy.
Help others stay informed about cybersecurity threats
Every tactic, technique, and sub-technique used in this threat has been identified and mapped to the MITRE ATT&CK framework for consistent, actionable threat language.
Observables and indicators of compromise (IOCs) have been extracted and cataloged. Risk has been assessed and correlated with known threat actors and historical campaigns.
Detection rules, incident response steps, and D3FEND-aligned mitigation strategies are included so your team can act on this intelligence immediately.
Structured threat data is packaged as a STIX 2.1 bundle and can be visualized as an interactive graph — relationships between actors, malware, techniques, and indicators.
Sigma detection rules are derived from the threat techniques in this article and can be converted for deployment across any major SIEM or EDR platform.