參考鏈接:https://www.cnblogs.com/peterpan0707007/p/7896070.html,該鏈接包含詳情,舉例,檢測工具,檢測工具的安裝與使用,解決方法
1,緩慢的http拒絕服務攻擊是一種專門針對於Web的應用層拒絕服務攻擊,攻擊者操縱網絡上的肉雞,對目標Web服務器進行海量http request攻擊,直到服務器帶寬被打滿,造成了拒絕服務。
慢速HTTP拒絕服務攻擊經過不斷的演變和發展,主要有三種攻擊類型,分別是Slow headers、Slow body、Slow read。以Slow headers為例,Web應用在處理HTTP請求之前都要先接收完所有的HTTP頭部,因為HTTP頭部中包含了一些Web應用可能用到的重要的信息。攻擊者利用這點,發起一個HTTP請求,一直不停的發送HTTP頭部,消耗服務器的連接和內存資源。抓包數據可見,攻擊客戶端與服務器建立TCP連接后,每40秒才向服務器發送一個HTTP頭部,而Web服務器再沒接收到2個連續的\r\n時,會認為客戶端沒有發送完頭部,而持續的等等客戶端發送數據。如果惡意攻擊者客戶端持續建立這樣的連接,那么服務器上可用的連接將一點一點被占滿,從而導致拒絕服務。這種攻擊類型稱為慢速HTTP拒絕服務攻擊。
2,我理解的慢速:在等待時間快結束的時候在發送新內容,然后又有40秒的時間等待消耗,如此重復。
3,具體舉例:
要保持住這個連接,RSnake構造了一個畸形的HTTP請求,准確地說,是一個不完整的HTTP請求。
- GET / HTTP/1.1\r\n
- HOST: host\r\n
- User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.503l3; )\r\n
- Content-Length: 42\r\n
在正常的HTTP包頭中,是以兩個CLRF表示HTTP Headers部分結束的。
由於Web Server只收到了一個\r\n,因此將認為HTTP Headers部分沒有結束,並保持此連接不釋放,繼續等待完整的請求。此時客戶端再發送任意HTTP頭,保持住連接即可。
X-a: b\r\n
當構造多個連接后,服務器的連接數很快就會達到上限。
4,測試工具SlowHTTPTest