All vulnerabilities
CVE-2026-67242GHSA-rrj4-g94f-rqj9

rabbitmq-server: RabbitMQ: OAuth2 is_integer(Exp) guard skips token-expiry checks for float exp

rabbitmq rabbitmq-server
CVSS
6.3Medium
ExploitationPublic exploit codeCISA's assessment says proof of concept code is public, assessed 25 Sep 2026. Not in the KEV catalogCISA via CVE List
Exploit odds (EPSS)0.34%Chance of exploitation activity in the next 30 days, higher than 26% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in4.2.9Also 4.3.3GitHub
Published25 Sep 2026Updated 25 Sep 2026CVE List

What fixes it

  • 4.2.9rabbitmq-server, otherGitHub
  • 4.3.3rabbitmq-server, otherGitHub

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, OAuth2 isinteger(Exp) guard skips token-expiry checks for float exp. validatetokenexpiry/1 (lines 208-214) and expirytimestamp/1 (138-144) both guard with 'when isinteger(Exp)' and fall through to ok/never for float values. josejwt:verify validates only the signature, not exp. With float exp, no expiry validation occurs anywhere in the If the IdP emits exp as a JSON float (RFC 7519 permits fractional NumericDate), both the login-time expiry check and the mid-connection disconnect timer are silently skipped , an already-expired token is accepted, and connections never time OAuth2 backend enabled IdP emits float exp (uncommon; mainstream IdPs emit integers) Attacker possesses a previously-valid signed. This issue is fixed in versions 4.2.9 and 4.3.3.

Text from CVE List

Affected versions 4

  • rabbitmq-serveraffected: >= 4.2.0, < 4.2.9CVE List
  • rabbitmq-serveraffected: >= 4.3.0, < 4.3.3CVE List
  • rabbitmq-server, other>= 4.2.0, < 4.2.9GitHub
  • rabbitmq-server, other>= 4.3.0, < 4.3.3GitHub

References 5