Skip to main content

Weaviate CVE-2026-59093

| EUVDEUVD-2026-41424 HIGH
Incorrect Privilege Assignment (CWE-266)
2026-07-02 VulnCheck GHSA-667j-56pf-pq9c
8.7
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/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
vuln.today AI
8.8 HIGH

Network API reachable with low complexity, but requires an authenticated account holding delegated assign/revoke permission (PR:L); resulting admin takeover yields full C/I/A impact within the same database authority (S:U).

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/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
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

2
Analysis Generated
Jul 02, 2026 - 20:32 vuln.today
CVSS changed
Jul 02, 2026 - 20:22 NVD
8.8 (HIGH) 8.7 (HIGH)

DescriptionCVE.org

Weaviate before 1.38.0 does not verify that a principal performing an RBAC role assignment holds the permissions granted by the assigned role. The assignRoleToUser and assignRoleToGroup handlers (POST /authz/users/{id}/assign and /authz/groups/{id}/assign) authorize only that the caller may assign roles to the target user or group, not the permissions contained in the assigned roles, unlike role creation which enforces that a user can only create roles with permissions less than or equal to its own. A user holding only the delegated assign_and_revoke_users or assign_and_revoke_groups permission can assign the built-in admin role, or any high-privilege custom role, to itself or others, escalating to full administrative control of the database.

AnalysisAI

Privilege escalation in Weaviate vector database versions before 1.38.0 allows a user holding only the delegated assign_and_revoke_users or assign_and_revoke_groups permission to grant the built-in admin role (or any high-privilege custom role) to itself or others, obtaining full administrative control of the database. The flaw stems from the role-assignment handlers checking only that the caller may assign roles to a target, but never verifying the caller actually holds the permissions being conferred - unlike role creation, which enforces permission subset checks. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Authenticate with delegated assign/revoke permission
Delivery
POST /authz/users/{id}/assign with admin role
Exploit
Handler skips permission-subset check
Execution
Admin role bound to attacker account
Impact
Full administrative control of database

Vulnerability AssessmentAI

Exploitation Exploitation requires an authenticated principal (CVSS PR:L) that already holds the delegated assign_and_revoke_users or assign_and_revoke_groups permission in Weaviate's RBAC, and requires that RBAC authorization be enabled on the instance. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H, base 8.7) accurately captures the risk: network-reachable, low complexity, no user interaction, but requiring low-level authenticated privileges (PR:L) - specifically an account that has already been granted the delegated assign/revoke capability. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario An operator or compromised service account that was intentionally granted only the delegated assign_and_revoke_users permission - meant to let it manage which users hold which existing roles - sends a POST /authz/users/{id}/assign request assigning the built-in admin role to its own user ID. Because the handler never checks whether the caller itself holds admin-level permissions, the assignment succeeds and the account is instantly promoted to full administrative control over the vector database and all its data. …
Remediation Vendor-released patch: upgrade to Weaviate v1.38.0 or later (https://github.com/weaviate/weaviate/releases/tag/v1.38.0), which adds the missing check so a principal can only assign roles whose permissions are a subset of its own; the corresponding fix is in PR 11493 and commit 2c75f6fb217631f7751c4b2a7d37a488cef13edb. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours: Identify all Weaviate deployments and document current versions; restrict network access to instances not yet upgraded. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-59093 vulnerability details – vuln.today

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