Cyber Resilience

CVE-2026-26190

Access Control in Milvus ≤ 2.5.27

Public PoCAccess Control
Published
13 February 2026
Modified
18 February 2026
Patch / advisory
CVSS Score v3.1 9.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.37 98th percentile
Risk Priority 88 floored blend · peak EPSS

Summary

CVE-2026-26190 is a critical-severity Missing Authentication for Critical Function (CWE-306) vulnerability in Milvus Milvus. Its CVSS base score is 9.8 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked in the top 2% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

This vulnerability is AI-related — categorised as Similarity Search; in the Supply Chain and Deployment risk domain.

The strongest mitigations our analysis identified map to AC-14 (Permitted Actions Without Identification or Authentication) and IA-2 (Identification and Authentication (Organizational Users)) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-26190 affects Milvus, an open-source vector database designed for generative AI applications. In versions prior to 2.5.27 and 2.6.10, the software exposes TCP port 9091 by default, enabling authentication bypasses. Specifically, the /expr debug endpoint relies on a weak, predictable default authentication token derived from etcd.rootPath (default: by-dev), which allows arbitrary expression evaluation. Additionally, the full REST API (/api/v1/*) is registered on the metrics/management port without any authentication, granting access to all business operations. The vulnerability is rated CVSS 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) and maps to CWE-306 (Missing Authentication for Critical Function).

Remote attackers require no privileges or user interaction to exploit this vulnerability over the network. By connecting to the exposed port 9091, they can bypass authentication on the /expr endpoint using the predictable token to execute arbitrary expressions. Access to the unauthenticated REST API enables full manipulation of vector database operations, including data read/write, deletion, and credential management, potentially leading to complete compromise of the database.

The Milvus security advisory (GHSA-7ppg-37fh-vcr6) and related GitHub releases confirm the issue is fixed in versions 2.5.27 and 2.6.10. A specific commit (92b74dd2e286006a83b4a5f07951027b32e718a9) addresses the authentication flaws by securing the debug endpoint and protecting the REST API endpoints.

Milvus's role in generative AI applications highlights its relevance to AI/ML infrastructures, where vector databases store embeddings for large language models and retrieval-augmented generation workflows. No public evidence of real-world exploitation is available as of the CVE publication on 2026-02-13.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Milvus is an open-source vector database built for generative AI applications. Prior to 2.5.27 and 2.6.10, Milvus exposes TCP port 9091 by default, which enables authentication bypasses. The /expr debug endpoint uses a weak, predictable default authentication token derived from…

more

etcd.rootPath (default: by-dev), enabling arbitrary expression evaluation. The full REST API (/api/v1/*) is registered on the metrics/management port without any authentication, allowing unauthenticated access to all business operations including data manipulation and credential management. This vulnerability is fixed in 2.5.27 and 2.6.10.

CWE(s)

AI Security AnalysisAI

AI Category
Similarity Search
Risk Domain
Supply Chain and Deployment
OWASP Top 10 for LLMs 2025
None mapped
Classification Reason
Matched keywords: generative ai, milvus

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1133 External Remote Services Persistence
Adversaries may leverage external-facing remote services to initially access and/or persist within a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2023-6368Shared CWE-306
CVE-2026-46781Shared CWE-306
CVE-2026-58319Shared CWE-306
CVE-2023-53964Shared CWE-306
CVE-2023-35830Shared CWE-306
CVE-2025-13778Shared CWE-306
CVE-2025-0275Shared CWE-306
CVE-2025-62582Shared CWE-306
CVE-2023-38123Shared CWE-306
CVE-2026-63098Shared CWE-306

Affected Assets

milvus
milvus
≤ 2.5.27 · 2.6.0 — 2.6.10

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 6 hardening rules · 3 OS baselines
Validate
Prove the fix (OWASP ASVS)
  • V6.2.3
  • V6.4.4
  • V10.4.16
  • V12.1.3

Mitigating Controls (NIST 800-53 r5) AI

Directly mandates unique identification and authentication of users before access to functions requiring identity.

Extends the same authentication requirement to non-organizational users accessing critical functionality.

Requires authentication of services before they can invoke or expose critical functions.

Explicitly identifies and limits actions permitted without authentication, preventing critical functions from being exposed.

Access enforcement requires prior authentication before any authorization decision for critical functions.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-03 full match
prevents

Directly requires authentication of users/services/hardware, which eliminates missing authentication for critical functions.

PR.AA-01 partial match
prevents

Managing identities and credentials is a prerequisite for authentication but does not itself enforce it on critical functions.

PR.AA-05 partial match
prevents

Defining and enforcing authorizations assumes prior authentication and therefore only partially mitigates the absence of authentication.

PR.IR-01 partial match
prevents

Protecting networks from unauthorized access can be undermined by missing authentication but does not address the root authentication gap.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

prevents

The control explicitly calls for authentication before any critical function is reached, eliminating the possibility of bypassing authentication for high-value operations.

prevents

Mandating authentication requirements for critical functions at the requirements-gathering stage ensures that essential operations are not left unprotected by missing login or verification mechanisms.

mitigates

Mandating authentication for network services and critical functions stops attackers from invoking sensitive operations without credentials, closing gaps where authentication is absent for important capabilities.

prevents

Security engineering principles insist on authentication and authorization for every critical function, eliminating entry points that lack any access control mechanism.

none

Requiring strong authentication and access-privilege enablement for remote connections ensures that critical functions cannot be invoked without proper verification, closing a gap that would otherwise allow unauthenticated use.

none

Mandatory use of access cards, biometrics, or two-factor authentication ensures that critical physical areas cannot be entered without proper authentication.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (2 rules)
  • V-248585 OL 8 must require reauthentication when using the "sudo" command. prevents CWE-306
  • V-248827 OL 8 must not have the rsh-server package installed. prevents CWE-306
RHEL 7 (2 rules)
  • V-204442 The Red Hat Enterprise Linux operating system must not have the rsh-server package installed. prevents CWE-306
  • V-237635 The Red Hat Enterprise Linux operating system must require re-authentication when using the "sudo" command. prevents CWE-306
RHEL 8 (2 rules)
  • V-230492 RHEL 8 must not have the rsh-server package installed. prevents CWE-306
  • V-237643 RHEL 8 must require re-authentication when using the "sudo" command. prevents CWE-306

References