Che tipo di attacco invia stringhe come V \ x00Y \ x00z \ x005 e come proteggere il server da queste?

0

Revisionando il file access.log in un server ho notato gli attacchi classici, richiedendo login.php, membersHandler.ashx, ecc. ma questo mi è strano:

198.51.100.22 - - [02/Oct/2018:02:20:20] "V\x00Y\x00z\x005\x00z\x00V\x00\x06\x00!\x00V\x00\xE9\x00W\x00W\x00\xEA\x00\xEB\x00\xCC\x00\xCC\x00\xCC\x00\xA5\x00\xCC\x00\xE9\x00\xB0\x00!\x00\xE9\x00\xCC\x00{\x00z\x00Y\x00|\x00(\x00W\x00|\x00!\x00\xE9\x00\xA5\x00\xE9\x00\xB0\x00!\x00{\x00|\x00(\x00\xE9\x00(\x00{\x00(\x00\xE9\x00Y\x00(\x00\xA5\x00\xA5\x00\xA5\x005\x00\xB0\x00\xB0\x00Y\x00\xEA\x00|\x00!\x00W\x00\xEB\x00V\x00\xCC\x00{\x00\xA5\x00\xCC\x00V\x00\xCC\x00W\x00\xCC\x00|\x00V\x00|\x00{\x00!\x00\x06\x00\xCC\x00|\x005\x00(\x00\xB0\x00{\x00\xEB\x00\xCC\x00W\x00\xEA\x00\xCC\x00\xEB\x00V\x00\x06\x00|\x00\xE9\x00{\x00\xE9\x00\x06\x00\xEB\x00Y\x00\xE9\x00Y\x00\xB0\x00\xCC\x00Y\x00\xCC\x00\xEA\x00V\x00\xB0\x00!\x00\xEA\x00\xA5\x00\xE9\x00{\x00\x06\x005\x00\xEA\x00\xB0\x00|\x00(\x00\x06\x00\xEB\x00!\x00|\x00Y\x00!\x005\x00Y\x00\xA5\x00\xB0\x00W\x00\xEA\x00W\x00\xA5\x005\x00\x06\x00\xE9\x00{\x00{\x00z\x00\x06\x00{\x005\x00|\x00z\x00\xE9\x00z\x00W\x00\xB0\x00!\x00|\x00\xB0\x00(\x00\xB0\x00\xE9\x00\xEA\x00{\x00\xEB\x00\xA5\x00\xEA\x00\xEA\x00{\x00|\x00\xA5\x00z\x00\xA5\x00V\x00\xA5\x00!\x00\xA5\x00\xEB\x00V\x00W\x00\xEB\x00\xEA\x00z\x00\xEB\x00V\x00!\x00{\x00W\x00\xA5\x00\x06\x00W\x00V\x00\xCC\x005\x00Y\x00z\x005\x005\x00\xEB\x005\x00\xCC\x00z\x00\x06\x00\xCC\x00\xEA\x00Y\x00V\x00V\x00\xE9\x00\x06\x00|\x00\xA5\x00\x06\x00Y\x00\xEA\x00\xA5\x00|\x00\xB0\x00\xB0\x00V\x00z\x00z\x00{\x00\xEB\x00W\x00\xEB\x00Y\x00(\x00|\x005\x00W\x00\x06\x00W\x00z\x005\x00z\x00\x06\x00W\x00\xEA\x005\x005\x00\xEB\x00!\x00\xEB\x00\xB0\x00\xB0\x00(\x005\x00|\x00\xCC\x00W\x00{\x00Y\x005\x00(\x00\xB0\x00V\x00\xEB\x005\x00|\x00V\x00\xEA\x00\xB0\x00\xCC\x00\xEA\x00(\x00{\x00!\x00\xEB\x00(\x00\x06\x00z\x00z\x00(\x00!\x00\xCC\x00\xB0\x00\xEA\x005\x00\x06\x00W\x00\xA5\x00\xE9\x00|\x00\xB0\x00\x06\x00{\x00Y\x00\xA5\x00|\x00V\x00{\x00\xEA\x00\x06\x00\xEB\x00\xEB\x00W\x00!\x00|\x00\xEB\x00\x06\x00\xEA\x00W\x00\xE9\x00\xE9\x00W\x00(\x00|\x00!\x00!\x00V\x00|\x00\x06\x00W\x00\xCC\x00z\x00Y\x00\xA5\x00z\x00Y\x00(\x00(\x00\x06\x00\xE9\x00!\x00\xB0\x00\xE9\x00\xCC\x00Y\x00!\x00|\x00Y\x00Y\x00z\x00Y\x00V\x00(\x00\xEB\x00\xB0\x00|\x00W\x00Y\x00\xCC\x00{\x00\xCA\x00" 400 166 "-" "-"

