Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-15911-Confluent_Kafka — Deaktivierte TLS-Zertifikatsüberprüfung für HashiCorp Vault KMS in confluent-kafka | Kitploit
Tools/GitHubGitHub/rahulreddykarne/cve-2026-15911-confluent_kafka
DefensivwerkzeugeSchwachstellenanalyseSicherheitsvirtualisierungKryptographieCloud-SicherheitPapers & ForschungLernen & Bildung
GitHubrahulreddykarne/cve-2026-15911-confluent_kafka

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →

CVE-2026-15911-Confluent_Kafka

Deaktivierte TLS-Zertifikatsüberprüfung für HashiCorp Vault KMS in confluent-kafka

Repository anzeigen
vor 1 TagNoch nicht geprüft
Teilen

CVE-2026-15911: Deaktivierte TLS-Zertifikatsüberprüfung für HashiCorp Vault KMS in confluent-kafka

Schweregrad: Hoch, CVSS 3.1 7.4

Vektor (v3.1): CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

Betroffen: confluent-kafka >= 2.8.0, <= 2.14.2

Behoben in: 2.15.0

CWE: CWE-295 (Improper Certificate Validation)

Komponente: confluent_kafka/schema_registry/rules/encryption/hcvault/hcvault_client.py

Gemeldet von: Rahul Karne

CNA: VulnCheck


Zusammenfassung

Der HashiCorp Vault KMS-Client in confluent-kafka hardcodiert verify=False bei der Erstellung seines hvac.Client, wodurch die TLS-Zertifikatsüberprüfung für Vault-HTTPS-Verbindungen deaktiviert wird, die über die Schema-Registry-Feldverschlüsselungsregeln hergestellt werden.

Der verwundbare Code befindet sich in:

confluent_kafka/schema_registry/rules/encryption/hcvault/hcvault_client.py

Der betroffene Client wird wie folgt initialisiert:

self._client = hvac.Client(
    url=vault_url,
    token=token,
    namespace=ns,
    verify=False
)

Da verify=False bedingungslos gesetzt ist, akzeptiert der Client nicht vertrauenswürdige TLS-Zertifikate, einschließlich selbstsignierter oder von Angreifern kontrollierter Zertifikate.

Ein Angreifer mit einer Netzwerkposition, der in der Lage ist, den Vault-Datenverkehr der Anwendung abzufangen oder umzuleiten, kann sich als Vault-Server ausgeben, Vault-Authentifizierungsdaten erbeuten und gefälschte Vault/KMS-Antworten zurückgeben.

Die betroffene HCVault-Integration bietet Konfigurationsmöglichkeiten für Vault-Tokens, Namespaces und AppRole-Anmeldedaten, aber betroffene Versionen bieten keine unterstützte CA-Bundle-Konfiguration oder einen gleichwertigen Mechanismus zur Wiederherstellung der Zertifikatsüberprüfung.


Auswirkung

Ein Angreifer mit einer Man-in-the-Middle-Position im Netzwerk zwischen der Anwendung und HashiCorp Vault kann:

  1. Ein von Angreifern kontrolliertes oder selbstsigniertes TLS-Zertifikat präsentieren.
  2. Dieses Zertifikat akzeptiert bekommen, da die Überprüfung deaktiviert ist.
  3. Vault-Authentifizierungsmaterial erbeuten, einschließlich:
    • X-Vault-Token
    • AppRole role_id
    • AppRole secret_id
  4. Gefälschte Vault-Antworten einschleusen.
  5. KMS-Schlüsselverpackungs- oder Schlüsselentpackungsvorgänge beeinträchtigen, die von Schema-Registry-Verschlüsselungsregeln verwendet werden.

Dies kann die Vertraulichkeit und Integrität von Daten kompromittieren, die durch den Vault-gestützten KMS-Workflow geschützt sind.


Reichweite

confluent-kafka ist der offizielle Confluent Python-Client für Apache Kafka.

Die Schwachstelle betrifft speziell Bereitstellungen, die Folgendes verwenden:

Schema Registry encryption rules
        ↓
HCVault KMS integration
        ↓
hcvault:// key URI

Die betroffene Nutzergruppe ist daher kleiner als alle confluent-kafka-Benutzer.

Allerdings ist die betroffene Funktionalität sicherheitskritisch, da diese Bereitstellungen auf HashiCorp Vault für kryptografisches Schlüsselmanagement und Feldverschlüsselung angewiesen sind.


Technisches Detail

HcVaultKmsClient.__init__() parst eine hcvault://-Schlüssel-URI, bestimmt die Vault-Basis-URL und erstellt einen hvac.Client.

In betroffenen Versionen, einschließlich 2.14.2, lautet der relevante Code:

self._client = hvac.Client(
    url=vault_url,
    token=token,
    namespace=ns,
    verify=False
)

if role_id and secret_id and self._client is not None:
    self._client.auth.approle.login(
        role_id=role_id,
        secret_id=secret_id
    )

Die hvac-Bibliothek stützt sich letztendlich auf den Python-requests-TLS-Stack.

Die Einstellung:

verify=False

weist den Client an, das TLS-Zertifikat des Remote-Servers nicht zu validieren.

Infolgedessen können Zertifikate akzeptiert werden, die normalerweise abgelehnt würden, einschließlich Zertifikaten, die:

  • Selbstsigniert sind
  • Abgelaufen sind
  • Für den falschen Hostnamen ausgestellt wurden
  • Von einer nicht vertrauenswürdigen Zertifizierungsstelle signiert wurden
  • Von einem Angreifer generiert wurden

Dies betrifft beide unterstützten Authentifizierungspfade.

Token-Authentifizierung

Wenn Token-Authentifizierung verwendet wird, wird das Vault-Token über den:

X-Vault-Token

HTTP-Header gesendet.

Wenn ein Angreifer den Vault-Endpunkt erfolgreich imitiert, kann der vom Angreifer kontrollierte Server dieses Token empfangen.

AppRole-Authentifizierung

Wenn AppRole-Authentifizierung verwendet wird, sendet der Client:

role_id
secret_id

an:

/v1/auth/approle/login

Ein erfolgreicher MITM kann daher beide AppRole-Anmeldedaten erbeuten.


Fehlende TLS-Konfiguration

Der betroffene HCVault-Treiber liest Konfigurationen einschließlich:

token.id
namespace
approle.role.id
approle.secret.id

sowie relevante VAULT_*-Umgebungsvariablen.

Betroffene Versionen bieten jedoch keine Konfiguration, die es Betreibern ermöglicht:

  • Ein benutzerdefiniertes CA-Bundle bereitzustellen.
  • Die Server-Zertifikatsüberprüfung wiederherzustellen.
  • Vertrauenswürdige private PKI-Roots zu konfigurieren.
  • Ein gleichwertiges sicheres TLS-Überprüfungsverhalten zu konfigurieren.

Infolgedessen können Anwendungen, die die betroffene Integration verwenden, die TLS-Überprüfung nicht über die normale Paketkonfiguration wiederherstellen.


Grundursache

Das Paket deaktiviert explizit die TLS-Server-Zertifikatsüberprüfung, anstatt sich auf den sicheren Standard zu verlassen.

Die verwundbare Konstruktion ist effektiv:

hvac.Client(..., verify=False)

anstelle von:

hvac.Client(..., verify=True)

oder einfach:

hvac.Client(...)

wobei die Überprüfung standardmäßig aktiviert ist.

Das Deaktivieren der Zertifikatsüberprüfung entfernt die Server-Authentifizierung aus der TLS-Verbindung.

Obwohl die Verbindung verschlüsselt bleibt, hat der Client keinen zuverlässigen Mechanismus, um festzustellen, ob er mit dem legitimen Vault-Server kommuniziert.

Dies schafft die Voraussetzung für einen Man-in-the-Middle-Angriff im Netzwerk.


Ausnutzungsvoraussetzungen

Eine erfolgreiche Ausnutzung erfordert:

  1. Die Anwendung verwendet eine betroffene Version von confluent-kafka:

    • 2.8.0 bis 2.14.2.
  2. Die Anwendung verwendet Schema-Registry-Verschlüsselungsregeln mit der HCVault KMS-Integration.

  3. Der konfigurierte KMS-Schlüssel verwendet das:

hcvault://

Schema.

  1. Der Angreifer erlangt eine Netzwerkposition, die in der Lage ist, den Datenverkehr zwischen der Anwendung und Vault abzufangen, umzuleiten oder zu imitieren.

Mögliche Beispiele sind:

  • DNS-Spoofing
  • ARP-Spoofing
  • Kompromittierte Netzwerkinfrastruktur
  • Rogue-Wi-Fi- oder Router-Infrastruktur
  • Route/BGP-Manipulation
  • Bösartiger Egress-Proxy
  • Kompromittiertes Netzwerksegment

Sobald die erforderliche MITM-Position besteht, sind keine Anwendungsberechtigungen oder Opferinteraktion erforderlich.


Proof of Concept

poc_confluent_kafka.py demonstriert das Problem gegen ein lokal entpacktes confluent-kafka 2.14.2-Wheel.

Das PoC verwendet:

  • Einen lokalen selbstsignierten HTTPS-Server, der HashiCorp Vault simuliert.
  • Dummy-Vault-Anmeldedaten.
  • Die echte verwundbare HcVaultKmsClient-Implementierung.
  • Keine echte Kafka-Infrastruktur.
  • Keine echte Vault-Infrastruktur.
  • Keine Produktionsanmeldedaten.

Das Proof of Concept enthält fünf Modi.

Tool herunterladen