LiveActive security incident?Get immediate response
CVE Record

CVE-2026-55640: Nextcloud MCP Server: Unauthenticated `POST /webhooks/nextcloud` allows arbitrary vector data deletion when `WEBHOOK_SECRET` is unset ( default )

Nextcloud MCP Server is a production-ready MCP server that connects AI assistants to a Nextcloud instance. Prior to 0.117.2, the POST /webhooks/nextcloud endpoint in nextcloud_mcp_server/vector/webhook_receiver.py has no authentication by default because WEBHOOK_SECRET defaults to None and startup validation does not require it. When WEBHOOK_SECRET is unset, handle_nextcloud_webhook() accepts unauthenticated requests. The payload["user"]["uid"] field parsed in nextcloud_mcp_server/vector/webhook_parser.py is attacker-controlled and is used without an authenticated-session cross-check for Qdrant operations, allowing a network attacker to delete or trigger re-indexing of vector embeddings for any user and to destroy the semantic search index by sending forged deletion events. This issue is fixed in version 0.117.2.

CriticalCVSS 9.1Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

A default configuration flaw lets an unauthenticated network attacker forge Nextcloud webhook events. This can delete or force re-indexing of any user’s vector embeddings, potentially destroying the semantic search index. It does not expose source data confidentiality according to the supplied CVSS assessment, but it creates serious integrity and availability risk.

Executive priority

Treat exposed affected deployments as an immediate remediation priority because unauthenticated attackers could disrupt semantic search and corrupt shared vector indexes. Upgrade promptly, limit endpoint exposure, and investigate unexplained index changes. Business owners should plan for index restoration if integrity cannot be established.

Technical view

Before version 0.117.2, POST /webhooks/nextcloud accepts requests when WEBHOOK_SECRET is unset, its default state. An attacker-controlled user.uid is passed to Qdrant operations without an authenticated-session check, enabling unauthorized deletion or re-indexing across users. The issue is classified as CWE-306 and scored CVSS 3.1 9.1.

Likely exposure

Exposure is likely where nextcloud-mcp-server earlier than 0.117.2 runs with WEBHOOK_SECRET unset and the webhook endpoint is network-accessible to untrusted clients. Deployments using 0.117.2 or later are outside the stated affected range. The supplied evidence does not quantify internet exposure.

Exploitation context

The attack requires network access but no privileges or user interaction and has low stated complexity. The supplied record does not establish active exploitation, and the CVE is not marked as included in KEV. No exploit code or observed campaign is identified in the source bundle.

Researcher notes

The trust-boundary failure combines optional webhook authentication with reliance on attacker-supplied user.uid for Qdrant actions. Scope is unchanged, with high integrity and availability impact and no stated confidentiality impact. Evidence supports the vulnerable behavior and fixed version, but provides no proof of exploitation prevalence or affected deployment counts.

Mitigation direction

  • Upgrade nextcloud-mcp-server to version 0.117.2 or later.
  • Confirm WEBHOOK_SECRET is explicitly configured and protected as a secret.
  • Restrict untrusted network access to the webhook endpoint until upgrading.
  • Review vendor guidance and the security advisory for deployment-specific instructions.
  • Assess whether affected vector indexes require restoration or trusted re-indexing.

Validation and detection

  • Inventory deployed nextcloud-mcp-server versions and identify instances earlier than 0.117.2.
  • Verify WEBHOOK_SECRET is set without exposing its value.
  • Determine whether POST /webhooks/nextcloud is reachable from untrusted networks.
  • Review webhook and Qdrant records for unexplained deletion or re-indexing events.
  • Confirm vector-index availability and integrity after remediation.
Prepared
Confidence
high
Sources
5

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-306: 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-2026-55640 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
Critical
CVSS
9.1 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/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
3Timeline events
1ADP providers
4Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: partial

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
9.1CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H3.95.2GitHub_M

Vulnerability scoring details

Base CVSS 3.1 score

9.1Critical
CVSS 3.1 vector shape for CVE-2026-55640Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/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

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
cbcoutinhonextcloud-mcp-server< 0.117.2Listed
Weakness

CWE details

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

CWE-306 · source CWE mapping

Missing Authentication for Critical Functionality

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