Blocca le richieste con codifica esadecimale usando fail2ban

1

Ho un nuovo server Web che esegue nginx. Il server predefinito riceve richieste di 10K + ogni giorno dai robot russi. Stanno chiaramente cercando qualcosa, ma è difficile dire cosa, dal momento che le richieste sono parzialmente esadecimali. Ho provato a decodificarli, ma non riesco ancora a capire quale sia il loro scopo. Ecco alcuni esempi:

W\xF1p\x8B4\x1D\xFB\x06\xD9\xBF\x82\x87\xE8\xC8\xA2\x98\x9Boj\xB6'6\x15\x8B\x1Ab\x17\x92\xC1\x12\xC9\xCB{AW\x14\xCB\x14\xDD\xC9\x9F

Q\xA3q\xD1\x9E\x93\x95\xD8\xBD_|>\x87z\x95\x0Bz$

\xF3\xFA\xD2s\xB8$\x11(q\xDBk\x9E\xEBn\x22\x22\xE4N\x0B\xFC\xB2\xE6\xD2\x9F\x81\xF4\xC2>dq%\x9F\xD8u)\xAE\x06{

Il server restituisce 400 per tutte queste richieste. Indipendentemente da ciò, vorrei bloccare questi bot dal fare queste richieste poiché non voglio che abbiano successo in qualunque cosa stiano tentando di fare.

Uso fail2ban ma non è configurato per fermarli. Devo impostare un filtro speciale per trovarli nei log? L'unica consistenza che riesco a vedere è che hanno tutti "\ x ##" dove ## è un codice esadecimale. Tuttavia, non voglio bloccare alcuna richiesta legittima, quindi il filtro deve indirizzare solo queste richieste bot.

Qualche idea su come farlo?

    
posta mattf10 10.08.2018 - 11:09
fonte

1 risposta

1

Fail2ban è bello bloccare gli attacchi che generano un risultato atteso, come tentativi di accesso o cose simili. Nel tuo caso, stai ricevendo richieste con shellcode. Questi shellcode sono una sorta di payload per provare iniezioni o simili (sqli, iniezioni di comandi, ecc.). Quindi per proteggere questi tipi di attacco ciò di cui hai bisogno è un WAF (Web Application Firewall).

    
risposta data 04.11.2018 - 09:48
fonte

Leggi altre domande sui tag