Richiesta parziale DOS slowloris con intestazioni successive?

0

Lettura dell'attacco Slowloris:

Slowloris tries to keep many connections to the target web server open and hold them open as long as possible. It accomplishes this by opening connections to the target web server and sending a partial request. Periodically, it will send subsequent HTTP headers, adding to—but never completing—the request.

Osservando alcuni esempi e scrivendone uno io stesso, è abbastanza facile DOSare l'obiettivo semplicemente mantenendo aperto il limite massimo di connessioni, ricreando le connessioni quando il target scade.

Che senso ha inviare successive intestazioni HTTP dopo aver aperto una connessione con una richiesta parziale? L'invio di intestazioni successive non sembra resettare il timeout della connessione.

    
posta wulfgarpro 14.05.2017 - 12:46
fonte

1 risposta

0

Come sottolineato nei commenti, c'è in effetti un grado di variabilità tra server diversi. Ho sbagliato a pensare che il timeout della connessione non sia stato ripristinato quando ho inviato intestazioni successive.

Ho implementato un Slowloris di base con nodejs qui , e testato su Ubuntu Apache2 (2.4.18-2ubuntu4 .1) per dimostrarlo.

Ho ottimizzato la variabile Timeout da 300 a 10 secondi per questo test. Dopo aver fatto ciò, Apache ha riportato molti errori Timeout richiesta nel registro errori se l'intervallo impostato per l'invio di intestazioni successive era superiore a 10 secondi (riga 54). Riducendo questo intervallo a meno o uguale a 10 secondi, Apache raramente, se mai, riportava errori di timeout.

    
risposta data 23.05.2017 - 08:55
fonte

Leggi altre domande sui tag