Skip to main content

MISP CVE-2026-103651

| EUVDEUVD-2026-90542 HIGH
Race Condition (CWE-362)
2026-10-01 CIRCL GHSA-28mq-63wc-4252
7.6
CVSS 4.0 · Vendor: CIRCL
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain valid session with password completed
  2. Delivery
    Possess a previously-used HOTP token value
  3. Exploit
    Replay burned token at pending OTP step
  4. Execution
    Stale session-cached counter matches
  5. Impact
    Bypass 2FA and corrupt counter state

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires three concrete, stacked prerequisites explicitly stated in the advisory: (1) the target user has HOTP (paper-token) second-factor authentication enabled in MISP - TOTP-only or no-2FA users are unaffected; (2) the attacker already holds a valid session in which the password step is completed and only the OTP step is pending, implying prior compromise of the user's password; and (3) the attacker has at least one valid HOTP token value (e.g., a copy of the paper token list). The limiting factors are substantial: authentication (PR:L) via a known password is required, HOTP paper tokens must be the configured second factor, and the attacker needs access to a token value - making this an insider/post-password-compromise scenario rather than an anonymous remote exploit. Fixed in MISP 2.5.48.

Impact

Vendor CVSS 4.0 scores this 7.6 (High) with AV:N/AC:H/PR:L/UI:N and VC:H/VI:H, which is consistent with the described impact: a second-factor bypass yielding full account takeover (confidentiality and integrity high, no availability impact). The real-world risk is moderated significantly by the attack prerequisites baked into the vector - PR:L and AC:H are both well-justified because the attacker must already hold a valid authenticated session with the password step completed AND possess at least one valid HOTP paper-token value, then exploit stale session-cached counter state. This is not a remote, unauthenticated, point-and-click flaw. There is no EPSS score, no CISA KEV listing, and no public proof-of-concept provided, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The CWE-362 (race condition) classification is somewhat loose - the root cause per the description and patch is a logic/replay flaw (verifying against a session-cached counter instead of the authoritative DB counter), though the vendor fix does add a Redis lock to serialize consumption, giving the race framing some basis. Net: a legitimate, patch-worthy 2FA-integrity defect, but a targeted/insider-flavored issue rather than a mass-exploitation priority, given the stacked preconditions (valid session + possession of a paper token).

Exploit ScenarioDerived

An attacker who has already obtained a user's password (completing the login's first step and holding a pending-OTP session) and who has observed or captured at least one HOTP paper-token value replays a previously-used token. Because MISP verifies the submitted token against the counter cached in the session rather than the incremented authoritative value in the database, the burned token still validates, bypassing the second factor and granting account access while corrupting the HOTP counter. No public exploit code is identified at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 01, 2026

Second-factor authentication bypass in MISP versions before 2.5.48 lets an attacker who already holds a session past the password step and a copy of the HOTP paper-token list replay a previously consumed HOTP token, because the OTP check compared the submitted token against a counter cached in the user's session rather than the authoritative database counter; the stale cached value still matches the burned token, yielding a second successful login and rewinding the counter state. Exploitation is not anonymous: it requires an authenticated session (PR:L per the assessed vector, implying prior password compromise), HOTP paper-token 2FA explicitly enabled on the target account, and knowledge of at least one valid token value, per the assessed CVSS:3.1 vector AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N (vendor CVSS 4.0 score 7.6, High). No public exploit code or confirmed active exploitation was identified at time of analysis, and the issue is fixed in MISP 2.5.48 by commit f34aee2c7.

RemediationAI

