☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Fleet logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 6.5 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N 🐛 CWE-266
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-93540

CVE-2026-93540 Vulnerability in Fleet
📅 PUBLISHED: 2026-09-28 00:00 UTC 🔄 UPDATED: 2026-09-30 00:05 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.17%
👁️
0.17% probability
4.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1078
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: United States License: Open Source
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: H Integrity High
A: N Availability None
6.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-93540 is a privilege-mismatch vulnerability (CWE-266) in SUSE Rancher Fleet, the GitOps continuous-delivery controller used to manage Kubernetes resources across clusters. When a bundle requests namespace metadata changes through the namespaceLabels and namespaceAnnotations options, the resulting namespace update is not subjected to the same authorization checks applied to the rest of the bundle's deployment. This allows a bundle to modify labels and annotations on a target namespace even when the identity it is pinned to lacks permission to modify that namespace.

The flaw affects Fleet 0.16 before 0.16.2, 0.15 before 0.15.7, 0.14 before 0.14.11, and 0.13 before 0.13.16, with potentially older versions also impacted. With a CVSS 3.1 base score of 6.5 (Medium), the primary risk is high integrity impact (I:H) against namespace metadata, requiring only low privileges (PR:L) and no user interaction (UI:N) over a network vector (AV:N). No public proof-of-concept, Nuclei template, or exploit code is currently available, and the CVE is not listed in CISA KEV.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

Fleet is a GitOps engine that reconciles declarative "bundles" (groupings of Kubernetes manifests) onto managed clusters. A Fleet bundle can express intent to manage the labels and annotations of a target namespace via two bundle options named in the advisory: namespaceLabels and namespaceAnnotations. The vulnerability is an authorization inconsistency: the code path that applies these namespace-level metadata updates does not enforce the same authorization decision that governs the rest of the bundle's deployment.

In effect, the deployment pipeline performs its authorization check against the identity (service account / "pinned" identity) associated with the bundle, but the namespace metadata mutation bypasses that same check. The result is a classic privilege mismatch — the acting identity is authorized for the bundle workload, yet is able to make changes to namespace objects for which it should be denied. This maps to CWE-266 (Incorrect Privilege Assignment / privilege mismatch between what a principal holds and what an operation requires).

The attack surface is the Fleet bundle reconciliation path. An actor who can create or influence a bundle — including the namespaceLabels and namespaceAnnotations options — can cause namespace metadata writes that exceed the privileges of the identity the bundle is pinned to. Because namespace labels and annotations frequently drive downstream behavior (network policies, pod security admission, scheduling, service mesh injection, policy engine selectors), unauthorized control over them can have security-relevant consequences beyond mere metadata drift. The advisory confirms the impact class (integrity of namespace metadata) while providing limited code-level detail; no specific function, controller, or API path is disclosed.

CVSS 3.1 interpretation: AV:N (reachable over the network), AC:L (no special conditions), PR:L (attacker needs some privileges — a bundle-authoring or equivalent position), UI:N (no victim interaction), S:U (impact confined to the same security authority), C:N (no confidentiality loss), I:H (high integrity impact — arbitrary namespace metadata modification within authorization boundaries it should not cross), A:N (no availability loss).

Exploitation Scenarios

No public PoC is available; the attack chain below is inferred from the vulnerability class (privilege/authorization mismatch in a GitOps controller) and the advisory text. No specific function names, endpoints, or parameters are asserted beyond namespaceLabels and namespaceAnnotations, which appear verbatim in the advisory.

  1. Reconnaissance / target identification: The attacker identifies a Fleet-managed environment and determines which bundles it can author or modify. They assess the identity each bundle is pinned to and compare that identity's RBAC against the target namespace's write permissions, looking for a namespace the pinned identity cannot legitimately modify.

  2. Triggering the flaw class: The attacker crafts or edits a bundle to declare namespaceLabels and/or namespaceAnnotations targeting the chosen namespace. Because the namespace metadata update path is not covered by the same authorization check as the rest of the deployment, the update is applied despite the pinned identity lacking permission to modify that namespace.

  3. Execution at the vulnerability-class level: The bundle is reconciled by Fleet, and the namespace metadata mutation is committed. There is no memory-corruption or remote-code-execution primitive here; the "payload" is the label/annotation change itself, expressed declaratively in the bundle.

  4. Post-exploitation impact: The attacker achieves unauthorized modification of namespace labels and annotations. Where those labels/annotations are consumed by admission controllers, network policy selectors, scheduling constraints, or policy engines, this can enable secondary effects (e.g., altering which policies apply to a namespace) or degrade the integrity of cluster security posture. The advisory scopes impact to integrity of namespace metadata.

