El rastreo web es vasto e intrincado, pero no es necesario que usted se embarque en este viaje solo. Hay una gran cantidad de herramientas de rastreo web disponibles para ayudarlo, cada una con sus propias fortalezas y especialidades. Estas herramientas automatizan el proceso de rastreo, haciéndolo más rápido y eficiente, permitiéndole concentrarse en analizar los datos extraídos.
Rastreadores web populares
Burp Suite Spider: Burp Suite, una plataforma de prueba de aplicaciones web ampliamente utilizada, incluye un potente rastreador activo llamado Spider. Spider se destaca en el mapeo de aplicaciones web, la identificación de contenido oculto y el descubrimiento de vulnerabilidades potenciales.
OWASP ZAP (Zed Attack Proxy): ZAP es un escáner de seguridad de aplicaciones web gratuito y de código abierto. Se puede utilizar en modo automatizado y manual e incluye un componente de araña para rastrear aplicaciones web e identificar posibles vulnerabilidades.
Scrapy (Python Framework): Scrapy es un framework de Python versátil y escalable para crear rastreadores web personalizados. Proporciona funciones completas para extraer datos estructurados de sitios web, manejar escenarios de rastreo complejos y automatizar el procesamiento de datos. Su flexibilidad lo hace ideal para tareas de reconocimiento personalizadas.
Apache Nutch (Scalable Crawler): Nutch es un rastreador web de código abierto altamente extensible y escalable escrito en Java. Está diseñado para manejar rastreos masivos en toda la web o centrarse en dominios específicos. Si bien requiere más experiencia técnica para instalarlo y configurarlo, su potencia y flexibilidad lo convierten en un activo valioso para proyectos de reconocimiento a gran escala.
Adherirse a prácticas de rastreo éticas y responsables es crucial sin importar la herramienta que elija. Obtenga siempre permiso antes de rastrear un sitio web, especialmente si planea realizar análisis extensos o intrusivos. Tenga en cuenta los recursos del servidor del sitio web y evite sobrecargarlos con solicitudes excesivas.
Scrapy
Aprovecharemos Scrapy y un spider personalizado diseñado para el reconocimiento web. Si está interesado en obtener más información sobre técnicas de rastreo/spidering, consulte el módulo:
Instalación de Scrapy
Antes de comenzar, asegúrese de tener Scrapy instalado en su sistema. Si no lo hace, puede instalarlo fácilmente usando pip, el instalador del paquete Python:
afsh4ck@kali$ pip3 install scrapy
Este comando descargará e instalará Scrapy junto con sus dependencias, preparando su entorno para construir nuestra araña.
ReconSpider
Primero, ejecuta este comando en la terminal para descargar el spider scrapy personalizado ReconSpider y extráelo en tu directorio de trabajo actual:
Esto nos descarga una versión de ReconSpider preinstalada. Es recomendable ya que el repositorio original está fuera de mantenimiento y da algunos errores.
O también podemos hacer un git clone de su repositorio de GitHub:
Con los archivos extraídos, podemos ejecutar ReconSpider.py usando el siguiente comando:
Reemplaza inlanefreight.com con el dominio que deseas analizar. La araña rastreará el objetivo y recopilará información valiosa.
resultados.json
Después de ejecutar ReconSpider.py, los datos se guardarán en un archivo results.json. Este archivo se puede explorar usando cualquier editor de texto.
A continuación se muestra la estructura del archivo JSON producido:
Cada clave en el archivo JSON representa un tipo diferente de datos extraídos del sitio web de destino:
Clave JSON
Descripción
emails
Enumera las direcciones de correo electrónico encontradas en el dominio.
links
Enumera las URL de los enlaces encontrados dentro del dominio.
external_files
Enumera las URL de archivos externos, como archivos PDF.
js_files
Enumera las URL de los archivos JavaScript utilizados por el sitio web.
form_fields
Enumera los campos de formulario que se encuentran en el dominio (vacíos en este ejemplo).
images
Enumera las URL de las imágenes encontradas en el dominio.
videos
Enumera las URL de los vídeos encontrados en el dominio (vacíos en este ejemplo).
audio
Enumera las URL de los archivos de audio encontrados en el dominio (vacíos en este ejemplo).
comments
Enumera los comentarios HTML que se encuentran en el código fuente.
Al explorar esta estructura JSON, puede obtener información valiosa sobre la arquitectura, el contenido y los posibles puntos de interés de la aplicación web para una mayor investigación.
Final Recon
Final Recon es una herramienta de reconocimiento web automática todo en uno escrita en Python. El objetivo de FinalRecon es proporcionar una descripción general del objetivo en un corto período de tiempo manteniendo la precisión de los resultados. En lugar de ejecutar varias herramientas una tras otra, podemos usar este programa.
Lo podemos instalar en Kali Linux con:
sudoaptinstallfinalrecon
afsh4ck@kali$ finalrecon -h
usage: finalrecon [-h] [--url URL] [--headers] [--sslinfo] [--whois] [--crawl] [--dns] [--sub] [--dir] [--wayback] [--ps] [--full] [-nb] [-dt DT] [-pt PT] [-T T]
[-w W] [-r] [-s] [-sp SP] [-d D] [-e E] [-o O] [-cd CD] [-k K]
FinalRecon - All in One Web Recon | v1.1.7
options:
-h, --help show this help message and exit
--url URL Target URL
--headers Header Information
--sslinfo SSL Certificate Information
--whois Whois Lookup
--crawl Crawl Target
--dns DNS Enumeration
--sub Sub-Domain Enumeration
--dir Directory Search
--wayback Wayback URLs
--ps Fast Port Scan
--full Full Recon