CVE-2022-29185 json
Observable Timing Discrepancy in totp-rs
published 2022-05-09 4 y ago modified 2026-10-12 27 d ago also GHSA-8vxv-2g8p-2249 , RUSTSEC-2022-0018 , EUVD-2022-3248
- cvss
- 4.2
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 58%
- public exploits
- 0
- none known
Summary
totp-rs is a Rust library that permits the creation of 2FA authentification tokens per time-based one-time password (TOTP). Prior to version 1.1.0, token comparison was not constant time, and could theorically be used to guess value of an TOTP token, and thus reuse it in the same time window. The attacker would have to know the password beforehand nonetheless. Starting with patched version 1.1.0, the library uses constant-time comparison. There are currently no known workarounds.
Patch / fix
- crates.io totp-rs 1.1.0
- totp-rs_project totp-rs 1.1.0
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
0.86% chance of exploitation in the next 30 days, higher than 58% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 4.2 | CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:N/A:N |
| NVD | 3.1 | 4.4 | CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 3.5 | AV:N/AC:M/Au:S/C:P/I:N/A:N |
| OSV | 3.1 | 4.2 | CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 4.2 | CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | totp-rs | <1.1.0 >=0.0.0-0, <1.1.0 |
1.1.0 |
Affected products
- constantoine totp-rs
Classification
References
-
github.com
/constantoine/totp-rs/commit/1f1e1a6fe722deb1656f483b1367ea4be978db5b
web
-
github.com
/constantoine/totp-rs/security/advisories/GHSA-8vxv-2g8p-2249
web, third-party-advisory
-
github.com
/constantoine/totp-rs/issues/13
web, issue-tracking, third-party-advisory, report
-
github.com
/constantoine/totp-rs/releases/tag/v1.1.0
web, release-notes, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2022-29185
advisory
-
github.com
/constantoine/totp-rs
package
-
github.com
/constantoine/totp-rs/compare/v1.0...v1.1.0
web
-
rustsec.org
/advisories/RUSTSEC-2022-0018.html
web, advisory
-
crates.io
/crates/totp-rs
package
Sources
- CVE List CVE-2022-29185
- GitHub Advisory GHSA-8vxv-2g8p-2249
- NVD CVE-2022-29185
- OSV RUSTSEC-2022-0018
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.