L'IP e l'ora sono fittizi, ma voglio sapere qual è il nome dell'attacco per ottenere maggiori informazioni e come proteggere il server da questi attacchi.

PS: il server non è ancora in produzione, ha solo una pagina "in costruzione".

    
posta Alcides 03.10.2018 - 00:50
fonte

1 risposta

5

Tutto sembra indicare che qualcuno abbia provato a parlare al tuo server web usando il protocollo sbagliato.

La mancanza di un agente utente significa che non è stata inviata alcuna intestazione User-Agent. Supponendo che tu stia utilizzando un formato di log HTTP standard, sembra che tu non abbia nemmeno un'intestazione Host. Questa combinazione di per sé è ragionevolmente indicativa di qualcuno che usa il protocollo sbagliato e il codice di risposta 400 si aggiunge a questo.

La stringa di richiesta effettiva è dati binari. \x00 è la notazione del codice di escape della stringa in stile C, che indica un byte con un valore esadecimale uguale ai due caratteri dopo \x . La stringa di richiesta sembra che potrebbe essere codificata in little-endian UTF-16 (basato sui byte null e non null alternati, con i byte null al secondo), ma decodificarlo come tale dà noi:

VYz5zV\x06!VéWWêëÌÌÌ¥Ìé°!éÌ{zY|(W|!é¥é°!{|(é({(éY(¥¥¥5°°Yê|!WëVÌ{¥ÌVÌWÌ|V|{!\x06Ì|5(°{ëÌWêÌëV\x06|é{é\x06ëYéY°ÌYÌêV°!ê¥é{\x065ê°|(\x06ë!|Y!5Y¥°WêW¥5\x06é{{z\x06{5|zézW°!|°(°éê{ë¥êê{|¥z¥V¥!¥ëVWëêzëV!{W¥\x06WVÌ5Yz55ë5Ìz\x06ÌêYVVé\x06|¥\x06Yê¥|°°Vzz{ëWëY(|5W\x06Wz5z\x06Wê55ë!ë°°(5|ÌW{Y5(°Vë5|Vê°Ìê({!ë(\x06zz(!Ì°ê5\x06W¥é|°\x06{Y¥|V{ê\x06ëëW!|ë\x06êWééW(|!!V|\x06WÌzY¥zY((\x06é!°éÌY!|YYzYV(ë°|WYÌ{Ê

Che ovviamente non è una stringa di richiesta, ma rinforza il fatto che non si tratta solo di dati casuali, ma è piuttosto strutturato. C'è una sottile possibilità che potrebbe essere un'altra codifica, ma è più probabile che siano solo dati binari.

Ora, solo perché ciò è accaduto, non significa automaticamente che si tratti di un attacco o di un bot. C'è un lotto di cose che usa le porte 80 e / o 443 semplicemente perché consente loro di attraversare la maggior parte dei firewall e dei router NAT senza problemi. La semplice errata configurazione di un programma di questo tipo può facilmente far sì che accidentalmente provi a parlare con un server web. Non riconosco la stringa di richiesta come uno dei protocolli più comuni che potresti vedere con questo, ma tutto ciò significa che non l'ho mai visto prima.

    
risposta data 03.10.2018 - 17:20
fonte

Leggi altre domande sui tag