b2-sdk-python TOCTOU application key disclosure
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- High
- Impact type
- —
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
b2-sdk-python is a python library to access cloud storage provided by backblaze. Linux and Mac releases of the SDK version 1.14.0 and below contain a key disclosure vulnerability that, in certain conditions, can be exploited by local attackers through a time-of-check-time-of-use (TOCTOU) race condition. SDK users of the SqliteAccountInfo format are vulnerable while users of the InMemoryAccountInfo format are safe. The SqliteAccountInfo saves API keys (and bucket name-to-id mapping) in a local database file ($XDG_CONFIG_HOME/b2/account_info, ~/.b2_account_info or a user-defined path). When first created, the file is world readable and is (typically a few milliseconds) later altered to be private to the user. If the directory containing the file is readable by a local attacker then during the brief period between file creation and permission modification, a local attacker can race to open the file and maintain a handle to it. This allows the local attacker to read the contents after the file after the sensitive information has been saved to it. Consumers of this SDK who rely on it to save data using SqliteAccountInfo class should upgrade to the latest version of the SDK. Those who believe a local user might have opened a handle using this race condition, should remove the affected database files and regenerate all application keys. Users should upgrade to b2-sdk-python 1.14.1 or later.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Backblaze | b2-sdk-python | before 1.14.1 | 1.14.1 | Patch available | CNA |
| — | b2sdk (PyPI) | before 1.14.1 | 1.14.1 | Patch available | GHSA-p867-fxfr-ph2w |
- b2-sdk-python VendorBackblaze Affected before 1.14.1 Fixed in 1.14.1 Patch available CNA
- b2sdk (PyPI) Vendor— Affected before 1.14.1 Fixed in 1.14.1 Patch available GHSA-p867-fxfr-ph2w
Remediation
- Fix · CNA b2-sdk-python (Backblaze) Fixed in 1.14.1
- Fix · GHSA-p867-fxfr-ph2w b2sdk (PyPI) Fixed in 1.14.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2022-23651
- 2026-10-03 Alias added: GHSA-p867-fxfr-ph2w
References
Advisory 2
Sources
- CVE-2022-23651 · CVE Program
- CVE-2022-23651 · NVD
- FIRST EPSS
- GHSA-p867-fxfr-ph2w · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences