Attacco HTTP che elimina PHP-FPM [chiuso]

4

Qualcuno ha iniziato ad attaccare il mio sito pochi minuti fa e ha causato il PHP-FPM per il massimo di tutti i core (4) sui miei vps e NGINX ora sta servendo 502 per tutti gli utenti.

Vedo un sacco di queste richieste con tonnellate di agenti diversi

xx.xxx.xx.xx - - [10/Nov/2014:5:14:35 -0500] "POST / HTTP/1.1" 502 574 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11"

Vedo anche un sacco di richieste da vari siti WordPress

xxx.xx.xxx.xxx - - [10/Nov/2014:5:14:35 -0500] "GET / HTTP/1.0" 502 172 "-" "WordPress/3.9.2; http://www.xxxxxxx.com; verifying pingback from xx.xxx.xxx.xxx"

Che tipo di attacco è questo e come posso mitigarlo? Sembra una specie di botnet, le sue tonnellate e tonnellate di richieste al secondo da tutti i diversi IP e agenti.

Sto facendo funzionare un forum in modo che il mio sito si basi strongmente su nginx passando a php. Sono su NGINX 1.7.7 e PHP 5.6.2 se è importante. NGINX ha praticamente zero carichi durante l'attacco.

Modifica: quindi a quanto pare non ho fornito informazioni sufficienti.

Gestisco un forum piuttosto piccolo - forse 100-200 membri unici al giorno. Normalmente molto molto basso carico - Ho cose memorizzate nella cache e configurate abbastanza bene. Qualcuno è venuto sul mio sito e mi ha detto che avrebbe tentato di smontare il mio sito web. Pochi minuti dopo, i miei registri erano pieni di centinaia (al secondo) di questi POST e GET da tutti i diversi IP e vari blog di wordpress. Il sito ha iniziato a servire 502 errori. Ho controllato l'utilizzo del server usando HTOP e ho visto php5-fpm usando quasi il 100% di tutti e 4 i core del VPS. Ho rapidamente chiuso nginx e il carico è andato immediatamente a zero. L'ho lasciato intenzionalmente per alcune ore e l'ho rimesso a posto per scoprire che l'attacco si era fermato.

Al momento non ci sono attacchi attivi in questo momento, mi piacerebbe contribuire a mitigare ciò che questo utente è stato in grado di fare. Sto usando la rete OVHs quindi sono coperto dal loro sistema Anti DDoS VAC - tuttavia questo sembra essere a livello di applicazione e ovviamente questo non mi aiuterebbe qui.

Non sono troppo intelligente con i server web, quindi non so come "controllare" cosa c'era in queste richieste. Tutto quello che vedo dai miei registri di accesso sono alluvioni di IP univoci che fanno tutti POST alla radice del mio dominio.

    
posta Maxriff 10.11.2014 - 12:36
fonte

1 risposta

3

Caratterizzazione correlata agli attacchi DDoS:

Questo ha sicuramente le caratteristiche dell'attacco DDoS (Distributed Denial of Service), e questa è la prima cosa che sospetto. Gli elementi che mi fanno credere questo sono:

  1. Ampia varietà di fonti (distribuite)

I'm seeing a bunch of these requests with tons of different agents

(nel tuo log viene visualizzato xxx.xxx.xxx.xxx indica che provengono da un'ampia varietà di indirizzi IP)

  1. Somiglianza delle richieste

I'm also seeing a bunch of requests from various WordPress sites

La somiglianza delle richieste mi porta anche a credere Distributed Denial of Service. Ad esempio, il proprietario di una botnet potrebbe emettere il comando per attaccare il server con questo tipo specifico di richiesta.

  1. "Volume di inondazioni" di richieste (denial of service)

Inoltre, le richieste sono di tale volume che stanno esaurendo le risorse. Se si tratta di un strong aumento di volume, è probabile che si tratti di un attacco o forse di un bug. Potrebbe anche essere che il tuo sito sta diventando popolare e hai bisogno di più risorse (specialmente se è stato un aumento costante e non un strong picco nel traffico).

Come si può eseguire un attacco DDoS: In un attacco DDoS, spesso una botnet di computer di utenti innocenti rilevati da malware viene utilizzata dall'utente botnet malintenzionato per attaccare un sito specifico. Il diluvio di qualche tipo di richiesta da molte fonti diverse è una caratteristica di un attacco DDoS.

Altre possibilità:

Nota: il tuo caso sembra essere un attacco DDoS e nessuna di queste altre possibilità, in base ai tuoi chiarimenti (soprattutto perché il ragazzo ha detto che lo avrebbe fatto!)

  1. Bug in codice: come TidalWave ha menzionato, potrebbe essere qualcosa di sbagliato nel tuo codice, ma io tendo ad appoggiarlo è un vero attacco DDoS, specialmente perché non stava succedendo prima (a meno che tu non di recente ha messo il tuo sito online). Un esempio che riesco a pensare a dove potrebbe essere il tuo codice è che il tuo codice invia qualcosa a un gruppo di siti che potrebbe farti inviare questo traffico a te. Forse potresti mandare qualcosa fuori dalla trasmissione quando non dovrebbe essere trasmesso. Una cosa da notare è che se questo ha avuto inizio subito dopo aver fatto un aggiornamento, è più probabile che si tratti di un problema nel codice.

  2. Aumento del traffico sul sito web: il tuo sito potrebbe diventare più popolare! Questo è più probabile che accada se il tuo traffico è salito costantemente e sta finalmente esaurendo le tue risorse. Tuttavia, un strong picco di attività (non correlato a uno specifico "evento" sul tuo sito web, come ad esempio un disegno di concorso che si sta tenendo in quel momento) più probabilmente indicherà un attacco DDoS.

  3. Potrebbe essere qualcos'altro che nessuno di noi ha preso in considerazione.

Mitigations:

Ecco alcuni siti che ho trovato mentre cercavo di prevenire gli attacchi DDoS: link link link

Ecco ciò che ho raccolto da loro, per quanto riguarda le possibili mitigazioni:

  • Utilizza un provider di servizi Internet (ISP) che fornisce protezione contro DDoS e che non addebita alcun costo per l'utilizzo della larghezza di banda.
  • Modifica le impostazioni del firewall (in particolare la registrazione per le forze dell'ordine)
  • Fai da te (fai-da-te) (probabilmente non così buono se non sei un esperto in questo settore)
  • Soluzioni di prevenzione DDoS aziendale (costose e potrebbero non funzionare ancora)
  • Servizi cloud progettati per prevenire attacchi DDoS
risposta data 10.11.2014 - 16:31
fonte

Leggi altre domande sui tag