9.1

CVE-2026-45363: `jwt` (Ruby gem) - empty-key HMAC bypass

Deferred
AliasesUBUNTU-CVE-2026-45363DEBIAN-CVE-2026-45363CGA-36j6-4cp6-cjwh
Published 14-07-2026Last modified 19-09-2026

Vulnerability summary

CVE-2026-45363 is a critical (CVSS 9.1) Improper Authentication vulnerability in jwt ruby-jwt. EPSS estimates a 0.36% chance of exploitation in the next 30 days, higher than 30.3% of scored vulnerabilities.

Priority
Prioritisesevere

Severe, CVSS 9.1 (CVE.org); no exploitation reported by the 5 checked sources; EPSS 0% (FIRST, 03-11-2026)

Source freshness unavailable

How is this decided?
CVSS score
9.1/10
010
Critical · v3.1 (CVE.org)
EPSS score
0.36%
0%100%
Low · 0.00 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 4 · Related 1

Timeline

  1. 14-07-2026
    PublishedVulnerability first disclosed.
  2. 19-09-2026
    Last modifiedVulnerability information updated.

Description

ruby-jwt is a Ruby implementation of the RFC 7519 OAuth JSON Web Token standard. Prior to 2.10.3 and 3.2.0, JWT.decode(token, '', true, algorithm: 'HS256') accepts an attacker-forged token because OpenSSL::HMAC.digest('SHA256', '', payload) returns a valid digest under an empty key and no empty-key precondition exists in the HMAC algorithm. The same path is reached when a keyfinder block or key_finder: argument returns an empty string, nil, or an array containing nil for an unknown key, affecting HS256, HS384, and HS512 verification through JWT.decode and JWT::EncodedToken#verify_signature!. This issue is fixed in versions 2.10.3 and 3.2.0.

CVSS metrics

7 scores · 7 sources · 1 version

EPSS trend

Probability

0.36%

Chance of exploitation in the next 30 days

Percentile

30%

Versus all other CVEs

30-day change

No change 0.00 pp

From 0.36% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.

Chainguard29 products
  • cinc-auditor< 7.1.7-r0
  • gitlab-rails-ce-18.1All versions (No fix recorded)
  • gitlab-rails-ce-18.10< 18.10.8-r0
  • gitlab-rails-ce-18.11< 18.11.5-r0
  • gitlab-rails-ce-18.3All versions (No fix recorded)
Wolfi4 products
  • cinc-auditor< 7.1.7-r0
  • kube-fluentd-operator< 1.18.2-r65
  • ruby3.2-kube-logging-operator-fluentd-outputs< 6.5.2-r0
  • ruby3.4-kube-logging-operator-fluentd-outputs< 6.5.2-r0
Debian1 product
  • ruby-jwt< 2.5.0-1+deb12u1 | < 2.7.1-1+deb13u1 | < 3.2.0-1
Jwt1 product
RubyGems1 product
  • jwt≥ 3.0.0, < 3.2.0 | < 2.10.3
Ubuntu1 product
  • ruby-jwtAll versions (No fix recorded)

6 vendors · 37 products

References

14 links
Show all 14 references