Ecosyste.ms: Advisories
An open API service providing security vulnerability metadata for many open source software ecosystems.
Security Advisories: GSA_kwCzR0hTQS01NHF4LThwOHcteGhnOM4AAu2C
SFTPGo vulnerable to recovery codes abuse
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
https://github.com/drakkan/sftpgo/issues/965
Permalink: https://github.com/advisories/GHSA-54qx-8p8w-xhg8JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01NHF4LThwOHcteGhnOM4AAu2C
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: about 2 years ago
Updated: almost 2 years ago
CVSS Score: 8.3
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Identifiers: GHSA-54qx-8p8w-xhg8, CVE-2022-36071
References:
- https://github.com/drakkan/sftpgo/security/advisories/GHSA-54qx-8p8w-xhg8
- https://nvd.nist.gov/vuln/detail/CVE-2022-36071
- https://github.com/drakkan/sftpgo/issues/965
- https://github.com/advisories/GHSA-54qx-8p8w-xhg8
Blast Radius: 0.0
Affected Packages
go:github.com/drakkan/sftpgo/v2
Dependent packages: 7Dependent repositories: 1
Downloads:
Affected Version Ranges: >= 2.2.0, < 2.3.4
Fixed in: 2.3.4
All affected versions: 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.3.0, 2.3.1, 2.3.2, 2.3.3
All unaffected versions: 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.1.0, 2.1.1, 2.1.2, 2.3.4, 2.3.5, 2.3.6, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6, 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.5.4, 2.5.5, 2.5.6, 2.6.0, 2.6.1, 2.6.2, 2.6.3