從2000年開始黑客第一次成功癱瘓當時某些著名的電子商務網 站 后,DoS攻擊一戰成名,直到今日,此種手法仍能活躍,根本原因是TCP/IP通訊協議或程序設計的存在缺陷,所以無法根除此類的攻擊手法,但也許可利用相關的配置來降低此類攻擊的成功率。本文介紹了三種加固Apache服務器從而防范和減弱Slowloris攻擊的方法。
Slowloris攻擊是利用Web Server的漏洞或設計缺陷,直接造成拒絕服務。其通過極低的速度往服務器發送HTTP請求,引起Web Server的所有連接都將被惡意連接占用,導致拒絕服務。與傳統的DoS攻擊不同的地方在于此法只用單一的服務器加上少許的帶寬就可以癱瘓Web服務器。它一般對Web服務器發送不完整的數據包并且以單一 結尾,這個不是完整的HTTP數據包。會造成Web服務器堵塞達到最大連接數。此類攻擊針對Web服務器,使用Ping命令檢測看不到效果。Slowloris攻擊利用了HTTP協議的一個特點——等待完整的HTTP請求收到才會進行處理。如果一個HTTP請求不完整,或者是在網絡上慢速傳遞,HTTP服務器會一直為這個請求保留資源等待它傳輸完畢。如果HTTP服務器有太多的資源都在等待,這就構成了DoS攻擊。
通常對于Slowloris攻擊給出的解決辦法是:限制Web服務器的HTTP頭部傳輸的最大許可時間。
mod_reqtimeout模塊在Apache2.2.15版本后,該模塊已經被默認包含用戶可配置從一個客戶端接收HTTP頭部和HTTPbody的超時時間和最小速率。如果一個客戶端不能在配置時間內發送頭部或body數據,服務器會返回一個408(Request Time out)錯誤。
修改apache配置文件httpd.conf添加如下內容:……p>