Decoy Paths: bloqueo de los escáneres en su primera exploración
Un «Honeypot» de WordPress funciona porque ningún visitante real solicita nunca /.env.backup o wp-config.old.php. El «Decoy Path Block» de ReportedIP Hive considera que el primer acceso a cualquiera de las 40 rutas de cebo es un indicador de ataque: sin ventana de recuento ni tiempo de espera.
Esta guía explica la lista de señuelos, por qué el sensor no bloquea la IP a nivel local y cómo aplicar el bloqueo a nivel del servidor.
¿Qué es ReportedIP Hive?
ReportedIP Hive es un completo plugin de seguridad para WordPress: 16 Attack Sensors, cuatro métodos de autenticación de dos factores (2FA), bloqueo progresivo e Threat Intelligence de la comunidad (opcional) en un único plugin gratuito bajo licencia GPL-2.0. El «Decoy Path Block» es un sensor incluido en el plan Free tier. Consulta el conjunto completo de funciones de ReportedIP Hive para conocer el resto de características.
40 rutas de cebo, una señal
Introducida en la versión 2.0.9 y ampliada de 16 a 40 entradas en la versión 2.0.14, la lista de señuelos incluye los archivos que los atacantes buscan tras una implementación mal configurada:
- La familia completa
wp-config.php.*familia de copias de seguridad —.bak,.old,.save,.orig,.swp,.txty un~. .envcopias de seguridad —.production.bak,.local.bak,.orig— y las de Joomlaconfiguration.php.bak.- Archivos SQL en el directorio raíz de la web —
dump.sql,database.sql,backup.sql,db.sql. - Apache
.htpasswd/.htaccess.bak, credenciales de AWS (.aws/credentials,.aws/config), claves SSH (.ssh/id_rsa,.ssh/authorized_keys) y archivos de claves privadas (id_rsa,private.key,server.key).
Amplía la lista con el reportedip_hive_decoy_paths filtro. El comparador también reconoce un nombre de archivo de cebo detrás de un prefijo de subdirectorio, por lo que /site-a/.env.backup en una instalación Multisite en un subdirectorio se detecta de la misma manera.
¿Por qué no bloquea la dirección IP a nivel local?
Desde la versión 2.0.11, el sensor señuelo omite deliberadamente añadir la IP de origen a la tabla de bloqueo local. De lo contrario, un solo False Positive —un plugin de copias de seguridad legítimo, un administrador realizando pruebas en el sitio en producción, un rastreador antiguo que comprueba una URL obsoleta— bloquearía el sitio impidiéndole el acceso a su propio tráfico durante horas. En su lugar, cada acceso se registra según su gravedad high, se reenvía a la cola de reputación de la comunidad (evento decoy_pathblock_hit), y el visitante recibe un error 403 para esa solicitud concreta. La capa de la comunidad es donde recae el coste de reputación en toda la red.
Traslada el bloque al servidor para los archivos de señuelo reales
Si hay un archivo de señuelo real en el disco (por ejemplo, un .env.backup dejado por Composer, por ejemplo), Apache o nginx podrían servirlo antes de que se ejecute PHP. Hive gestiona automáticamente un .htaccess bloque de reescritura (entre # BEGIN ReportedIP Hive Decoy / # END marcadores) que redirige esas solicitudes a través de index.php el proceso de detección en lugar de servir el archivo. Los usuarios de nginx disponen de un fragmento de código equivalente en la pestaña «Configuración», que incluye una variante de coincidencia exacta para ISPConfig y pilas gestionadas, en las que, de otro modo, prevalecería una regla de plantilla location ~ /. { deny all; } prevalecería de otro modo. El complemento nunca escribe directamente en la configuración de tu servidor; solo genera el fragmento de código para pegar.
Guías relacionadas
- Los 16 sensores, incluida la detección 404 / escáner
- Bloqueo progresivo de direcciones IP para los sensores que aplican la prohibición
- Cómo las visitas a páginas trampa alimentan la red de reputación de la comunidad
Los detalles sobre el refuerzo de la seguridad a nivel de servidor se encuentran en la documentación del servidor honeypot. Consulta las guías completas del complemento ReportedIP Hive o lee el código del señuelo en GitHub.