Impact Assessment

Business impact centers on integrity of cluster configuration. An actor with low privileges and the ability to place a bundle can bypass the intended authorization boundary for namespace metadata. Given that namespace labels/annotations are commonly used as selectors for security controls, unauthorized changes can weaken or misdirect those controls, producing downstream security and compliance consequences even without direct data exposure or service disruption.

Affected systems: clusters managed by SUSE Rancher Fleet running vulnerable versions (0.16 < 0.16.2, 0.15 < 0.15.7, 0.14 < 0.14.11, 0.13 < 0.13.16, and possibly older). Rancher environments that use Fleet for multi-cluster GitOps are the primary blast-radius population.

CVSS subscores: Confidentiality None (no read access gained), Integrity High (unauthorized namespace metadata writes), Availability None. Attack Vector Network, Complexity Low, Privileges Required Low, User Interaction None, Scope Unchanged. No CISA KEV listing and no known exploit code reduce immediate urgency, but the flaw is a genuine authorization-boundary defect in a widely used GitOps component. EPSS is not yet scored by FIRST.org; no EPSS value should be assumed.

Detection Guidance

Sigma Rule

title: Potential Fleet Namespace Metadata Authorization Bypass (CVE-2026-93540)
id: 3f9c2a71-9354-4b0e-8c11-fleet93540det
status: experimental
description: Detects Kubernetes namespace label/annotation updates originating from Fleet bundle reconciliation that may indicate abuse of the namespaceLabels/namespaceAnnotations authorization mismatch.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-93540
author: valtersit.com
date: 2026-01-01
logsource:
  product: kubernetes
  service: audit
detection:
  selection_verb:
    verb:
      - 'patch'
      - 'update'
  selection_resource:
    objectRef.resource: 'namespaces'
  selection_actor:
    user.username|contains:
      - 'fleet'
      - 'cattle-fleet'
  selection_options:
    requestObject.metadata.labels|contains:
      - 'fleet'
    requestObject.metadata.annotations|contains:
      - 'fleet'
  condition: selection_verb and selection_resource and selection_actor
fields:
  - user.username
  - objectRef.name
  - requestObject.metadata
falsepositives:
  - Legitimate Fleet-driven namespace management by authorized identities
level: medium
tags:
  - attack.t1078
  - attack.t1098
  - cve.2026.93540

YARA Rule

