Tutoriales

Un comando HTTP / 2 multiplataforma luego de la explotación

Kubesploit es un servidor de comando y control HTTP / 2 multiplataforma y un agente luego de la explotación, diseñado para entornos de contenedor escrito en Golang y basado en el plan Merlin de Russel Van Tuyl (@ Ne0nd0g).

Nuestra motivación

Al examinar Docker y Kubernetes, descubrimos que la mayoría de las herramientas disponibles en la hogaño apuntan al escaneo pasivo en pesquisa de vulnerabilidades en el clúster y carecen de una cobertura de vector de ataque más compleja.
Es posible que pueda detectar el problema, pero no puede aprovecharlo. Es importante ejecutar el exploit para afectar un ataque del mundo verdadero que determinará la resistor de las empresas en la red.
Cuando se lleva a lugar un exploit, se practica la diligencia de eventos cibernéticos de la empresa, lo que no ocurre con el escaneo en pesquisa de problemas de clúster.
Puede ayudar a la empresa a ilustrarse cómo manejar ataques reales, si el otro sistema de detección está funcionando como se esperaba y qué cambios deben realizarse.
Queríamos desarrollar una aparejo agresiva que cumpliera con estos requisitos.

Pero teníamos otra razón para desarrollar tal aparejo. Ya teníamos dos herramientas de código franco (KubiScan y kubeletctl) relacionadas con Kubernetes, y teníamos una idea para más. En lado de crear un plan para cada uno, pensamos que sería mejor crear una nueva aparejo que centralizara las nuevas herramientas, y fue entonces cuando se creó Kubesploit.

Estábamos buscando un sistema de código franco que hiciera el trabajo pesado para un sistema multiplataforma y descubrimos que Merlin, escrito por Russel Van Tuyl (@ Ne0nd0g), sería adecuado para nosotros.

Nuestro principal objetivo es contribuir a la conciencia de la seguridad de los entornos de contenedores y mejorar las atenuaciones implementadas en las distintas redes. Todo esto es capturado por un entorno que proporciona las herramientas adecuadas para que los equipos de PT y los equipos rojos trabajen durante sus actividades en estos entornos. Puede utilizar estas herramientas para evaluar las fortalezas de estos entornos y realizar los cambios necesarios para protegerlos.

Qué hay de nuevo

Como el C&C y la infraestructura del agente ya fueron creados por Merlin, integramos el intérprete de Go (“Yaegi”) para poder ejecutar código Golang desde el servidor al agente.
Esto nos permitió escribir nuestros módulos en Golang, ofrecer más flexibilidad para los módulos y cargar nuevos módulos de forma dinámica. Es un plan en curso y planeamos ampliar más módulos para Docker y Kubernetes en el futuro.

Los módulos disponibles actualmente son:

  • Rotura del contenedor oportuno al montaje
  • Rotura de contenedor con docker.sock
  • Brote de contenedor con el exploit CVE-2019-5736
  • Busque CVE conocidos para clústeres de Kubernetes
  • Escaneo de puertos con un enfoque en los servicios de Kubernetes
  • El servicio de Kubernetes escanea fuera del contenedor
  • Kubeletctl imprudente con las siguientes opciones:
    • Búsqueda de contenedores con RCE
    • Busque vainas y contenedores
    • Escanee en pesquisa de tokens de todos los contenedores disponibles
    • Ejecute el comando con múltiples opciones

Inicio rápido

Hemos creado un entorno singular de Kubernetes en Katacoda donde puede observar con Kubesploit.
Es una simulación completa con un conjunto completo de instrucciones automatizadas sobre cómo usar Kubesploit. Te animamos a que lo explores.

Para construir

Para crear este plan, ejecute el make Comando de la carpeta raíz.

Montaje rápido

Para ejecutar Quick Build para Linux, puede hacer lo posterior:

export PATH = $ PATH: / usr / restringido / go / bin
Vaya a -o agent cmd / merlinagent / main.go
Vaya a -o servidor cmd / merlinserver / main.go

Mitigaciones

Reglas de YARA

Hemos creado reglas YARA que se pueden usar para interceptar binarios de Kubesploit. Las reglas están escritas en el archivo. kubesploit.yara.

Registro de agente

Cada módulo Go cargado en el agente se registra en la computadora de la víctima.

Plástico MITRE

Hicimos un carta MITRE del ataque vectorial utilizado por Kubesploit.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba