Inventario definitivo de herramientas para un agente de pentest autónomo.
kali\_execactúa como **fallback universal** cuando ninguna herramienta específica cubre el caso.
---
| # | Categoría | Herramientas |
|---|---|---|
| 1 | Reconocimiento | 8 |
| 2 | Escaneo Web | 7 |
| 3 | Explotación | 7 |
| 4 | Post-Explotación | 7 |
| 5 | Ingeniería Inversa | 7 |
| 6 | Análisis de Red | 6 |
| 7 | Gestión de Credenciales | 5 |
| 8 | Inteligencia de Datos | 5 |
| 9 | Gestión de Entorno Kali | 8 |
| 10 | Scripts y Automatización | 5 |
| 11 | Gestión de Archivos | 6 |
| 12 | Reporting y Evidencia | 6 |
| 13 | Sesión y Control (HITL) | 6 |
| 14 | Infraestructura Dinámica | 6 |
| 15 | Fallback | 1 |
| TOTAL | 90 |
---
Descubrimiento pasivo y activo de red, activos y superficie de ataque.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
ping\_sweep |
Detecta hosts activos en un rango CIDR | fping / nmap -sn |
port\_scan |
Escaneo de puertos TCP/UDP con detección de versión y OS | nmap |
subdomain\_enum |
Enumeración de subdominios por fuerza bruta y DNS pasivo | amass, subfinder |
dns\_lookup |
Resolución de registros A, MX, TXT, CNAME, NS | dig, dnspython |
whois\_query |
Información de registro de dominio e IPs | whois |
asn\_lookup |
Resolución de ASN → bloques de red del objetivo | bgpview API |
tech\_fingerprint |
Identificar tecnologías, frameworks y versiones de un web target | whatweb, wappalyzer-cli |
cloud\_asset\_enum |
Detectar buckets S3, blobs Azure, Cloud Functions expuestos por nombre | cloud_enum |
---
Identificación de vulnerabilidades en aplicaciones y APIs web.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
nikto\_scan |
Escaneo de vulnerabilidades web clásico | nikto |
vuln\_scan |
Escaneo de CVEs con templates actualizados | nuclei |
directory\_bruteforce |
Descubrimiento de rutas y archivos ocultos | feroxbuster, gobuster |
http\_crawl |
Crawling de la aplicación para mapear endpoints y parámetros | katana, gospider |
api\_fuzz |
Fuzzing de endpoints REST/GraphQL con payloads de mutación | ffuf, wfuzz |
ssl\_audit |
Análisis de configuración TLS: ciphers, cadena de cert, HSTS | testssl.sh |
cors\_check |
Detección de misconfiguraciones CORS en APIs | corscanner |
---
Ejecución de ataques sobre vulnerabilidades confirmadas.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
sqlmap\_scan |
Detección y explotación automatizada de SQLi | sqlmap |
searchsploit |
Búsqueda de exploits públicos para un servicio/versión | exploitdb |
xss\_exploit |
Explotación de XSS reflejado/almacenado con payload library | dalfox |
cms\_exploit |
Ataques dirigidos a WordPress, Joomla, Drupal | wpscan, droopescan |
brute\_force |
Fuerza bruta de credenciales sobre SSH, FTP, HTTP, SMB | hydra, medusa |
payload\_generator |
Genera payloads a medida según OS y arquitectura detectados | msfvenom |
msf\_run |
Lanza módulos de Metasploit (exploit / auxiliary) con parámetros | msfconsole -x / msfrpc |
---
Acciones posteriores al compromiso inicial para maximizar el valor del hallazgo.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
privesc\_check |
Sugerencias de escalada de privilegios locales | linpeas, winpeas, les |
lateral\_move\_map |
Enumera rutas de movimiento lateral desde el acceso actual | bloodhound-python, crackmapexec |
loot\_collector |
Recopila archivos de interés (configs, hashes, claves) en /evidence/loot/ |
find + grep wrappers |
hash\_crack |
Intento de crackeo de hashes capturados (MD5, NTLM, bcrypt) | hashcat, john |
persistence\_check |
Documenta mecanismos de persistencia sin activarlos (para el reporte) | manual enum scripts |
tunnel\_establish |
Levanta reverse shell o tunnel hacia el C2 del lab | socat, pwncat-cs |
cleanup\_verify |
Confirma que todos los artefactos del test fueron eliminados | diff + file list audit |
---
Análisis estático y dinámico de binarios y aplicaciones.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
list\_re\_functions |
Lista funciones de un binario (importadas, exportadas, locales) | Ghidra headless / radare2 |
decompile\_re\_function |
Decompila una función específica a pseudocódigo C | Ghidra headless |
analyze\_re\_function |
Analiza el CFG y strings de una función | radare2 / Binary Ninja |
rename\_re\_symbol |
Renombra funciones/variables para mejorar legibilidad del análisis | Ghidra API |
string\_extract |
Extrae strings de un binario con contexto de offset | strings, binwalk |
dynamic\_trace |
Tracing de llamadas en runtime (syscalls, funciones) | frida, strace |
patch\_binary |
Aplica patches en bytes específicos de un binario para bypass | radare2 -w, pwntools |
---
Captura, disección y análisis de tráfico de red.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
packet\_capture |
Captura de tráfico en interfaz/contenedor durante N segundos | tshark |
pcap\_analysis |
Analiza un .pcap existente: protocolos, IPs, streams | tshark, scapy |
flow\_analysis |
Agrega el tráfico en flows con estadísticas de volumen | zeek, nfdump |
protocol\_decode |
Decodifica protocolos específicos de un pcap (TLS, HTTP2, DNS) | tshark -d |
traffic\_replay |
Reproduce un .pcap contra un target para reproducir condiciones | tcpreplay |
mitm\_intercept |
Intercepción activa HTTP/S en la red del lab | mitmproxy |
---
Manejo seguro de credenciales capturadas durante la sesión.
| Herramienta | Descripción |
|---|---|
credential\_store |
Vault temporal de sesión: guarda usuario/hash/token/cookie con metadatos de origen |
credential\_list |
Lista todas las credenciales almacenadas en la sesión actual |
credential\_test |
Prueba una credencial almacenada contra un servicio concreto |
credential\_export |
Exporta el vault de credenciales al directorio de evidencia |
credential\_clear |
Borra el vault al finalizar la sesión |
---
Procesamiento y enriquecimiento de datos generados por el agente.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
wordlist\_optimizer |
Genera wordlists personalizadas basadas en el target + filtros por patrón | cewl + procesado propio |
finding\_deduplicator |
Consolida y normaliza hallazgos de múltiples scanners a un schema común | difflib + reglas |
cvss\_calculator |
Calcula el score CVSS 3.1 de un finding dado sus vectores | cvss3 library |
osint\_enrich |
Enriquece una IP/dominio con datos de Shodan, VirusTotal, Censys | API wrappers |
diff\_results |
Compara dos outputs de una misma herramienta en distintos momentos | diff estructurado |
---
Control total del entorno de ejecución del agente.
| Herramienta | Descripción |
|---|---|
kali\_env\_check |
Reporta IP, interfaces, rutas, servicios activos, tools disponibles y versiones |
kali\_apt\_install |
Instala paquetes desde los repositorios de Kali/Debian |
kali\_pip\_install |
Instala librerías Python con gestión de entorno virtual si es necesario |
kali\_logs |
Muestra stdout/stderr del contenedor persistente (últimas N líneas o full) |
kali\_process\_list |
Lista procesos activos en el contenedor (útil para detectar scans colgados) |
kali\_process\_kill |
Mata un proceso por PID o nombre (termina tools que se quedan colgadas) |
kali\_reset |
Reinicia el entorno a imagen base limpia, preservando /evidence/ |
kali\_service\_manager |
Arranca/para/consulta servicios internos (postgresql para msf, apache, etc.) |
---
Capacidad del agente para escribir, ejecutar e iterar sus propios scripts.
| Herramienta | Descripción |
|---|---|
script\_create |
Crea un script (.py, .sh, .rb) en el entorno Kali con permisos de ejecución |
script\_execute |
Ejecuta un script con captura de stdout/stderr y timeout configurable |
script\_list |
Lista los scripts creados por el agente en la sesión actual |
script\_edit |
Modifica líneas específicas de un script existente sin reescribirlo completo |
script\_delete |
Elimina scripts temporales al finalizar la sesión |
---
Organización completa del sistema de archivos del entorno.
| Herramienta | Descripción |
|---|---|
list\_files |
Lista archivos y directorios con metadata (tamaño, fecha, permisos) |
read\_file |
Lee el contenido de un archivo (texto o hex para binarios) |
write\_file |
Escribe contenido en un archivo nuevo o existente |
file\_move |
Mueve o renombra archivos/directorios |
file\_copy |
Copia archivos (ej: output de tool → /evidence/) |
file\_archive |
Comprime carpetas en .tar.gz o .zip para descarga o exfiltración |
---
Generación de evidencia y reportes estructurados del engagement.
| Herramienta | Descripción |
|---|---|
screenshot\_capture |
Captura screenshot de una URL o ventana activa como evidencia visual |
finding\_create |
Registra un hallazgo con título, severidad, descripción, evidencia y pasos de reproducción |
finding\_update |
Edita un finding existente (añadir evidencia, corregir descripción) |
finding\_list |
Lista todos los findings de la sesión con filtro por severidad/categoría |
cvss\_attach |
Asocia un vector CVSS calculado a un finding concreto |
report\_compile |
Ensambla todos los findings + evidencia en un reporte Markdown/HTML final |
---
Persistencia de estado, trazabilidad y puntos de control humano.
| Herramienta | Descripción |
|---|---|
plan\_init |
Inicializa una sesión de pentest con objetivo, scope y metadata |
plan\_update |
Actualiza el estado del plan (fase actual, notas de progreso) |
plan\_generate\_md |
El agente escribe su propio plan detallado en Markdown para la misión |
markdown\_patch |
Edita secciones específicas de un .md sin reescribir el archivo completo |
approval\_request |
Solicita aprobación humana para la siguiente acción (punto HITL explícito) |
approval\_list |
Lista las aprobaciones pendientes y su estado |
---
Gestión avanzada de contenedores, redes y topología del lab.
| Herramienta | Descripción | Backend sugerido |
|---|---|---|
list\_active\_containers |
Lista contenedores Docker activos con sus IPs y puertos expuestos | docker ps |
container\_spawn |
Lanza un contenedor especializado bajo demanda (Ubuntu, Windows, etc.) | docker run |
container\_stop |
Detiene y elimina un contenedor creado por el agente | docker stop/rm |
snapshot\_manager |
Guarda/restaura el estado del filesystem antes de acciones destructivas | docker commit / export |
port\_forward\_manager |
Mapea puertos del contenedor Kali al host dinámicamente | socat / docker -p |
kali\_proxy\_jump |
Configura túneles SSH o SOCKS5 para saltar entre redes internas | chisel, ssh -D |
---
Ejecutado **solo** cuando ninguna herramienta específica cubre el caso de uso.
| Herramienta | Descripción | Condición de uso |
|---|---|---|
kali\_exec |
Ejecuta un comando arbitrario en el entorno Kali con captura de output | Último recurso. El agente debe documentar por qué ninguna herramienta específica fue suficiente. |
**Nota de diseño:**
kali\_execno debe ser la herramienta de primera elección. Si el agente la invoca frecuentemente para la misma clase de tarea, eso señala que falta una herramienta dedicada en este plan.
---
Habilitan el loop básico: entender el entorno → actuar → registrar.
kali\_env\_check,plan\_init,plan\_updatelist\_files,read\_file,write\_filefinding\_create,approval\_requestkali\_exec(fallback desde el inicio)
El agente puede completar un engagement simple de forma autónoma.
- Reconocimiento completo:
ping\_sweep,port\_scan,subdomain\_enum,dns\_lookup,tech\_fingerprint - Escaneo web:
vuln\_scan,directory\_bruteforce,http\_crawl,nikto\_scan - Explotación básica:
sqlmap\_scan,searchsploit,brute\_force - Evidencia:
screenshot\_capture,finding\_list,report\_compile - Archivos:
file\_move,file\_copy,file\_archive
El agente gestiona su propio entorno y produce inteligencia de calidad.
- Scripts:
script\_create,script\_execute,script\_edit - Entorno:
kali\_apt\_install,kali\_pip\_install,kali\_logs,kali\_process\_kill - Post-explotación:
privesc\_check,loot\_collector,hash\_crack,cleanup\_verify - Credenciales:
credential\_store,credential\_test,credential\_export - Datos:
finding\_deduplicator,wordlist\_optimizer,cvss\_calculator,osint\_enrich - RE:
list\_re\_functions,decompile\_re\_function,string\_extract,dynamic\_trace
El agente diseña y modifica su propio entorno de ejecución.
- Red:
packet\_capture,pcap\_analysis,mitm\_intercept,traffic\_replay - Infraestructura:
container\_spawn,snapshot\_manager,port\_forward\_manager,kali\_proxy\_jump - RE avanzado:
patch\_binary,lateral\_move\_map - Reporting final:
plan\_generate\_md,markdown\_patch,cvss\_attach
---
report\_compile
└── finding\_list
└── finding\_create
├── cvss\_calculator
└── screenshot\_capture
payload\_generator
└── tech\_fingerprint → port\_scan
finding\_deduplicator
└── \[vuln\_scan, nikto\_scan, api\_fuzz] → schema normalizado
container\_spawn
└── list\_active\_containers
└── container\_stop / snapshot\_manager
script\_execute
└── script\_create
└── kali\_env\_check (para saber qué está disponible)
hash\_crack
└── loot\_collector
└── privesc\_check
---
- Definir el schema de findings normalizado (base para
finding\_deduplicatoryreport\_compile) - Implementar
kali\_env\_checkcomo primera herramienta de cualquier sesión nueva - Establecer la convención de directorios:
/evidence/loot/,/evidence/screenshots/,/missions/,/scripts/ - Investigar integración de
chiselparakali\_proxy\_jump - Evaluar
msfrpcvsmsfconsole -xparamsf\_run(latencia vs control) - Revisar si
dynamic\_tracecon Frida requiere contenedor privilegiado - Añadir
diff\_resultsal pipeline de re-escaneo automático post-explotación