Description
smart-sso through 2.1.1 contains an open redirect vulnerability in the /login handler that allows unauthenticated attackers to steal OAuth2 authorization codes by supplying an unvalidated redirectUri parameter. Attackers can send crafted /login links to users with active SSO sessions, then redeem stolen codes at /oauth2/access_token with any valid client credentials to obtain victims' access tokens.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| a466350665 | smart-sso | ≤ 2.1.1 | — |
References
- https://hackmd.io/@hieuPenguinnn/smart-sso-oauth2-code-leak-open-redirect third-party-advisory
- https://github.com/a466350665/smart-sso/blob/2.1.1/smart-sso-server/src/main/java/com/smart/sso/server/controller/LoginController.java#L53-L63 technical-description
- https://github.com/a466350665/smart-sso/blob/1.6.0/smart-sso-server/src/main/java/openjoe/smart/sso/server/controller/LoginController.java#L50-L59 technical-description
- https://github.com/a466350665/smart-sso/blob/1.6.0/smart-sso-server/src/main/java/openjoe/smart/sso/server/controller/Oauth2Controller.java#L55-L84 technical-description
- https://github.com/a466350665/smart-sso product
- VulnCheck Advisory: smart-sso through 2.1.1 OAuth2 Authorization Code Theft via Unvalidated redirectUri third-party-advisory