A flaw was found in Keycloak. When revokeRefreshToken=true is enabled and persistent session storage is in use, a server restart can reset internal timing mechanisms. This allows a remote attacker, who has previously captured a user's refresh token, to replay that token even after it has been revoked. Successful exploitation grants the attacker unauthorized access to the victim's account, potentially leading to information disclosure or privilege escalation.
Keycloak vulnerability allows replay of revoked refresh tokens after server restart when persistent session storage is enabled. Attackers with captured tokens can gain unauthorized account access despite revocation, risking information disclosure and privilege escalation.
تؤثر هذه الثغرة على Keycloak عند تفعيل خيار revokeRefreshToken مع استخدام تخزين الجلسات الدائم. عند إعادة تشغيل الخادم، تُعاد تعيين آليات التوقيت الداخلية مما يسمح بإعادة تشغيل الرموز الملغاة. يمكن للمهاجمين الذين يمتلكون رموز محفوظة مسبقاً استخدامها للوصول غير المصرح به.
ثغرة في Keycloak تسمح بإعادة تشغيل رموز التحديث الملغاة بعد إعادة تشغيل الخادم عند تفعيل تخزين الجلسات الدائم. يمكن للمهاجمين الذين لديهم رموز مأسورة الوصول غير المصرح به للحسابات رغم الإلغاء.
Upgrade Keycloak to the latest patched version immediately. Disable persistent session storage if not critical for operations, or implement additional token validation mechanisms. Monitor for suspicious token usage patterns and implement rate limiting on token refresh endpoints. Review access logs for unauthorized token replays.
قم بترقية Keycloak إلى أحدث إصدار مصحح فوراً. عطّل تخزين الجلسات الدائم إذا لم يكن حرجاً للعمليات، أو طبّق آليات التحقق من الرموز الإضافية. راقب أنماط استخدام الرموز المريبة وطبّق تحديد معدل على نقاط نهاية تحديث الرموز. راجع سجلات الوصول للتحقق من إعادة تشغيل الرموز غير المصرح بها.