OWASP - ES [INFO] RECOPILACIÓN DE INFORMACIÓN Recopilar la mayor cantidad de información posible sobre la aplicación, sistema u organización.
INFO-01 Fugas de información indexadas por buscadores
🎯 Objetivo
Buscar información sensible sobre la aplicación, sistema u organización que pueda estar expuesta tanto directamente (en el sitio web de la organización) o indirectamente (sitio web de un tercero).
📝 Pruebas
Buscar información sobre la aplicación en Google, Bing, GitHub, Shodan, Censys, Pastebin, Hunter, LinkedIn, Facebook y Twitter.
Comprobar fugas de información en leaks.
Comprobar emails en hunter.io .
Comprobar dominio en shodan.io .
Comprobar dominio en binsearch.info .
Google
Copy site:[DOMAIN]
cache:[DOMAIN]
filetype:[EXTENSION]
inurl:[DORK]
intext:[DORK]
inbody:[DORK]
intitle:[DORK]
Archive
Copy https://web.archive.org/web/*/[DOMAIN]/*
Copy waybackurls [DOMAIN] | tee -a [DOMAIN].txt
Hunter.io
Copy https://hunter.io/search/[DOMAIN]
Shodan.io
Copy https://www.shodan.io/search?query=[DOMAIN]
Binsearch.info
Copy https://binsearch.info/?q=[DOMAIN]
🌐 Referencias
INFO-02 Fingerprinting del servidor web
🎯 Objetivo
Buscar información sobre la versión y tipo del servidor web para buscar posibles vulnerabilidades y exploits.
📝 Pruebas
Navegar por la aplicación y observar cabeceras.
Wappalyzer
Copy wappalyzer [URL] --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4135.1 Safari/537.36" --proxy "http://127.0.0.1:8080" --recursive --pretty >> [DOMAIN].json
Whatweb
Copy whatweb --aggression 4 --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4135.1 Safari/537.36" --proxy "127.0.0.1:8080" --url-prefix "https://" [DOMAIN]
Netcraft
Copy https://sitereport.netcraft.com/?url=[URL]
🌐 Referencias
INFO-03 Fugas de información sensible en metaficheros del servidor
🎯 Objetivo
Buscar archivos o directorios que puedan contener información interesante o sensible.
📝 Pruebas
Comprobar el archivo robots.txt
.
Observar el tag HTML META
.
Lanzar crawl con Burp Suite.
Lanzar gobuster con directorios conocidos.
Lanzar wfuzz con ficheros conocidos.
Wget
Copy wget [URL]/robots.txt
Curl
Copy curl -O [URL]/robots.txt
Gobuster
Copy gobuster -w "/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt" -t 23 dir -u "[URL]" -o directories.txt
Copy gobuster -w "/usr/share/wordlists/dirb/common.txt" -t 23 -x php,txt,html dir -u "[URL]" -o common_files.txt
Wfuzz
Copy wfuzz -c -t 23 -w "/usr/share/wordlists/dirb/common.txt" -z "php,txt,html" -u "[URL]FUZZ"
🌐 Referencias
INFO-04 Enumeración de aplicaciones en el servidor web
🎯 Objetivo
Enumerar las aplicaciones dentro del alcance de la auditoria y presentes en el mismo servidor (Host compartido), descubrimiento de puertos abiertos, servicios, subdominios o frameworks utilizados.
📝 Pruebas
Utilizar el motor de búsqueda bing con el filtro IP:
.
Comprobar en http://ipv4info.com
.
Bing
Copy https://www.bing.com/search?q=IP%3A[IP]
IPv4info
Copy http://ipv4info.com/search/[DOMAIN]
Nmap
Copy nmap -p- --open -T2 -v -oA ports [DOMAIN]
Copy nmap -sC -sV -T2 -v -oA services -p[PORTS] [DOMAIN]
Wfuzz
Copy wfuzz -c -t 23 -w "/usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-20000.txt" -H "Host: FUZZ.[DOMAIN]" -u "[URL]"
Assetfinder
Copy assetfinder --subs-only [DOMAIN] | tee -a assetfinder.txt
Amass
Copy amass enum -passive -d [DOMAIN] -o amass-pasive.txt
Copy amass enum -brute -d [DOMAIN] -o amass-brute.txt
Sublist3r
Copy python sublist3r.py -d [DOMAIN] -v -o sublister.txt
🌐 Referencias
INFO-05 Fugas de información sensible en metadatos y comentarios
🎯 Objetivo
Buscar fugas de información en comentarios HTML y metadatos de archivos subidos al servidor.
📝 Pruebas
Una vez explorada la aplicación mediante Burp Suite , exportar los comentarios desde la pestaña Target -> Site map -> Engagement tools -> Find comments
.
Almacenar los archivos obtenidos y descargados durante la auditoria para analizarlos con FOCA .
Burp Suite
🌐 Referencias
INFO-06 Identificación de puntos de entrada en la aplicación
🎯 Objetivo
Comprender como se forman las peticiones y respuestas de la aplicación, buscar puntos de entrada y parámetros ocultos.
📝 Pruebas
Comprender como están formadas las peticiones y respuestas.
Identificar en que puntos de la aplicación se usan los métodos POST y GET.
Conocer los parámetros que usa la aplicación y con que fin son usados.
Identificar que peticiones POST pueden ser cambiadas por GET (longitud de respuesta similar).
Buscar formularios u otros posibles puntos de entrada para posteriormente buscar vulnerabilidades XSS o SQLi.
Exportar las URL y parámetros desde Burp Suite Target -> Site map -> Engagement tools -> Analyze target
.
Lanzar Arjun con las URL y parámetros obtenidos de Burp Suite.
Burp Suite
Arjun
Copy python3 arjun.py --url urls.txt --get -t 23 -o arjun.json
🌐 Referencias
INFO-07 Mapas de rutas de ejecución a través de la aplicación
🎯 Objetivo
Crear un mapa de la aplicación y entender los flujos de trabajo.
📝 Pruebas
Pasar la aplicación a través de Burp Suite. En la pestaña Target -> Site map
se creará el mapa de la aplicación.
🌐 Referencias
INFO-08 Fingerprinting del framework de la aplicación web
🎯 Objetivo
Conocer los distintos frameworks usados por la aplicación.
📝 Pruebas
Analizar las cabeceras de respuesta del servidor de la aplicación, cookies, extensiones de los archivos, errores o comentarios en el HTML para identificar posibles frameworks utilizados en su desarrollo (Wordpress, JQuery, CKEditor, Vue.js, Joomla, Drupal, etc).
WPScan
Copy python3 arjun.py --url urls.txt --get -t 23 -o arjun.json
🌐 Referencias
INFO-09 Fingerprinting de la aplicación web
⚠️ [ESTA PRUEBA HA SIDO INCLUIDA EN INFO-08] ⚠️
🌐 Referencias
INFO-10 Mapa de arquitectura de la aplicación
🎯 Objetivo
Conocer la infraestructura de la aplicación para identificar si existe un WAF, Firewall, Balanceador, etc.
📝 Pruebas
Buscar información referente a si existe un único servidor o más de uno (ejemplo los utilizados por Amazon para servir la información en función desde el país que se visite la aplicación, dando lugar a que un dominio pueda resolver dos IPs distintas). Esto se puede comprobar en el punto INFO-04 mediante la herramienta online IPv4Info .
Cambiar las peticiones entre HTTP 1.0 y HTTP 1.1 , con y sin cabecera HOST o intentando forzar errores (por ejemplo con caracteres chinos o emojis).
En HTTP 1.0 se pueden hacer peticiones sin host, podemos obtener información en las cabeceras de respuestas.
IPv4Info
Ejemplo de dos IPs asociadas a un dominio en la herramienta IPv4Info WhatWaf
Copy whatwaf -u [URL] --ra --force-ssl -t 23 --csv whatwaf.csv
🌐 Referencias