3.15都沒法打的一個DoS開源專案

哈嘍,大家好,我是強哥。

不知道大家還記不記得強哥之前發的一篇文章:,裡面Diss了一個DoS的開源專案憑藉花裡胡哨的介面騙人。這個在3。15這個日子真的是應該再拿出來鞭屍一下。

3.15都沒法打的一個DoS開源專案

不過,今天強哥想要介紹的是另一款DoS開源專案。

當然了,首先還是要宣告一點,介紹這個專案不是為了讓大家學了去攻擊別人的網站,而是想要讓大家能夠了解一些網路安全相關的知識,哪天被人用DoS攻擊了,至少知道DoS是個什麼玩意吧。

簡介

3.15都沒法打的一個DoS開源專案

哈哈哈,沒錯,專案的介紹就是這麼簡單。作者的README檔案只給我們提供了一個YouTube的影片地址,而且可能是因為某些不可限力已經沒法訪問了。

不過大家既然能找到它,自然知道是個幹什麼的玩意兒。

專案結構

這個也很簡單,就兩個檔案:

headers。txt請求頭配置資訊

hammer。py專案主程式碼,由python編寫 別看就簡簡單單的兩個檔案,對於我們瞭解DoS攻擊來說已經足夠了。

反射攻擊

這個專案強哥研究了一下,攻擊方式也很刁鑽,不但有使用直接攻擊的方式硬鋼目標主機,而且還透過

反射攻擊

的方式進行雙管齊下。

那麼什麼是

反射攻擊

呢?要理解反射攻擊,首先要理解什麼是直接攻擊。直接攻擊就是攻擊者拿自己的機子去攻擊目標主機,這樣的話,攻擊者很容易被查到攻擊的源頭,雖然攻擊者可以使用偽造源IP地址的方式(如使用IP代理池,這個強哥之前的文章也有提過:)進行隱藏,但更好的方式是使用反射攻擊技術。

發射攻擊又被稱為DRDoS(分散式反射拒絕服務)攻擊,是指利用路由器、伺服器等設施對請求產生應答,從而反射攻擊流量並隱藏攻擊來源的一種分散式拒絕服務攻擊技術。

3.15都沒法打的一個DoS開源專案

專案原理

如上所述,專案寫了兩個方法,一個是直接攻擊的方式,一個是反射攻擊的方式。

首先直接攻擊自不必多說,就是一個

while(True)

的死迴圈不斷的傳送TCP請求,相關程式碼如下:

while True: packet = str(“GET / HTTP/1。1\nHost: ”+host+“\n\n User-Agent: ”+random。choice(uagent)+“\n”+data)。encode(‘utf-8’) s = socket。socket(socket。AF_INET, socket。SOCK_STREAM) s。connect((host,int(port))) if s。sendto( packet, (host, int(port)) ): s。shutdown(1) print (“\033[92m”,time。ctime(time。time()),“\033[0m \033[94m <——packet sent! hammering——> \033[0m”) else: s。shutdown(1) print(“\033[91mshut<->down\033[0m”) time。sleep(。1)

強哥這裡重點說一下反射攻擊,既然是反射,當然要有反射器了,這個專案主要用到了兩個反射地址:

bots。append(“http://validator。w3。org/check?uri=”)bots。append(“http://www。facebook。com/sharer/sharer。php?u=”)

其實,這兩個都是正規的網站地址,比如第一個就是w3用來驗證網站程式碼是否符合規範的網站。我們只要在連結引數

uri

或者

u

後跟上目標主機的地址,傳送請求後,這兩個網站就會對目標網站進行發起請求,檢查網站的內容。

這個專案就是透過這種方式,藉助第三方網站服務地址,然後外層包一個

while(True)

死迴圈,巧妙的來隱藏自己,讓反射網站攻擊別人。

不過上面兩個地址目前看著好像是都已經無法使用了……

學習

專案還是比較有學習價值的,特別是對於想要了解網路安全的小夥伴來說,一個好的專案真的是能夠很快的提升我們對知識點的認知。

當然,有興趣想具體學習專案程式碼的小夥伴,強哥設定個門檻,大家可以關注公眾號「強哥叨逼叨」回覆「hammer」獲取到專案的具體地址。

專案程式碼僅供學習使用,畢竟目前專案能使用的方式只剩下直接攻擊,直接用它,不但相當於把自己赤條條的暴露在被攻擊者面前,而且完全沒法實現所謂的攻擊。

所以,大家且行且珍惜。遵紀守法,好好學習,不要是個東西,拿來就用。也是想讓大家長個心眼,在這個3。15的特殊日子,學會提升自己的辨識能力,多關注強哥分享的文章才是硬道理。

好啦,今天就到這。