Vendor-released patch: upgrade to MISP 2.5.48, which incorporates commit f34aee2c7 (https://github.com/MISP/MISP/commit/f34aee2c7) and replaces the session-cached HOTP check with a database-authoritative verification wrapped in a Redis lock so each paper token is burned exactly once; because the fix depends on Redis-backed locking, ensure the Redis service MISP uses is available, or token-consumption atomicity may fail closed (the helper returns false when the lock cannot be acquired). Until the upgrade is applied, the most effective compensating control with the fewest side effects is to disable HOTP paper-token 2FA for users and require TOTP or another non-replayable factor, which closes the affected code path entirely at the cost of requiring users to re-enroll their second factor. If HOTP must remain enabled, restrict it to a small set of accounts, shorten session lifetimes and force re-authentication so the 'password submitted, OTP pending' window is minimal, and rotate/reissue HOTP paper-token lists for any account where token values may have been exposed - noting that counter corruption caused by a successful replay can invalidate remaining legitimate tokens, so re-enrollment may be necessary regardless. Monitor authentication logs for repeated successful OTP submissions or unexpected hotp_counter decreases, and treat any session in which the OTP step was pending at the time of compromise as suspect. No vendor-released patch alternative or CVE-specific mitigation workaround beyond version upgrade is documented in the supplied references; the only reference provided is the upstream commit.

Affected VersionsENISA

MISP 0 <2.5.48

Affected Packages

euvd misp fix: 2.5.48

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

MISP is an open-source threat-intelligence sharing platform whose web application manages user authentication through CakePHP controllers, with the OTP verification flow implemented in app/Controller/UsersController.php. The affected accounts use HOTP, the counter-based one-time-password scheme from RFC 4226, in which each generated token corresponds to an incrementing counter value that must advance monotonically on every successful authentication. The vulnerable code read the user's hotp_counter from a value cached in the session at password-entry time and passed that cached counter into OTPHP\HOTP::verify(), then saved hotp_counter+1 only in the branch handling that session copy; because the cached counter was never refreshed after a token was consumed, a replayed token continued to match the stale counter, allowing the token to be burned repeatedly and effectively rewinding counter state. The assigned CWE-362 (Race Condition) reflects the underlying defect class: verification and counter consumption were not performed atomically against the persisted counter, so concurrent or repeated submissions could both pass verification. The official fix introduces a __consumeHotp() helper that re-reads User.totp and User.hotp_counter directly from the database, verifies the submitted token against that stored counter, and burns it inside a Redis-backed lock ('misp:otp:hotp_lock:<userId>', SET NX EX 10) so each token works exactly once; the fix also deletes the session entry 'otp_user' after success. Note that the same database column (User.totp) stores the underlying shared secret for both TOTP and HOTP modes. Per the assessed CVSS:3.1 vector, confidentiality and integrity impacts are High while availability is None, consistent with account takeover of the targeted user rather than service disruption.

Know when Misp gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (CIRCL) PRIMARY 7.6 HIGH
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.8 MEDIUM

AC:H and PR:L because the attacker must already hold a password-authenticated pending session and possess a valid HOTP token; account takeover gives C:H/I:H, no availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (CIRCL).

CVSS VectorVendor: CIRCL

Attack Vector
Network
Attack Complexity
High
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

MISP contains a vulnerability in its one-time password (OTP) authentication flow that allows replay of a consumed HOTP (paper) token and rewinding of the token counter.

The HOTP verification logic compared the submitted token against a counter value that was cached in the user's session at the time the password was entered, rather than against the authoritative counter stored in the database. Because the session-cached counter is not updated after a token is successfully consumed, an attacker who holds a valid session (password already submitted) can reuse a previously burned HOTP token. The stale cached counter still matches the replayed token, granting a second successful authentication and effectively rewinding the counter state.

Preconditions:

  • The target user has HOTP (paper token) second-factor authentication enabled.
  • The attacker possesses a valid session in which the password step has already been completed (the OTP step is pending).
  • The attacker has access to at least one HOTP token value (e.g., a paper token list).

Security impact:

  • Bypass of the second authentication factor, allowing unauthorized access to a user's MISP account.
  • Corruption of the HOTP counter state, potentially invalidating subsequent legitimate tokens or enabling further replays.

Affected versions: <2.5.48.

Executive ViewAI

Why It Matters

MISP, the threat-intelligence sharing platform used by our security operations and partner-sharing workflows, contains a second-factor authentication bypass affecting all releases prior to 2.5.48. An attacker who has already obtained a user's password and a copy of that user's HOTP paper-token list could complete a second login using an already-consumed token, silently defeating the control we rely on to protect our most sensitive indicator and incident data. Leadership should care because the accounts at risk are precisely those with access to shared threat intelligence and the trust relationships we maintain with external partners.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Medium
widely-used open-source threat-intelligence sharing platform in CERT/SOC environments
Data Quality
4 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Total

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).

More in Misp

View all
CVE-2018-19908 HIGH POC
8.8 Dec 06

An issue was discovered in MISP 2.4.9x before 2.4.99. Rated high severity (CVSS 8.8), this vulnerability is remotely exp

CVE-2022-29528 CRITICAL POC
9.8 Apr 20

An issue was discovered in MISP before 2.4.158. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo

CVE-2022-48328 CRITICAL POC
9.8 Feb 20

app/Controller/Component/IndexFilterComponent.php in MISP before 2.4.167 mishandles ordered_url_params and additional_de

CVE-2026-44381 CRITICAL POC
9.3 May 13

SQL injection in MISP threat intelligence platform versions prior to 2.5.37 allows remote unauthenticated attackers to m

CVE-2022-29534 HIGH POC
7.5 Apr 20

An issue was discovered in MISP before 2.4.158. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitab

CVE-2023-37306 HIGH POC
7.5 Jun 30

MISP 2.4.172 mishandles different certificate file extensions in server sync. Rated high severity (CVSS 7.5), this vulne

CVE-2021-41326 CRITICAL
9.8 Sep 17

In MISP before 2.4.148, app/Lib/Export/OpendataExport.php mishandles parameter data that is used in a shell_exec call. R

CVE-2018-12649 CRITICAL
9.8 Jun 22

An issue was discovered in app/Controller/UsersController.php in MISP 2.4.92. Rated critical severity (CVSS 9.8), this v

CVE-2020-15411 CRITICAL
9.8 Jun 30

An issue was discovered in MISP 2.4.128. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,

CVE-2020-29006 CRITICAL
9.8 Nov 24

MISP before 2.4.135 lacks an ACL check, related to app/Controller/GalaxyElementsController.php and app/Model/GalaxyEleme

CVE-2021-35502 CRITICAL
9.8 Jun 25

app/View/Elements/genericElements/IndexTable/Fields/generic_field.ctp in MISP 2.4.144 does not sanitize certain data rel

CVE-2021-39302 CRITICAL
9.8 Aug 19

MISP 2.4.148, in certain configurations, allows SQL injection via the app/Model/Log.php $conditions['org'] value. Rated

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy