Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-15911-Confluent_Kafka — Verificación de certificado TLS deshabilitada para HashiCorp Vault KMS en confluent-kafka | Kitploit
Herramientas/GitHubGitHub/rahulreddykarne/cve-2026-15911-confluent_kafka
Herramientas DefensivasAnálisis de VulnerabilidadesVirtualización de SeguridadCriptografíaSeguridad en la NubePapers e InvestigaciónAprendizaje y Educación
GitHub

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
rahulreddykarne/cve-2026-15911-confluent_kafka

CVE-2026-15911-Confluent_Kafka

Verificación de certificado TLS deshabilitada para HashiCorp Vault KMS en confluent-kafka

Ver Repositorio
hace 1 díaAún no revisado
Compartir

CVE-2026-15911: Verificación de certificados TLS deshabilitada para HashiCorp Vault KMS en confluent-kafka

Severidad: Alta, CVSS 3.1 7.4

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

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

Corregido en: 2.15.0

CWE: CWE-295 (Validación de certificados incorrecta)

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

Reportado por: Rahul Karne

CNA: VulnCheck


Resumen

El cliente de HashiCorp Vault KMS en confluent-kafka codifica de forma rígida verify=False al construir su hvac.Client, deshabilitando la verificación de certificados TLS para las conexiones HTTPS a Vault realizadas a través de las reglas de cifrado de campos del Schema Registry.

El código vulnerable se encuentra en:

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

El cliente afectado se inicializa de la siguiente manera:

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

Debido a que verify=False es incondicional, el cliente acepta certificados TLS no confiables, incluidos certificados autofirmados o controlados por un atacante.

Un atacante con posición de red capaz de interceptar o redirigir el tráfico de Vault de la aplicación puede suplantar el servidor de Vault, capturar credenciales de autenticación de Vault y devolver respuestas falsificadas de Vault/KMS.

La integración HCVault afectada expone configuración para tokens de Vault, namespaces y credenciales de AppRole, pero las versiones afectadas no proporcionan ninguna configuración compatible de CA-bundle ni un mecanismo equivalente para restaurar la verificación de certificados.


Impacto

Un atacante con una posición de man-in-the-middle de red entre la aplicación y HashiCorp Vault puede:

  1. Presentar un certificado TLS controlado por el atacante o autofirmado.
  2. Conseguir que ese certificado sea aceptado porque la verificación está deshabilitada.
  3. Capturar material de autenticación de Vault, incluidos:
    • X-Vault-Token
    • AppRole role_id
    • AppRole secret_id
  4. Inyectar respuestas falsificadas de Vault.
  5. Interferir con las operaciones de key-wrapping o key-unwrapping de KMS utilizadas por las reglas de cifrado del Schema Registry.

Esto puede comprometer la confidencialidad e integridad de los datos protegidos por el flujo de trabajo de KMS respaldado por Vault.


Alcance

confluent-kafka es el cliente oficial de Confluent para Python para Apache Kafka.

La vulnerabilidad afecta específicamente a despliegues que utilizan:

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

Por lo tanto, la población afectada es más reducida que todos los usuarios de confluent-kafka.

Sin embargo, la funcionalidad afectada es sensible a la seguridad porque estos despliegues dependen de HashiCorp Vault para la gestión de claves criptográficas y el cifrado a nivel de campo.


Detalle técnico

HcVaultKmsClient.__init__() analiza una URI de clave hcvault://, determina la URL base de Vault y crea un hvac.Client.

En las versiones afectadas, incluida 2.14.2, el código relevante es:

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
    )

La librería hvac finalmente depende del stack TLS de requests de Python.

Establecer:

verify=False

indica al cliente que no valide el certificado TLS del servidor remoto.

Como resultado, los certificados que normalmente serían rechazados pueden ser aceptados, incluidos certificados que son:

  • Autofirmados
  • Expirados
  • Emitidos para el nombre de host incorrecto
  • Firmados por una autoridad no confiable
  • Generados por un atacante

Esto afecta a ambas rutas de autenticación compatibles.

Autenticación por token

Cuando se utiliza autenticación por token, el token de Vault se envía a través del encabezado HTTP:

X-Vault-Token

Si un atacante logra suplantar el endpoint de Vault, el servidor controlado por el atacante puede recibir este token.

Autenticación AppRole

Cuando se utiliza autenticación AppRole, el cliente envía:

role_id
secret_id

a:

/v1/auth/approle/login

Por lo tanto, un MITM exitoso puede capturar ambas credenciales de AppRole.


Configuración TLS ausente

El controlador HCVault afectado lee configuración que incluye:

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

así como las variables de entorno VAULT_* relevantes.

Sin embargo, las versiones afectadas no exponen configuración que permita a los operadores:

  • Proporcionar un CA bundle personalizado.
  • Restaurar la verificación del certificado del servidor.
  • Configurar raíces de PKI privadas de confianza.
  • Configurar un comportamiento equivalente de verificación TLS segura.

Como resultado, las aplicaciones que utilizan la integración afectada no pueden restaurar la verificación TLS a través de la configuración normal del paquete.


Causa raíz

El paquete deshabilita explícitamente la verificación del certificado del servidor TLS en lugar de confiar en el valor predeterminado seguro.

La construcción vulnerable es efectivamente:

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

en lugar de:

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

o simplemente:

hvac.Client(...)

donde la verificación está habilitada de forma predeterminada.

Deshabilitar la verificación de certificados elimina la autenticación del servidor de la conexión TLS.

Aunque la conexión permanece cifrada, el cliente no tiene un mecanismo confiable para determinar si se está comunicando con el servidor de Vault legítimo.

Esto crea la condición necesaria para un ataque de man-in-the-middle de red.


Precondiciones de explotación

La explotación exitosa requiere:

  1. La aplicación utiliza una versión afectada de confluent-kafka:

    • 2.8.0 hasta 2.14.2.
  2. La aplicación utiliza reglas de cifrado del Schema Registry con la integración HCVault KMS.

  3. La clave KMS configurada utiliza el esquema:

hcvault://
  1. El atacante obtiene una posición de red capaz de interceptar, redirigir o suplantar el tráfico entre la aplicación y Vault.

Ejemplos posibles incluyen:

  • DNS spoofing
  • ARP spoofing
  • Infraestructura de red comprometida
  • Infraestructura Wi-Fi o de router fraudulenta
  • Manipulación de rutas/BGP
  • Proxy de salida malicioso
  • Segmento de red comprometido

No se requieren privilegios a nivel de aplicación ni interacción de la víctima una vez que existe la posición MITM necesaria.


Prueba de concepto

poc_confluent_kafka.py demuestra el problema contra un wheel de confluent-kafka 2.14.2 desempaquetado localmente.

La PoC utiliza:

  • Un servidor HTTPS autofirmado local que simula HashiCorp Vault.
  • Credenciales de Vault ficticias.
  • La implementación real vulnerable de HcVaultKmsClient.
  • Sin infraestructura real de Kafka.
  • Sin infraestructura real de Vault.
  • Sin credenciales de producción.

La prueba de concepto contiene cinco modos.

Descargar herramienta