# Bug Bounty Tool: El Kraken

> El Kraken es una herramienta escrita íntegramente en bash que automatiza de punta a punta las fases de recon y explotación de CVEs conocidos en bug bounty. Es modular, reutiliza herramientas ya existentes de la comunidad (nuclei, subfinder, wayback, dirsearch) y usa el output de cada módulo como input del siguiente. El código está publicado en GitHub.

- Autor: Efraín Reyes (Rockysec)
- URL canónica: https://rockysec.com/bug-bounty-tool-el-kraken/
- Idioma: es
- Publicado: 2023-11-01
- Categorías: Bug Bounty, Penetration Testing
- Temas: El Kraken, automatización bug bounty, bash scripting, nuclei, subfinder, dirsearch, wayback, recon

---
## El problema: automatizar de punta a punta

Una de las claves del éxito en el bug bounty es lograr automatizar la mayor cantidad de procesos manuales que nos consumen tiempo. Esos procesos son básicamente dos: **el recon** y **la explotación de vulnerabilidades conocidas (CVE's)**.

En la comunidad podemos encontrar herramientas publicadas en GitHub o en blogs especializados que automatizan algunas fases de estos dos grandes procesos: subfinder, nuclei, amass, etc. Pero ninguna de ellas permite realizar el proceso de punta a punta, o al menos en un porcentaje alto.

## Las premisas de El Kraken

Al encontrarme con esta problemática decidí, hace varios meses, construir mi propia herramienta que fuese más completa. Las premisas eran tres:

- Que fuese **modular**, para poder actualizarla o agregarle nuevas funcionalidades de análisis con facilidad.
- Que me permitiera **reutilizar las herramientas ya existentes** en la comunidad.
- Que tomara los **outputs de los módulos iniciales como input** de los módulos siguientes.

Así, con ayuda de ChatGPT y mis conocimientos de bash scripting, logré crear una herramienta a la que llamé «El Kraken».

> [Imagen] Logo de El Kraken: un kraken estilizado sobre fondo oscuro

## Cómo funciona

El Kraken usa herramientas conocidas en la comunidad como **nuclei, subfinder, wayback y dirsearch**. Cada una cumple una fase clave del proceso automatizado, y los resultados que arroja cada una se usan como input de las siguientes, con el fin de automatizar el proceso de punta a punta en base a resultados esperados.

La herramienta está hecha totalmente en bash scripting, por lo cual aprovecha mucho el auxiliar `pipe |` para concatenar ejecuciones de sistema, `grep`, `awk` y `cat` para el manejo a gusto de los outputs obtenidos, y los IO streams para guardar en archivo de texto los resultados.

Esos resultados se pueden revisar manualmente o usarlos como parte de la ingesta de herramientas de visualización, por ejemplo Kibana. Sobre eso último escribí un post aparte: [integrar al bug bounty GitHub Actions + ELK](/integrar-al-bug-bounty-github-actions-elk/).

## El repositorio

Les dejo el [repositorio de GitHub](https://github.com/rockysec/ElKraken) de la herramienta para que la utilicen; ya incluye el README con el instructivo de instalación y de uso.

Espero que les ayude a reducir las revisiones manuales rutinarias en sus metodologías para bug bounty, o incluso que sirva como inspiración o base para crear sus propias herramientas automatizadas. Quedo abierto a críticas y mejoras, y si quieren colaborar con algún PR al repositorio con una mejora o nueva funcionalidad ya aplicada, será bienvenido.