rule CVE_2026_93540_Fleet_Namespace_Metadata
{
    meta:
        description = "Detects Fleet bundle manifests requesting namespaceLabels or namespaceAnnotations options associated with CVE-2026-93540"
        author = "valtersit.com"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-93540"
        date = "2026-01-01"
        severity = "medium"

    strings:
        $opt1 = "namespaceLabels" ascii wide nocase
        $opt2 = "namespaceAnnotations" ascii wide nocase
        $fleet1 = "fleet.cattle.io" ascii wide nocase
        $fleet2 = "Bundle" ascii wide
        $kind = "kind:" ascii wide

    condition:
        ($opt1 or $opt2) and ($fleet1 or ($fleet2 and $kind))
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-93540 Fleet namespaceLabels/namespaceAnnotations authorization bypass attempt"; flow:established,to_server; http.method; content:"PUT"; http.uri; content:"namespaces"; http.request_body; content:"namespaceLabels"; http.request_body; content:"namespaceAnnotations"; classtype:attempted-admin; reference:cve,2026-93540; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-93540; sid:202693540; rev:1;)

Note: Fleet frequently reconciles through the Kubernetes API server rather than plain HTTP; this rule targets API-server traffic that carries the bundle options in cleartext or where a proxy terminates TLS. It is a best-effort network heuristic for the named options only.

Elastic Detection

sequence by user.username with maxspan=5m
  [process where event.dataset == "kubernetes.audit" and
     kubernetes.audit.verb in ("patch", "update") and
     kubernetes.audit.objectRef.resource == "namespaces"]
  [any where event.dataset == "kubernetes.audit" and
     kubernetes.audit.objectRef.resource == "namespaces" and
     kubernetes.audit.user.username : "fleet*"]

Analyst note: tune to cluster baselines; alert when the acting Fleet identity is not expected to manage the referenced namespace.

Splunk SPL Query

index=kubernetes sourcetype="kube:audit"
| search verb IN ("patch","update") objectRef.resource="namespaces"
| search user.username="*fleet*"
| eval metadata_fields = coalesce(requestObject.metadata.labels, requestObject.metadata.annotations, "")
| where match(metadata_fields, "(?i)fleet")
| table _time user.username objectRef.namespace objectRef.name verb responseStatus.code metadata_fields
| sort - _time

Wazuh OSSEC Rule

<group name="kubernetes,fleet,">
  <rule id="2026935" level="8">
    <decoded_as>json</decoded_as>
    <field name="verb">patch|update</field>
    <field name="objectRef.resource">namespaces</field>
    <field name="user.username">fleet</field>
    <description>CVE-2026-93540: Fleet identity modified namespace metadata (possible namespaceLabels/namespaceAnnotations authorization bypass).</description>
    <mitre>
      <id>T1078</id>
      <id>T1098</id>
    </mitre>
  </rule>
</group>

Note: requires Kubernetes audit log ingestion and JSON decoding; validate user.username matching against your Fleet service-account naming.

Mitigation & Patch Guidance

Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source). No vendor fix URL or atomic patch reference is currently available in tracked sources. The vendor-referenced fixed versions (Fleet 0.16.2, 0.15.7, 0.14.11, 0.13.16) are derived from the advisory's affected-version statement, not from a confirmed patch artifact.

  1. Immediate mitigations:
  • Restrict who can create or modify Fleet bundles; treat bundle authoring as a privileged operation and review RBAC for bundle writers.
  • Audit existing bundles for use of namespaceLabels and namespaceAnnotations and validate that each requesting identity is legitimately authorized for the target namespace.
  • Enforce Kubernetes admission policy (e.g., validating policy) to constrain namespace label/annotation changes to approved principals, compensating for the authorization gap.
  • Monitor Kubernetes audit logs for Fleet-originated namespace patch/update events, especially to namespaces the pinned identity should not manage.
  1. Patch / upgrade steps:
  • Upgrade to the fixed versions where available: Fleet 0.16.2 or later, 0.15.7 or later, 0.14.11 or later, or 0.13.16 or later, matched to your current minor line.
  • Validate upgrade integrity against the vendor advisory before deployment; since no confirmed patch source is tracked here, confirm the fixed release notes on the SUSE Rancher Fleet project before relying on them.
  • If an upgrade cannot be performed immediately, apply the compensating admission controls above until patched.
  1. Long-term hardening:
  • Adopt GitOps least privilege: pin bundles to identities scoped only to the namespaces and resources they legitimately manage.
  • Continuously reconcile the privileges of bundle-pinned identities against the resources those bundles can mutate, closing mismatches like this one proactively.
  • Integrate namespace metadata change detection into CI/CD policy gates and cluster policy engines.

References

No known threat actor campaigns or exploit-in-the-wild evidence were identified for CVE-2026-93540 at the time of writing. PoC status: None; Nuclei template: none; exploit code: none.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:"Fleet"
title:"Fleet"
product:"Fleet" "0.13.x"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-93540/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.