Links

[CONFIG] GESTIÓN DE CONFIGURACIÓN E IMPLEMENTACIÓN

Buscar información sobre el servidor y fallos de configuración e implementación que puedan suponer un riesgo para la organización.

CONFIG-01 Configuración de infraestructura/red

🎯 Objetivo
Comprender el mapa del servidor y entender cómo puede afectar a la seguridad de la aplicación.
📝 Pruebas
  • Partiendo de las pruebas obtenidas en INFO-10, identificar posibles vulnerabilidades o fallos de configuración que puedan existir en toda la arquitectura de la aplicación.
🌐 Referencias

CONFIG-02 Configuración de la plataforma de la aplicación

🎯 Objetivo
Buscar información sobre la versión y tipo del servidor web para buscar posibles vulnerabilidades y exploits.
📝 Pruebas
Wappalyzer
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
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
https://sitereport.netcraft.com/?url=[URL]
🌐 Referencias

CONFIG-03 Fugas de información sensible en el manejo de extensiones de archivos

🎯 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
wget [URL]/robots.txt
Curl
curl -O [URL]/robots.txt
Gobuster
gobuster -w "/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt" -t 23 dir -u "[URL]" -o directories.txt
gobuster -w "/usr/share/wordlists/dirb/common.txt" -t 23 -x php,txt,html dir -u "[URL]" -o common_files.txt
Wfuzz
wfuzz -c -t 23 -w "/usr/share/wordlists/dirb/common.txt" -z "php,txt,html" -u "[URL]FUZZ"
🌐 Referencias

CONFIG-04 Fugas de información sensible en archivos obsoletos, de backup o no referenciados

🎯 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.
  • Lanzar Nmap.
  • Lanzar Wfuzz.
  • Lanzar Assetfinder.
  • Lanzar Amass.
  • Lanzar Sublist3r.
Bing
https://www.bing.com/search?q=IP%3A[IP]
IPv4info
http://ipv4info.com/search/[DOMAIN]
Nmap
nmap -p- --open -T2 -v -oA ports [DOMAIN]
nmap -sC -sV -T2 -v -oA services -p[PORTS] [DOMAIN]
Wfuzz
wfuzz -c -t 23 -w "/usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-20000.txt" -H "Host: FUZZ.[DOMAIN]" -u "[URL]"
Assetfinder
assetfinder --subs-only [DOMAIN] | tee -a assetfinder.txt
Amass
amass enum -passive -d [DOMAIN] -o amass-pasive.txt
amass enum -brute -d [DOMAIN] -o amass-brute.txt
Sublist3r
python sublist3r.py -d [DOMAIN] -v -o sublister.txt
🌐 Referencias

CONFIG-05 Enumeración de infraestructura e interfaces de administración de la aplicación

🎯 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.
  • Plugin para Burp Suite: Exiftool Scanner.
  • Almacenar los archivos obtenidos y descargados durante la auditoria para analizarlos con FOCA.
Burp Suite
Exportar comentarios desde Burp Suite
🌐 Referencias

CONFIG-06 Métodos HTTP

🎯 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
Exportar URL y parámetros desde Burp Suite
Arjun
python3 arjun.py --url urls.txt --get -t 23 -o arjun.json
🌐 Referencias

CONFIG-07 HTTP Strict Transport Security

🎯 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 mapse creará el mapa de la aplicación.
🌐 Referencias

CONFIG-08 Política de dominio cruzado RIA

🎯 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).
  • Lanzar WPScan.
WPScan
python3 arjun.py --url urls.txt --get -t 23 -o arjun.json
🌐 Referencias

CONFIG-09 Permisos de archivos

⚠️ [ESTA PRUEBA HA SIDO INCLUIDA EN INFO-08] ⚠️
🌐 Referencias

CONFIG-10 Toma de control de subdominio

🎯 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.
  • Lanzar WhatWaf.
  • Plugin para Burp Suite: WAFDetect.
IPv4Info
Ejemplo de dos IPs asociadas a un dominio en la herramienta IPv4Info
WhatWaf
whatwaf -u [URL] --ra --force-ssl -t 23 --csv whatwaf.csv
🌐 Referencias

CONFIG-11 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.
  • Lanzar WhatWaf.
  • Plugin para Burp Suite: WAFDetect.
IPv4Info
Ejemplo de dos IPs asociadas a un dominio en la herramienta IPv4Info
WhatWaf
whatwaf -u [URL] --ra --force-ssl -t 23 --csv whatwaf.csv
🌐 Referencias