JwtUtil.java
[Vulnerable Target View]
// VULNERABLE: We immediately invalidate and flag old refresh tokens.
// If a rapid network retry arrives before the client saves the new tokens,
// the server assumes a replay attack and violently destroys the session.
public TokenPair refresh(String oldRefreshToken) {
if (isTokenUsed(oldRefreshToken)) {
revokeAllUserSessions(oldRefreshToken); // Force Logout!
throw new SecurityException("Token reuse detected!");
}
markTokenAsUsed(oldRefreshToken);
return generateNewTokenPair();
}