使用 Burp Suite 模擬駭客進行 DoS 攻擊
大家好,我是 Cindy,最近因為工作的關係知道了 Burp Suite 這套軟體,主要是可以對網站進行安全性測試的軟體,因為可以免費試用,所以當然要下載來用看看呀!(本篇不會介紹怎麼下載,因為跟著官網的步驟就可以完成囉!)
在開始模擬駭客之前,先幫大家科普一下什麼是 DoS 攻擊?
- 阻斷服務攻擊(英語:denial-of-service attack,簡稱 DoS 攻擊)亦稱洪水攻擊,是一種網路攻擊手法,其目的在於使目標電腦的網路或系統資源耗盡,使服務暫時中斷或停止,導致其正常使用者無法存取。
其實維基百科就寫得很清楚了 XD
那麼知道 DoS 是什麼之後我們就要開始模擬駭客了,首先我的目標是要對我的網站進行攻擊,網站有忘記密碼的功能,在使用者輸入 email 之後會寄信給使用者,這邊先攔截第一次的 request,接著發送多筆相同的 request 進行攻擊,目的是讓使用者收到大量相同的信件,消耗攻擊目標信件的資源。
在開始之前先把要攻擊的網站做出來,最近發現工作久了實在是不常做 rails new,這樣好像不太好,趁現在來練一下?
大家可以用這個 測試用專案 在本地端進行測試,因為已經在開發環境安裝 letter_opener 這個套件,所以可以直接看到發送了幾封信。
開始測試
- 打開 Burp Suite 的 Proxy 的 Intercept,點選 Open Browser
- 在 Browser 輸入要攻擊網站的網址,這邊要測試本地端的忘記密碼頁面,所以是
http://localhost:3000/users/password/new
- 點選 Intercept is off,此按鈕會變藍色並顯示 Intercept is on 的文字,表示接下來在 Browser 的 request 會先被攔截下來,Burp Suite 和 Browser 的畫面如下:
- 點選 Send me reset password instructions 的按鈕,request 會被攔截,將 Host 反色後點選滑鼠右鍵 Send to Intruder,如下圖:
- 可以在 Intruder 的 Position 設定 payload 的範圍,接著到 Payloads 設定,這邊的設定會產生 9 個 request,畫面如下:
- 註:在 Position 設定中用符號 § 標記範圍
- 點選 Start attack,畫面上 302 有轉址的表示有成功寄出信件(這邊因為沒有調整 Position 所以有些是失敗的)
- 最後回到 Proxy 點選 Intercept is on 的按鈕,讓攔截停止,這樣就完成了一次的攻擊了。
用上面的方法就可以對自己的網站進行測試囉!