Skip to main content

MISP EUVDEUVD-2026-84499

| CVE-2026-95754 MEDIUM
Improper Authorization (CWE-285)
2026-09-22 5a6e4751-2f3f-4070-9419-94fb35b644e8 GHSA-w52q-73m7-hm7j
6.9
CVSS 4.0 · Vendor: 5a6e4751-2f3f-4070-9419-94fb35b644e8
View

Attack ChainAIDerived

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

  1. Access
    Reach MISP login endpoint
  2. Delivery
    Submit disabled TOTP-enrolled username
  3. Exploit
    Guard reads undefined disabled key as null
  4. Execution
    Observe TOTP prompt vs rejection
  5. Impact
    Infer account state (minor info disclosure)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization verification
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

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

Exploitation Conditions

Requires the target MISP account to be in a specific combined state: disabled AND TOTP (two-factor) enrolled. The attacker must reach the UsersController login() endpoint (network-accessible, no authentication needed) and must be able to distinguish a TOTP-verification prompt from an immediate login rejection. What strictly limits impact: the downstream identify() call re-validates and rejects the disabled account, so no authenticated access is ever granted; the only leak is the difference in login response for the narrow disabled-plus-TOTP-enrolled population. There is no confidentiality of stored data, no integrity, and no availability impact.

Impact

This is a high-CVSS-but-negligible-real-risk finding. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L, base 6.9 Medium) reflects only a low-confidentiality impact reachable remotely without auth, and even that overstates reality. The vulnerability class is CWE-285 improper authorization, but the commit diff and the description confirm no actual authorization decision is bypassed: the omitted User.disabled column makes the disabled-user guard in the TOTP branch a no-op, yet the subsequent identify() call re-validates and still rejects the disabled account. The commit message itself labels this 'harmless in practice.' No EPSS score, no CISA KEV listing, and no public exploit code are present in the input - consistent with a low-value bug. The only observable effect is a login-response distinguisher (a TOTP prompt is shown to a disabled TOTP-enrolled user instead of immediate rejection) plus a PHP 'Undefined array key' warning in logs. Note the tension: the CVSS base score of 6.9 and the 'Authentication Bypass' tag both imply a meaningful auth flaw, but the source-of-truth commit demonstrates authentication is NOT bypassed - treat the score/tag as inflated relative to the vendor's own analysis.

Exploit ScenarioDerived

An unauthenticated attacker who knows or guesses that a specific MISP account has been disabled but still has TOTP enrolled submits that username to the login endpoint and observes whether a TOTP prompt is returned versus an immediate rejection, inferring the account's disabled/TOTP-enrolled state. No credential compromise or session results, since identify() still refuses to authenticate the disabled account. No public exploit code is identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 22, 2026

MISP's pre-authentication TOTP login path can reveal that a disabled account is TOTP-enrolled because the database query omits User.disabled, causing the disabled-account check to evaluate as false and present a TOTP prompt instead of an immediate rejection. This affects unauthenticated remote attackers who can reach UsersController::login(), but no authenticated access is granted because the downstream identify() call re-validates and rejects the disabled account. The practical impact is negligible: a small login-response information leak and a PHP undefined-array-key warning; no public exploit was identified at time of analysis, and the independent assessment rates the issue as low confidentiality impact only.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed. The primary remediation is to apply MISP commit 3df982ab1 or a subsequent MISP release that includes it, which changes the login TOTP query to select User.disabled and restores the disabled-account guard. Because no tagged release is independently confirmed, verify the fix in the vendor repository before deployment. If immediate upgrade is not possible, the impact is narrow enough that emergency network controls are not proportionate; instead, monitor PHP logs for 'Undefined array key "disabled"' from UsersController::login() to detect probing of the TOTP branch, and ensure account-disable workflows either clear TOTP secrets or explicitly handle disabled-plus-TOTP accounts. Trade-offs: log monitoring is detection-only and may be noisy from unrelated PHP warnings, while clearing TOTP enrollment for disabled accounts reduces two-factor coverage if the account is later re-enabled without re-enrollment. Blocking or restricting the login endpoint would prevent legitimate authentication and is not recommended for this negligible-risk issue. Refer to https://github.com/MISP/MISP/commit/3df982ab1 for the exact code change.

Affected VersionsENISA

MISP 0 <2.5.47

Affected Packages

euvd misp fix: 2.5.47

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 a PHP/CakePHP application, and the affected code is the login() method in app/Controller/UsersController.php. The pre-authentication database query for the TOTP branch selected only User.password, User.totp, and User.hotp_counter, omitting User.disabled. When the code later read $unauth_user['User']['disabled'], PHP emitted an 'Undefined array key' warning and treated the missing value as null, so the disabled-user guard in the TOTP branch became a no-op. This is a CWE-285 improper authorization weakness, but the commit message and independent assessment both note that the subsequent identify() call re-validates the user and still rejects disabled accounts. The assessed vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N reflects an unauthenticated remote issue with only low confidentiality impact; the published CVSS 4.0 score is 6.9, but real-world risk is limited by the downstream revalidation.

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 (5a6e4751-2f3f-4070-9419-94fb35b644e8) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.3 MEDIUM

Remotely reachable pre-auth login path (AV:N/AC:L/PR:N/UI:N); only a minor login-response information difference (C:L), no integrity or availability effect and no real auth bypass.

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

Primary rating from Vendor (5a6e4751-2f3f-4070-9419-94fb35b644e8).

CVSS VectorVendor: 5a6e4751-2f3f-4070-9419-94fb35b644e8

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

Lifecycle Timeline

1
Patch available
Sep 22, 2026 - 16:20 EUVD

DescriptionCVE.org

In MISP's UsersController login() method, the pre-authentication database query used for the TOTP (two-factor authentication) verification branch did not include the User.disabled column in its SELECT fields list. The query selected only User.password, User.totp, and User.hotp_counter. When the TOTP branch subsequently accessed $unauth_user['User']['disabled'], the key was absent from the result set, producing a PHP 'Undefined array key' warning and causing the expression to evaluate as null (falsy). As a result, the disabled-user guard in the TOTP branch was effectively a no-op: a disabled, TOTP-enrolled user could proceed to the TOTP verification step rather than being rejected at that point.

The commit message explicitly states this was 'harmless in practice' because the subsequent identify() call re-validates the user and would still reject a disabled account.

The practical security impact is therefore minimal, limited to a very small information-disclosure difference in the login response (a TOTP prompt is presented instead of an immediate rejection) and a PHP warning in application logs.

Threat Intelligence Overview

EPSS Score
0.5%
Top 55% exploitable
Prevalence
Medium
MISP is a widely-used but security-niche open-source threat-intelligence platform
Data Quality
4 sources
Confidence: Medium

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

35
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +34
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.

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