Skip to content
OpenAdvisories
High · 7.4 CVE-2021-21305 EUVD-2021-0545GHSA-cf3w-g86h-35x4

Code Injection vulnerability in CarrierWave

Published Feb 8, 2021 · Updated Aug 3, 2024 · Assigned by GitHub_M

Description

CarrierWave is an open-source RubyGem which provides a simple and flexible way to upload files from Ruby applications. In CarrierWave before versions 1.3.2 and 2.1.1, there is a code injection vulnerability. The "#manipulate!" method inappropriately evals the content of mutation option(:read/:write), allowing attackers to craft a string that can be executed as a Ruby code. If an application developer supplies untrusted inputs to the option, it will lead to remote code execution(RCE). This is fixed in versions 1.3.2 and 2.1.1.

Affected products

VendorProductAffectedFixed
carrierwaveuploader carrierwave < 1.3.2, >= 2.0.0, < 2.1.1 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 12 ruby-carrierwave 1.3.2-1 —
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS ruby-carrierwave No fix yet —
Show 4 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 24.04 LTS ruby-carrierwave 1.3.2-2ubuntu0.24.04.1~esm1 USN-7497-1
Ubuntu Pro 22.04 LTS ruby-carrierwave 1.3.2-2ubuntu0.22.04.1~esm1 USN-7497-1
Ubuntu Pro 20.04 LTS ruby-carrierwave 1.3.1-2ubuntu0.1~esm1 USN-7497-1
Ubuntu Pro 18.04 LTS ruby-carrierwave 1.2.2-1ubuntu0.1~esm1 USN-7497-1

Affected packages

EcosystemPackageAffectedFixedRecord
RubyGems carrierwave < 1.3.2 1.3.2 GHSA-cf3w-g86h-35x4
RubyGems carrierwave >= 2.0.0, < 2.1.1 2.1.1 GHSA-cf3w-g86h-35x4

Advisories 1

References