LiveActive security incident?Get immediate response
CVE Record

CVE-2020-26236: Verification Code Hijacking in ScratchVerifier

In ScratchVerifier before commit a603769, an attacker can hijack the verification process to log into someone else's account on any site that uses ScratchVerifier for logins. A possible exploitation would follow these steps: 1. User starts login process. 2. Attacker attempts login for user, and is given the same verification code. 3. User comments code as part of their normal login. 4. Before user can, attacker completes the login process now that the code is commented. 5. User gets a failed login and attacker now has control of the account. Since commit a603769 starting a login twice will generate different verification codes, causing both user and attacker login to fail. For clients that rely on a clone of ScratchVerifier not hosted by the developers, their users may attempt to finish the login process as soon as possible after commenting the code. There is no reliable way for the attacker to know before the user can finish the process that the user has commented the code, so this vulnerability only really affects those who comment the code and then take several seconds before finishing the login.

HighCVSS 7.5Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

ScratchVerifier could let an attacker take over an account on a site that used the vulnerable login flow. The issue depended on a verification code collision during overlapping login attempts and required the real user to interact with the login process. The listed fix changed repeated login attempts so they produce different verification codes.

Executive priority

Treat this as high priority where ScratchVerifier protects real user accounts. The business risk is account takeover, but exposure appears narrow and timing-dependent. Prioritize confirming whether the component or a clone is in use before broader response work.

Technical view

CVE-2020-26236 is a CWE-287 authentication flaw in ScratchVerifier before commit a603769. Parallel login attempts for the same user could share a verification code, allowing the wrong session to complete if timing and user interaction aligned. The commit changes duplicate starts to generate different codes, making both competing attempts fail instead.

Likely exposure

Exposure is limited to sites using ScratchVerifier before commit a603769, including independently hosted clones that did not merge the fix. The source bundle does not identify downstream vendors, hosted instances, package versions, or broader ecosystem usage.

Exploitation context

The sources do not show KEV listing or active exploitation. They describe a possible attack requiring network access, no privileges, user interaction, and difficult timing. The advisory notes practical impact is mainly for users who comment the code and then delay before finishing login.

Researcher notes

Evidence is strongest for upstream ScratchVerifier before commit a603769. The bundle lacks package release mapping, affected deployment counts, exploit-in-the-wild evidence, and downstream clone status. Validation should focus on code lineage and whether duplicate login attempts now produce separate verification codes.

Mitigation direction

  • Update ScratchVerifier to commit a603769 or later.
  • If using a clone, merge the upstream authentication fix.
  • Identify sites where ScratchVerifier is used for account login.
  • Check vendor or project guidance for any later maintained release.
  • Monitor authentication logs for unusual failed-then-successful login patterns.

Validation and detection

  • Inventory applications using ScratchVerifier or derived code.
  • Confirm the deployed code includes commit a603769 behavior.
  • Run a controlled regression test for duplicate login starts.
  • Review authentication logs around reported failed login completions.
  • Verify self-hosted clones are not pinned before the fix.
Prepared
Confidence
high
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-287: Credential and account abuse lookup

Authentication and credential weaknesses can make valid-account abuse and credential telemetry useful review starting points. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2020-26236 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.5 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
3Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.5CVSS 3.1HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H1.65.9Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

7.5High
CVSS 3.1 vector shape for CVE-2020-26236Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
ScratchVerifierScratchVerifier< a603769Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-287 · source CWE mapping

Improper Authentication

Improper Authentication represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.