CVE-2026-101041
Vulnerability-Lookup - Race Condition in Account Recovery Token Consumption Allows Password Takeover
02 Description
Vulnerability-Lookup - Race Condition in Account Recovery Token Consumption Allows Password Takeover
03 Exploitation and scoring
- Exploitation
- Assessed, none found. CISA's assessment recorded neither public exploit code nor evidence of exploitation when it was made.
- SSVC decision
- ExploitationnoneCISA recorded no public exploit code and no evidence of exploitation.
- AutomatablenoAt least one step from reconnaissance to exploitation cannot be reliably automated.
- Technical ImpactpartialSuccessful exploitation gives limited control of the vulnerable component.
- EPSS probability
- 0.22% probability of exploitation activity in the next 30 days.
- EPSS percentile
- Equal to or higher than the score of 13.5% of scored records. A rank, not a probability.
- NVD base score
- 6.3 (CVSS v4.0), scored by the NVD independently of the CNA.
- NVD CVSS vector
- CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:L/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
- NVD analysis status
- Deferred. NVD last modified this record on 2026-09-29.
- Red Hat severity
- No Red Hat rating. Red Hat rates the CVEs that affect its products.
Exploit-prediction scores from FIRST. Independent scoring and analysis status from the NVD. Vendor severity from Red Hat. Exploitation assessment and catalog membership from CISA.
04 Metadata
- Published
- 2026-09-27 14:47Z1 MO AGO
- Last updated
- 2026-09-29 15:28Z1 MO AGO
- Reserved
- 2026-09-27
- Assigning CNA
- CIRCL
- Record state
- PUBLISHED
- Severity
- Medium (CVSS 6.3)
- CNA CVSS vector
- CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:L/SI:N/SA:N
- Weaknesses
- Data version
- 5.2
- Document digest
- bb8a80cedc5ecf0141efa5d43f82117e84c26b51cf9119ef132d93e00b99ae24
05 Affected products
06 References
07 Remediation
The non-atomic check-then-consume pattern is replaced with a single conditional UPDATE statement (compare-and-set) that atomically verifies the stored SHA-256 nonce digest, updates the password hash, sets is_confirmed, and clears the token in one database operation. Only the first transaction to commit succeeds; all concurrent attempts match zero rows and are rejected with an error. The view now calls form.validate() before processing the password change, enforcing the form's length and equality validators. The dead consume_account_token() method is removed to eliminate the non-atomic consumption path entirely.