activestorage is vulnerable to Arbitrary File Read
95
Critical Risk
Active Storage leaves libvips unfuzzed and untrusted loaders and savers enabled when using the default :vips variant processor, so crafted uploaded images can invoke operations that are not safe for untrusted content. An unauthenticated attacker who can upload a file and trigger variant processing can read arbitrary files reachable by the app process, including environment values such as secret_key_base and other credentials, which can escalate to remote code execution or lateral movement. The fix calls Vips.block_untrusted(true) during Active Storage boot so those untrusted operations are disabled before transformers or analyzers run.
You are affected if you are using a version that falls within the vulnerable range, your application uses Active Storage with config.active_storage.variant_processor = :vips (the default since load_defaults 7.0), and untrusted users can upload images.
activestorage is vulnerable to Arbitrary File Read in versions 5.2.0 - 7.2.3.1, 8.0.0 - 8.0.5 and 8.1.0 - 8.1.3.
Upgrade the activestorage library to the patch version.
Connect your repositories to instantly see whether vulnerable or malicious packages exist in your codebase.
Free. No credit card required.

I consent to receiving marketing communications based on Aikido’s Privacy Policy.
SOC 2Compliant
ISO 27001Compliant