Description
The openssl gem for Ruby uses the same initialization vector (IV) in GCM Mode (aes-*-gcm) when the IV is set before the key, which makes it easier for context-dependent attackers to bypass the encryption protection mechanism.
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.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | ruby-attr-encrypted | 3.0.1-2 | — |
| Debian 14 | ruby-encryptor | 3.0.0-1 | — |
| Debian 13 | ruby-attr-encrypted | 3.0.1-2 | — |
| Debian 13 | ruby-encryptor | 3.0.0-1 | — |
| Debian 12 | ruby-attr-encrypted | 3.0.1-2 | — |
| Debian 12 | ruby-encryptor | 3.0.0-1 | — |
| Debian 9 | ruby2.3 | 2.3.3-1+deb9u1 | DSA-3966-1 |
| Debian 8 | ruby2.1 | 2.1.5-2+deb8u4 | DLA-1421-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 16.04 LTS | ruby-encryptor +1 | No fix yet | — |
| Ubuntu 16.04 LTS | ruby2.3 | 2.3.1-2~16.04.2 | USN-3365-1 |
| Ubuntu 14.04 LTS | ruby1.9.1 | 1.9.3.484-2ubuntu1.3 | USN-3365-1 |
| Ubuntu 14.04 LTS | ruby2.0 | 2.0.0.484-1ubuntu2.4 | USN-3365-1 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 12 SP5 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES 12 SP4 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES 12 SP3 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES 12 SP2 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES 12 SP2 | yast2-ruby-bindings | 3.1.53-9.8.1 | SUSE-SU-2020:1570-1 |
Show 9 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 12 SP5 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES for SAP 12 SP4 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES for SAP 12 SP3 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES for SAP 12 SP2 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SLES for SAP 12 SP2 | yast2-ruby-bindings | 3.1.53-9.8.1 | SUSE-SU-2020:1570-1 |
| SUSE OpenStack Cloud Crowbar 8 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SUSE OpenStack Cloud 8 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SUSE OpenStack Cloud 7 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SUSE OpenStack Cloud 7 | yast2-ruby-bindings | 3.1.53-9.8.1 | SUSE-SU-2020:1570-1 |
| SUSE HPE Helion OpenStack 8 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
| SUSE Enterprise Storage 5 | ruby2.1 | 2.1.9-19.3.2 | SUSE-SU-2020:1570-1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| RubyGems | openssl | < 2.0.0 | 2.0.0 | GHSA-6h88-qjpv-p32m |
Advisories 4
- USN-3365-1 ruby1.9.1, ruby2.0, ruby2.3 vulnerabilities Ubuntu Security Notices (USN) · Apr 27, 2026
- DSA-3966-1 ruby2.3 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-1421-1 ruby2.1 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2020:1570-1 Security update for ruby2.1 SUSE / openSUSE Security Updates · Feb 4, 2026
References
- [oss-security] 20160930 Re: CVE Request - Ruby OpenSSL Library - IV Reuse in GCM Mode mailing-list
- DSA-3966 vendor-advisory
- https://github.com/ruby/openssl/commit/8108e0a6db133f3375608303fdd2083eb5115062
- [oss-security] 20160930 Re: CVE Request - Ruby OpenSSL Library - IV Reuse in GCM Mode mailing-list
- [debian-lts-announce] 20180714 [SECURITY] [DLA 1421-1] ruby2.1 security update mailing-list
- [oss-security] 20160919 CVE Request - Ruby OpenSSL Library - IV Reuse in GCM Mode mailing-list
- 93031 vdb-entry
- https://github.com/ruby/openssl/issues/49