CVE-2025-54887
JWE is missing AES-GCM authentication tag validation in encrypted JWE
Severity by source
Trivy's own label is CRITICAL. Rated critical by GHSA, Ruby Advisory DB.
Description
jwe is a Ruby implementation of the RFC 7516 JSON Web Encryption (JWE) standard. In versions 1.1.0 and below, authentication tags of encrypted JWEs can be brute forced, which may result in loss of confidentiality for those JWEs and provide ways to craft arbitrary JWEs. This puts users at risk because JWEs can be modified to decrypt to an arbitrary value, decrypted by observing parsing differences and the GCM internal GHASH key can be recovered. Users are affected by this vulnerability even if they do not use an AES-GCM encryption algorithm for their JWEs. As the GHASH key may have been leaked, users must rotate the encryption keys after upgrading. This issue is fixed in version 1.1.1.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| rubygems::GitHub Security Advisory RubyGems | jwe | 1.1.1 |
| rubygems::Ruby Advisory Database | jwe | >= 1.1.1 |
References
- https://github.com/advisories/GHSA-c7p4-hx26-pr73
- https://github.com/jwt/ruby-jwe
- https://github.com/jwt/ruby-jwe/commit/1e719d79ba3d7aadaa39a2f08c25df077a0f9ff1
- https://github.com/jwt/ruby-jwe/releases/tag/v1.1.1
- https://github.com/jwt/ruby-jwe/security/advisories/GHSA-c7p4-hx26-pr73
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/jwe/CVE-2025-54887.yml
- https://nvd.nist.gov/vuln/detail/CVE-2025-54887