Skip to content
OpenAdvisories
Medium · 4.8 CVE-2024-7318 BIT-keycloak-2024-7318EUVD-2024-3171GHSA-xmmm-jw76-q7vg

Keycloak-core: one time passcode (otp) is valid longer than expiration timeseverity

Published Sep 9, 2024 · Updated Jan 26, 2026 · Assigned by redhat

Description

A vulnerability was found in Keycloak. Expired OTP codes are still usable when using FreeOTP when the OTP token period is set to 30 seconds (default). Instead of expiring and deemed unusable around 30 seconds in, the tokens are valid for an additional 30 seconds totaling 1 minute.
A one time passcode that is valid longer than its expiration time increases the attack window for malicious actors to abuse the system and compromise accounts. Additionally, it increases the attack surface because at any given time, two OTPs are valid.

Affected products

VendorProductAffectedFixed
— keycloak-core < 24.0.7, 25.0.0 – < 25.0.4 24.0.7
Red Hat Red Hat Build of Keycloak — —
Red Hat Red Hat build of Keycloak 24 — —

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.

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling keycloak-config-cli +2 6.4.0-r1 —

Affected packages

EcosystemPackageAffectedFixedRecord
Maven org.keycloak:keycloak-core < 24.0.7 24.0.7 GHSA-xmmm-jw76-q7vg
Maven org.keycloak:keycloak-core >= 25.0.0, < 25.0.4 25.0.4 GHSA-xmmm-jw76-q7vg

Advisories 1

References