Nginx: cómo bloquear la IP por la expresión regular del nombre de host

1

Estoy ejecutando un sitio pequeño de wordpress con nginx + php5-fpm.

Me he dado cuenta de que recibo muchos ataques de botnet desde direcciones IP con nombres de host como:

52-182.static.spheral.ru
208-135.static.spheral.ru
118-239.static.spheral.ru

Las direcciones IP reales asociadas con estas máquinas son muy variadas, en realidad no hay un patrón discernible:

195.62.52.182
195.88.208.135 
193.19.118.239

¿Cómo puedo bloquear las solicitudes de todas las máquinas con direcciones IP que coincidan con el patrón de nombre de host?

*.static.spheral.ru

Me gustaría hacer esto directamente en nginx, para evitar el salto adicional (y el drenaje de los recursos de la máquina) que se necesitaría para hacer esto desde el proceso php.

Creo que el bloqueo por nombre de host me permitiría bloquear preventivamente futuros ataques desde la misma red de bots pero desde direcciones IP que aún no se me han revelado.

(P.S. Me complace instalar un complemento nginx / software adicional si es necesario)

    
pregunta David Simic 03.06.2016 - 04:10
fuente

1 respuesta

1

En primer lugar, permítanme comenzar con un dato importante: Regex en las búsquedas de IP inversas es una mala idea para bloquear las solicitudes entrantes. El DNS inverso es una función informativa. A diferencia de DNS, donde es crítico que el dominio apunte a la dirección IP correcta, hay pocas consecuencias por tener la búsqueda inversa de un punto de IP a un dominio arbitrario. Por lo tanto, sería trivial que un atacante pase por dominios arbitrarios en sus registros DNS inversos para omitir constantemente el filtro. La confianza en el DNS inverso para las funciones de seguridad se puede clasificar como CWE-350 ( enlace ).

En este caso, la fuente del problema parece ser un proveedor específico, por lo que podría bloquear su rango de IP completo. Comencemos por encontrar una de las direcciones IP (supongo que la entrada de IP > nombre de host inversa es válida en este caso):

~# nslookup 52-182.static.spheral.ru 
Server:     192.168.153.2
Address:    192.168.153.2#53

Non-authoritative answer:
Name:   52-182.static.spheral.ru
Address: 195.88.209.9

Ahora vamos a determinar su rango de IP / proveedor:

root@bt:~# whois 195.88.209.9
% This is the RIPE Database query service.
% The objects are in RPSL format.
%
% The RIPE Database is subject to Terms and Conditions.
% See http://www.ripe.net/db/support/db-terms-conditions.pdf

% Note: this output has been filtered.
%       To receive output for a database update, use the "-B" flag.

% Information related to '195.88.208.0 - 195.88.209.255'

% Abuse contact for '195.88.208.0 - 195.88.209.255' is '[email protected]'

inetnum:        195.88.208.0 - 195.88.209.255
netname:        IPSERVER
descr:          Operated by IT Expert LLC
remarks:        Abuse mailbox: [email protected]
country:        RU
org:            ORG-Al123-RIPE
admin-c:        SOV63-RIPE
tech-c:         SOV63-RIPE
status:         ASSIGNED PI
mnt-by:         RIPE-NCC-END-MNT
mnt-by:         MNT-SPHERE
mnt-routes:     MNT-SPHERE
mnt-routes:     FIORD-MNT
mnt-domains:    MNT-SPHERE
created:        2009-04-15T12:34:23Z
last-modified:  2016-04-14T09:38:32Z
source:         RIPE
sponsoring-org: ORG-SL202-RIPE

organisation:   ORG-Al123-RIPE
org-name:       Antaro ltd.
abuse-mailbox:  [email protected]
org-type:       other
address:        127473, Moscow, 2 Schemilovskiy per., d.5/4., str.1
abuse-c:        AC29892-RIPE
mnt-ref:        ANTARO-MNT
mnt-by:         ANTARO-MNT
created:        2009-04-14T08:02:50Z
last-modified:  2016-02-15T16:45:17Z
source:         RIPE # Filtered

person:         Strekozov Oleg Vladimirovich
address:        Russia, 107031, Moscow, proezd Dmitrosvkiy 8
phone:          +18552100465
nic-hdl:        SOV63-RIPE
mnt-by:         MNT-SPHERE
created:        2012-05-05T22:19:17Z
last-modified:  2014-09-15T13:18:40Z
source:         RIPE

% Information related to '195.88.208.0/23AS28917'

route:          195.88.208.0/23
descr:          IPSERVER
origin:         AS28917
mnt-by:         FIORD-MNT
mnt-routes:     FIORD-MNT
created:        2012-12-24T08:35:13Z
last-modified:  2015-03-10T14:32:44Z
source:         RIPE # Filtered

% This query was served by the RIPE Database Query Service version 1.87.3 (DB-2)

Sobre la base de esta información, puede presentar una queja oficial sobre estos ataques a [email protected] y escalar a [email protected] y [email protected] si no se trata su informe de abuso.

También puedes bloquear futuros ataques con el rango 195.88.208.0 - 195.88.209.255 o 195.88.208.0/23 si prefieres la notación CIDR.

Espero que esto ayude.

    
respondido por el wireghoul 03.06.2016 - 04:21
fuente

Lea otras preguntas en las etiquetas