Ir al contenido

Security Scanner Detection

ID de alerta: scanner_detection MITRE ATT&CK: T1595 – Active Scanning · T1046 – Network Service Scanning


NivelCondición
BajaHerramientas de información (WhatWeb, curl, wget)
MediaDirectory bruteforcers (Gobuster, DirBuster), detectores de WAF
AltaVulnerability scanners (Nikto, WPScan, Nessus, Acunetix)
CríticaHerramientas de inyección/explotación automatizada (SQLMap, Metasploit)

  • Reconocimiento automatizado: primera fase de un ataque dirigido.
  • Descubrimiento de vulnerabilidades: mapeo masivo de vectores explotables.
  • Preparación de ataque: inventario y priorización de objetivos.
  • Explotación automática posible: scanner + vulnerabilidad = compromiso inminente.

  • Detección por User-Agent coincidente con >50 patrones conocidos.
  • Análisis comportamental: ráfagas de 404s, requests secuenciales a paths comunes.
  • Severidad aumentada si se observan intentos de login, peticiones maliciosas o payloads.
  • Cooldown: 5 minutos por IP/tool.
  • Respuesta crítica automática para herramientas catalogadas como explotadoras (SQLMap, Metasploit).

TipoEjemplo
user_agentsqlmap/1.5.2#stable
user_agentMozilla/5.0 (compatible; Nmap Scripting Engine)
user_agentWPScan vX.Y.Z
user_agentNikto/X.Y.Z
behaviorMúltiples 404 en <1 segundo contra paths comunes
behaviorPatrones de enumeración: /wp-admin/, /wp-login.php, .env, /backup/, wp-content/plugins/

  • Crawlers SEO legítimos y motores de búsqueda.
  • Herramientas de monitorización/uptime.
  • Servicios de seguridad contratados o pentests autorizados.
  • Desarrolladores usando curl/wget o herramientas de diagnóstico.

!!! tip "" Verificar siempre IP origen, contexto (horario, ASN) y autorización antes de bloquear.


  1. Analizar User-Agent y frecuencia:

    Ventana de terminal
    grep -iE "nikto|sqlmap|wpscan|nmap" access.log
  2. Listar paths probados y contar 404s:

    Ventana de terminal
    awk '$9 == 404 {print $7}' access.log | sort | uniq -c | sort -nr
  3. Medir alcance: duración del escaneo, requests totales, tamaños y patrones.

  4. Correlacionar con WAF/IDS: reglas disparadas, bloqueos previos.

  5. Para herramientas críticas, asumir intento de explotación activa y escalar a respuesta urgente.


=== “Inmediatas”

!!! danger ""
- Bloquear IPs que combinan User-Agent sospechoso con comportamiento de scanning.
- Aplicar rate limiting agresivo y tarpit para orígenes persistentes.
- Investigar urgentemente si la herramienta es SQLMap/Metasploit.
- Deploy de honeypots o endpoints falsos para recopilar TTPs del atacante.

=== “Preventivas”

!!! tip ""
Filtrar User-Agents conocidos a nivel de servidor web (Nginx):
```nginx
if ($http_user_agent ~* (nikto|sqlmap|wpscan|nmap|acunetix)) {
return 403;
}
```
- Implementar tarpit/slowdown para scanners persistentes.
- Respuestas falsas para paths de administración en capas no autorizadas.
- WAF/CloudFlare con reglas anti-scanner y rate limiting global.
- Fail2ban con jails basados en patrones de scanning y 404 flood.

  • MITRE ATT&CK T1595 / T1046
  • SANS — Detecting Scanners and Reconnaissance
  • SecLists — common User-Agents and scan signatures