NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
💎
💎 RubyGems
Not in CISA KEV
MEDIUM severity

CVE-2021-21288 — carrierwave

MEDIUMFix: carrierwaveuploader/carrierwave@012702e

CVE-2021-21288 is a medium-severity (CVSS 4.3) Server-Side Request Forgery (SSRF) vulnerability in carrierwave. A fix is available for carrierwave — see the affected versions and patch details below.

Server-side request forgery in CarrierWave

Also known asGHSA-fwcm-636p-68r5
Published
Updated
Affected
2 pkgs
Patched
2 / 2
Exploits
None indexed
Exploitation data as of Nov 7, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

EPSS Exploitation Probability

via FIRST.org ↗
1.2%probability of exploitation in next 30 days
Lower Risk+0.01%
Lower risk than most CVEs68th percentile — riskier than 68% of all scored CVEsHighest risk
0.00%0.56%1.12%1.69%0.2%1.2%May 26Sep 26Nov 26

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

How urgent is this, really

Where this sits among everything scored

Real-World Exposure

2 pkgs affected
💎carrierwave💎carrierwave

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects RubyGems packages — download data is not available via public APIs for these ecosystems.

Description

Impact

CarrierWave download feature has an SSRF vulnerability, allowing attacks to provide DNS entries or IP addresses that are intended for internal use and gather information about the Intranet infrastructure of the platform.

Patches

Upgrade to 2.1.1 or 1.3.2.

Workarounds

Using proper network segmentation and applying the principle of least privilege to outbound connections from application servers can reduce the severity of SSRF vulnerabilities. Ideally the vulnerable gem should run on an isolated server without access to any internal network resources or cloud metadata access.

References

Server-Side Request Forgery Prevention Cheat Sheet

For more information

If you have any questions or comments about this advisory:

Affected Packages

2 total 2 fixed
EcosystemPackageVulnerable rangeFix
💎RubyGemscarrierwaveall versions1.3.2bundle update carrierwave --conservative
💎RubyGemscarrierwave≥ 2.0.0&&< 2.1.12.1.1bundle update carrierwave --conservative

Affected Products

1 product · 2 configurations
Application
carrierwavecarrierwave_project
≥ 2.0.1 && < 2.1.1
range

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for carrierwave, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update carrierwave to 1.3.2 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2021-21288 is resolved across your whole dependency graph.

  3. Workarounds

    Restrict outbound requests from the affected component to an allowlist of hosts, block access to link-local and internal address ranges at the network layer, and require authentication on internal services so a forged request cannot reach them unauthenticated.

Frequently Asked Questions

### Impact [CarrierWave download feature](https://github.com/carrierwaveuploader/carrierwave#uploading-files-from-a-remote-location) has an SSRF vulnerability, allowing attacks to provide DNS entries or IP addresses that are intended for internal use and gather information about the Intranet infrastructure of the platform. ### Patches Upgrade to [2.1.1](https://rubygems.org/gems/carrierwave/versions/2.1.1) or [1.3.2](https://rubygems.org/gems/carrierwave/versions/1.3.2). ### Workarounds Using proper network segmentation and applying the principle of least privilege to outbound connections fr
O3 Security · Impact-Aware SCA

Is CVE-2021-21288 in your dependencies?

Find it across RubyGems, including transitive dependencies.

CVE-2021-21288: carrierwave SSRF — Fixed in 1.3.2