This page looks best with JavaScript enabled

Automatiza las tareas de Reconocimiento Web con ReconFTW

 ·   ·   4 min read  ·  Autor - Snifer

La herramienta que veremos en esta entrada corresponde a ReconFTW, que realiza el proceso de enumeración de manera automatizada.

Para utilizarlo tenemos dos opciones ya sea tenerlo instalado en nuestro entorno o directamente en un buen Docker.

Desde que comencé a utilizarlo, prefiero hacer uso de la versión de Docker.

1
2
3
4
docker pull six2dez/reconftw:main
wget https://raw.githubusercontent.com/six2dez/reconftw/main/reconftw.cfg
mkdir Recon
docker run -d -v $PWD/reconftw.cfg:/root/Tools/reconftw/reconftw.cfg -v $PWD/Recon/:/root/Tools/reconftw/Recon/ --name reconftwSCAN --rm six2dez/reconftw:main -d target.com -r

Características de ReconFTW

A continuación trataré de describir lo que hace ReconFTW en todo el Flujo que realiza además de contar con el Mindmap respectivo creado por Six2dez.

OSINT

En esta etapa inicia un proceso de OSINT es decir busca toda la información expuesta de manera pública,identificando el nombre del registro de un dominio, y a partir de ello una búsqueda inversa de todos los dominios asociados al registro, consulta a Github y Google por medio de dorks para obtener información relacionada al dominio.

Procede con un scraping de correos electrónicos, credenciales expuestas de los correos identificados metadatos de información de documentos con el fin de realizar e identificar estos para una etapa posterior por ejemplo la elaboración por nuestra parte de diccionarios personalizados.

SUBDOMINIOS

Realiza de manera Pasiva el reconocimiento de subdominios es decir consulta sitios para obtener esta información, verifica lo que es conocido como transparencias de certificados para obtener subdominio, procede con ataques de fuerza bruta y permutaciones con los nombres identificados realizando modificaciones, consulta el registro de DNS, realiza una búsqueda en ficheros JS o el mismo contenido del sitio, procede con un análisis de relación de Google Analitics.

Posteriormente a ello procede a verificar si algún dominio de los identificados es un servicio CLOUD para evitar realizar ataques de enumeración y no ser baneados.

IP./HOSTS

Realiza una correlación de direcciones IP con los dominios, verificando si esta o no con WAF, para realizar un escaneo de puertos ya sea PASIVO o ACTIVO segun los datos obtenidos previamente.

WEBS

Para esta etapa de Web procede con una identificación de puertos no comunes de los dominios o subdominios, realiza una captura de pantalla de los servicios Web expuestos, verifica la presencia de WAF, fuzzing de directorios con ffuf, verifica cuál es el CMS que se encuentra utilizando en los dominios, procede con la validacion de CORS y la configuración del certificado SSL.

URLS

Para esta etapa lo que realiza es una extracción activa y pasiva de direcciones URL, revisa los ficheros JS y posteriormente realiza ataques automatizados con el fin de detectar algunas vulnerabilidades que sean identificadas.

Notificaciones

Cuenta con los siguientes servicios para realizar el envío de notificaciones.

  • Telegram
  • Slack
  • Discord

Nunca llegue a usar esta funcionalidad, ya que solo ejecuto por Bash un comando que cuando termine de realizar la tarea me avise que termino.

Veremos a continuacion un ejemplo de uso de la herramienta.

Integraciones

Cuenta con integración de bbrf para almacenar en una base de datos y además de contar con axiom para trabajo distribuido.

Configuracion del fichero reconftw.cfg

Recuerda que debes de configurar el fichero reconftw.cfg a continuación detallo un ejemplo de la configuración.

En todo el fichero recoftw.cfg tenemos detallado de una manera muy amigable para realizar la configuracion de la herramienta por ejemplo en OSINT contamos con las funcionalidades que realizara y solo debemos de cambiar de true a false.

1
2
3
4
5
6
7
8
9
# Osint
OSINT=true
GOOGLE_DORKS=true
GITHUB_DORKS=true
METADATA=true
EMAILS=true
DOMAIN_INFO=true
IP_INFO=true
METAFINDER_LIMIT=20 # Max 250

Lo mismo tenemos respecto a la identificacion de subdominios.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# Subdomains
SUBDOMAINS_GENERAL=true
SUBPASSIVE=true
SUBCRT=true
SUBANALYTICS=true
SUBBRUTE=true
SUBSCRAPING=true
SUBPERMUTE=true
SUBTAKEOVER=true
SUBRECURSIVE=true 
SUB_RECURSIVE_PASSIVE=false # Uses a lot of API keys queries
SUB_RECURSIVE_BRUTE=false # Needs big disk space and time to resolve
ZONETRANSFER=true

Para la integración con bbrf podemos configurar los credenciales y el servidor donde se almacenara la información.

1
2
3
4
5
# BBRF
BBRF_CONNECTION=false
BBRF_SERVER=https://demo.bbrf.me/bbrf
BBRF_USERNAME="user"
BBRF_PASSWORD="password"

Ya comprometiéndome de forma pública, estoy trabajando en un script que procede a realizar la automatización y generación de reporte de todo el output que tenemos de ReconFTW.

Espero haber realizado una descripción completa de la herramienta y que no me llame la atención six2dez, si me equivoque en algún punto específico.

Regards,
Snifer

Share on
Support the author with

Avatar
WRITTEN BY
Snifer
Creador del proyecto Snifer@L4b's, Consultor en Seguridad Informática.