Description
Memos versions 0.26.0 through 0.30.0 fail to revoke refresh tokens when a user changes their password, allowing attackers to maintain account access. An attacker with a stolen refresh token can call the RefreshToken RPC to obtain new access tokens and rotate the refresh token indefinitely, bypassing the password change security measure.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| usememos | memos | 0.26.0 – ≤ 0.30.0 | — |
References
- https://github.com/usememos/memos product
- https://github.com/usememos/memos/blob/v0.30.0/server/router/api/v1/user_service.go technical-description
- https://github.com/usememos/memos/blob/v0.30.0/server/auth/authenticator.go technical-description
- VulnCheck Advisory: Memos 0.26.0 through 0.30.0 Insufficient Session Expiration on Password Change third-party-advisory