Nginx: come bloccare l'IP tramite l'espressione regolare dell'hostname

1

Gestisco un piccolo sito wordpress con nginx + php5-fpm.

Ho notato che ottengo un sacco di attacchi botnet da IP con nomi host come:

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

Gli effettivi IP associati a queste macchine sono piuttosto vari, non esiste un modello realmente distinguibile:

195.62.52.182
195.88.208.135 
193.19.118.239

Come faccio a bloccare le richieste da tutte le macchine con IP che corrispondono al modello del nome host:

*.static.spheral.ru

Mi piacerebbe farlo direttamente in nginx, per evitare l'hop addizionale (e il drenaggio delle risorse della macchina) che ci vorrebbe per farlo dal processo php.

Credo che il blocco tramite hostname mi consenta di bloccare preventivamente gli attacchi futuri dalla stessa botnet ma da IP che non mi sono ancora stati rivelati.

(P.S. Sono felice di installare un plugin nginx / software aggiuntivo se necessario.)

    
posta David Simic 03.06.2016 - 04:10
fonte

1 risposta

1

Innanzitutto, vorrei iniziare con un fatto importante: il regex sulle ricerche IP inverse è una cattiva idea per bloccare le richieste in entrata. Il DNS inverso è una funzione informativa. A differenza del DNS, dove è fondamentale che il dominio indirizzi l'indirizzo IP corretto, le conseguenze per la ricerca inversa di un punto IP su un dominio arbitrario sono scarse. Quindi sarebbe banale per un utente malintenzionato passare attraverso domini arbitrari nei propri record DNS inversi per aggirare costantemente il filtro. Affidarsi al DNS inverso per le funzioni di sicurezza può essere classificato come CWE-350 ( link ).

In questo caso, la fonte del problema sembra essere un fornitore specifico in modo da poter bloccare l'intero intervallo IP. Iniziamo trovando uno degli indirizzi IP (sto assumendo che l'IP inverso > la voce hostname sia valida in questo 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

Ora consente di determinare il loro intervallo IP / fornitore:

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)

Sulla base di queste informazioni puoi presentare un reclamo ufficiale su questi attacchi a [email protected] e passare a [email protected] e [email protected] se il tuo rapporto sull'abuso non viene indirizzato.

Puoi anche bloccare futuri attacchi con l'intervallo 195.88.208.0 - 195.88.209.255 o 195.88.208.0/23 se preferisci la notazione CIDR.

Spero che questo aiuti.

    
risposta data 03.06.2016 - 04:21
fonte

Leggi altre domande sui tag