CVE-2026-49870 json
Snipe-IT: TOTP Brute-Forceable Due to Missing Rate Limiting on `POST /two-factor`
published 2026-06-23 4 mo ago modified 2026-10-24 15 d ago also EUVD-2026-62676 , GHSA-mr8g-2mj4-pcq2
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 34%
- public exploits
- 0
- none known
Summary
Snipe-IT is an IT asset/license management system. Prior to 8.6.1, POST /two-factor has no rate limiting, lockout, or attempt counter, allowing an attacker with valid credentials to submit unlimited TOTP guesses against the three accepted codes created by config/google2fa.php window=1. A successful guess creates a fully authenticated session. When two_factor_enabled is 1, POST /account/profile with two_factor_optin=0 can disable two-factor authentication without OTP reverification, while required mode 2 prevents that opt-out. An administrator can also use POST /api/v1/users/two_factor_reset to clear another user's secret. This issue is fixed in version 8.6.1.
Patch / fix
- packagist snipe/snipe-it 8.6.0
- snipeitapp snipe-it 8.6.1
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.40% chance of exploitation in the next 30 days, higher than 34% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N |
| GitHub | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| packagist | snipe/snipe-it | <8.6.0 |
8.6.0 |
Affected products
- grokability snipe-it
Classification
- Weakness
-
- CWE-770 Allocation of Resources Without Limits or Throttling
References
-
github.com
/grokability/snipe-it/pull/19072
patch
-
github.com
/grokability/snipe-it/commit/46d5234fd73d5fb928af43eb67d3bf7643d53115
patch
-
github.com
/grokability/snipe-it/releases/tag/v8.6.1
release-notes, patch
-
github.com
/grokability/snipe-it/security/advisories/GHSA-mr8g-2mj4-pcq2
web, vendor-advisory
-
github.com
/grokability/snipe-it
package
Sources
- CVE List CVE-2026-49870
- GitHub Advisory GHSA-mr8g-2mj4-pcq2
- NVD CVE-2026-49870
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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.