Web壓力測試是目前比較流行的話題,利用Web壓力測試可以有效地測試一些Web伺服器的運行狀態和回應時間等等,對於Web伺服器的承受力測試是個非常好的手法。Web 壓力測試通常是利用一些工具,例如微軟的Web Application Stress、Linux下的siege、功能全面的Web-CT等等,這些都是非常優秀的Web壓力測試工具。 雖然這些工具給我們測試伺服器承受能力帶來方便,但是它們的危害卻更是驚人,甚至於利用隨便一種比較全面的測試載入器就可以對一台小型的 Web伺服器發動災難性的拒絕式攻擊。下面我就帶大家利用微軟的Web Application Stress進行一次Web壓力測試,其目的是為了讓大家看到它的巨大危害。 一、工具簡單介紹 Microsoft Web Application Stress Tool 是由微軟的網站測試人員所開發,專門用來進行實際網站壓力測試的一套工具。透過這套功能強大的壓力測試工具,您可以使用少量的用戶端電腦模擬大量使用者上線對網站服務所可能造成的影響,在網站實際上線之前先對您所設計的網站進行如同真實環境下的測試,以找出系統潛在的問題,對系統進行進一步的調整、設定工作。就是因為這些特性,才使它具備了D.O.S轟炸的功能。 小提示:D.O.S(拒絕服務的攻擊)通過使你的服務電腦崩潰或把它壓跨來阻止你提供服務。簡單來說,就是讓你的電腦提供可能多的服務從而使你的電腦陷入崩潰的邊緣或崩潰。 二、工具簡單設定 開啟Web Application Stress Tool,很簡潔的一個頁面(1),上面是工具列,左下方是功能選項,右下方是詳細設定選項。在對目標Web伺服器進行壓力測試之前,先對它進行一些必要的設定。 圖1 1. 在“settings”的功能設定中(2),一個是Stress level (threads)這裡是指定程式在後台用多少線程進行請求,也就是相當於類比多少個客戶機的串連,更加形象的就是說設定多少轟炸的線程數。一般填寫 500~1000,因為這個線程數是根據原生承受力來設定的,如果你對自己的機器配置有足夠信心的話,那麼設定的越高,轟炸的效果越好。 圖2 2.在“Test Run Time”中來指定一次壓力測試需要持續的時間,分為天、小時、分、秒幾個單位層級,你根據實際情況來設定吧! 3.其餘的選項不太重要,這裡就不再浪費筆墨,朋友們可以自己嘗試一下設定。 三、壓力測試 工具介紹完了,下面來準備條件:這裡與一個朋友商量好進行測試,他是單機上網,機器配置是CPU:Athlon XP2500+、記憶體512MB、硬碟80GB等,機器配置還不錯。他在機器上安裝了IIS,架設了一台對外的Web伺服器,Web服務中的程式是動網 7.0。我就利用壓力測試工具對這台伺服器進行測試。 步驟1:在工具中點右鍵,選擇Add命令,增加了一個新的測試專案:New script,對它進行設定,在主選項中的server中填寫要測試的伺服器的IP地址。在下方選擇測試的Web串連方式,這裡的方式Verb選擇 get,path選擇要測試的Web頁面路徑,這裡填寫/Index.asp,即動網的首頁檔案(3)。 圖3 步驟2:在“Settings”的功能設定中將Stress level (threads)線程數設定為1000。完畢後,點工具中的灰色三角按鈕即可進行測試(4)。測試完畢,等待朋友把工作管理員以及串連查看的發過來! 圖4 攻擊開始後,朋友從工作管理員中可以看到CPU使用率已經達到100%,損耗率達到最大(5)。在CMD視窗中使用命令netstat -an,可以看到我的IP地址在朋友伺服器上的80連接埠進行了非常多的串連(6)。而且它的Web網站已經打不開了,提示過多使用者串連,達到了跟 D.O.S攻擊一樣的目的。 圖5 圖6 試想,如果利用多台肉雞對一台伺服器進行Web壓力測試,那麼對這台伺服器來說將是滅頂之災,所以朋友們在使用它之前一定要謹慎考慮。 |