Description
SmartAdmin through 3.30.0 contains a missing authorization vulnerability in AdminProtectController that allows authenticated low-privileged employees to modify system-wide level-3 protection settings. Attackers can call the unannotated updateConfig and loginFail batchDelete endpoints to disable login lockout and two-factor login, weaken password rules, and clear lockout records.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| 1024-lab | SmartAdmin | ≤ 3.30.0 | — |
References
- https://hackmd.io/@1ExmmukzRMWN7B4gQ4W-4Q/smart-admin-level3-protect-config-missing-authz third-party-advisory
- https://github.com/1024-lab/smart-admin/blob/v3.30.0/smart-admin-api-java17-springboot3/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/support/AdminProtectController.java#L55-L65 technical-description
- https://github.com/1024-lab/smart-admin/blob/v3.30.0/smart-admin-api-java17-springboot3/sa-admin/src/main/java/net/lab1024/sa/admin/interceptor/AdminInterceptor.java#L84-L96 technical-description
- VulnCheck Advisory: SmartAdmin through 3.30.0 Missing Authorization via AdminProtectController third-party-advisory