drakkan/sftpgo · Security
SFTPGo vulnerable to recovery codes abuse
- GHSA ID
- GHSA-54qx-8p8w-xhg8
- CVE ID
- CVE-2022-36071
- Severity
- high
- Published
- Updated
- CVSS
- 8.3 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
- CVSS v3
- 8.3 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Description
Impact
SFTPGo WebAdmin and WebClient support login using TOTP (Time-based One Time Passwords) as a seconday authentication factor. Because TOTPs are often configured on mobile devices that can be lost, stolen or damaged, SFTPGo also supports recovery codes. These are a set of one time use codes that can be used instead of the TOTP.
In SFTPGo versions from v2.2.0 to v2.3.3 recovery codes can be generated before enabling two-factor authentication. An attacker who knows the user's password could potentially generate some recovery codes and then bypass two-factor authentication after it is enabled on the account at a later time.
Patches
Fixed in v2.3.4. Recovery codes can now only be generated after enabling two-factor authentication and are deleted after disabling it.
Workarounds
Regenerate recovery codes after enabling two-factor authentication.
References
CWEs
- CWE-287 · Improper Authentication
- CWE-916 · Use of Password Hash With Insufficient Computational Effort