
Herramienta de seguridad para reconocimiento y recopilación de información en un sitio web. (python 3.x)

Herramienta de seguridad para Reconocimiento y Recopilación de Información en un sitio web. (python 3.x)
- Agregar función de proxy
- Redefinir prioridades/tareas
- Depurar resultados de subdominios de certificados
- Mostrar el número de bypass actual durante el escaneo ("CB:")
- Huevo de pascua para navidad :)
- Opción -nfs (no primer paso) para saltar los primeros pasos de reconocimiento
- Google CSE antes del escaneo
- Creación de WIKI
- Detección de posible divulgación de ruta en página web html
- Detección de posibles directorios ocultos
(para más detalles ve a CHANGELOG.md)
- git clone https://github.com/c0dejump/HawkScan.git && sudo python3 HawkScan/setup.py install
- pip(3) install -r requirements.txt
- python3 -m pip install -r requirements.txt
P1 es lo más importante
[WIP] Exclusión múltiple como: --exclude 403,1337b [P1] [En progreso] (ver Ejemplos)
[WIP] Enrutamiento anónimo a través de algún proxy (lista de proxies http/s) [P1] [En progreso]
[WIP] Reconstruir informe de escaneo [P1]
[WIP] HExHTTP reemplazar 'información de encabezado' antes del escaneo
usage: hawkscan.py [-h] [-u URL] [-f FILE_URL] [-t THREAD] [--exclude EXCLUDE [EXCLUDE ...]] [--auto] [--update] [-w WORDLIST] [-b [BACKUP ...]] [-p PREFIX] [-H HEADER_] [-a USER_AGENT] [--redirect] [--auth AUTH] [--timesleep TS] [--proxie PROXIE] [-r] [-s SUBDOMAINS] [--js] [--nfs] [--ffs] [--notify] [-o OUTPUT] [-of OUTPUT_TYPE]
> General:
-u URL URL a escanear [requerido]
-f FILE_URL archivo con múltiples URLs a escanear
-t THREAD Número de hilos para el fuzzing de URL. Por defecto: 30
--exclude EXCLUDE [EXCLUDE ...] Excluir página, código de respuesta, tamaño de respuesta. (Ejemplos: --exclude 500,337b)
--auto Hilos automáticos según respuesta al sitio web. Máx: 30
--update Para actualización automática
--lightmode Para un fuzzing simple, 1 solicitud por segundo y una nueva sesión para cada solicitud
> Configuración de Wordlist:
-w WORDLIST Wordlist utilizada para fuzzing del sitio web deseado. Por defecto: dichawk.txt
-b Agregar extensiones de respaldo con prefijo/sufijo durante el escaneo. (Ejemplos: ejemplo.com/~ex/, ejemplo.com/ex.php.bak...) /!\ cuidado, toma más tiempo
-p PREFIX Agregar prefijo a la wordlist para escanear
> Configuración de Solicitud:
-H HEADER_ Modificar encabezado. (Ejemplo: -H "cookie: test")
-a USER_AGENT Elegir user-agent. Por defecto: Aleatorio
--redirect Para escanear con respuesta de redirección (301/302)
--auth AUTH Autenticación HTTP. (Ejemplos: --auth admin:admin)
--timesleep TS Para definir un tiempo de espera/límite de velocidad si la aplicación es inestable durante el escaneo.
> Consejos:
-r Directorios/archivos recursivos
-s SUBDOMAINS Probador de subdominios
--js Para intentar encontrar claves, tokens, endpoints sensibles... en la página javascript
--nfs No el primer paso del escaneo durante la primera ejecución (waf, vhosts, wayback etc.)
--ffs Forzar el primer paso del escaneo durante la primera ejecución (waf, vhosts, wayback etc.)
--notify Para recibir notificación cuando el escaneo finalice (solo funciona en linux)
> Configuración de Exportación:
-o OUTPUT Salida a site_scan.txt (por defecto en el directorio del sitio web)
-of OUTPUT_TYPE Formato de archivo de salida. Formatos disponibles: json, csv, txt
//Básico
python hawkscan.py -u https://www.ejemplo.com/
//Con dico específico
python hawkscan.py -u https://www.ejemplo.com/ -w dico_extra.txt
//con 30 hilos
python hawkscan.py -u https://www.ejemplo.com/ -t 30
//Con escaneo de archivos de respaldo
python hawkscan.py -u https://www.ejemplo.com/ -b
//Con exclusión de página
python hawkscan.py -u https://www.ejemplo.com/ --exclude profile.php
//Con exclusión de código de respuesta
python hawkscan.py -u https://www.ejemplo.com/ --exclude 403
//Con exclusión de número de bytes
python hawkscan.py -u https://www.ejemplo.com/ --exclude 1337b
//Con dos tipos de exclusión
python hawkscan.py -u https://www.ejemplo.com/ --exclude 1337b,403
Layno (https://github.com/Clayno/) [Ayudante técnico]
Sanguinarius (https://twitter.com/sanguinarius_Bt) [Ayudante técnico]
Jamb0n69 (https://twitter.com/jamb0n69) [Ayudante técnico]
Cyber_Ph4ntoM (https://twitter.com/__PH4NTOM__) [Probador beta & Diseñador de logotipo]
https://www.paypal.me/c0dejump
O si quieres invitarme un café :)
Este script utiliza "WafW00f" para detectar el WAF en el primer paso (https://github.com/EnableSecurity/wafw00f)
Este script utiliza "Sublist3r" para escanear subdominios (https://github.com/aboul3la/Sublist3r)