分布式拒絕攻擊 DDOS 軟體瘋狂ddos攻防

2022-11-19 16:12:02 字數 4606 閱讀 4560

首先,我寫這篇文章的目的,並不是我想成為什麼hacker之類,而且我不並不鼓勵任何人利用它來做一些有損他人的事情,我只是想多一些人關注網路安全,共同研究並防禦dos。因為我是深受其害:(,所以,這篇文章僅用於技術參考,供大家研究ddos防禦之用。

如果你利用它來做一些不合法的事情,那結果與我無關。

拒絕服務攻擊(dos,denial of service)可以指任何使服務不能正常提供的操作。如軟體bug,操作失誤等。不過現在因為失誤操作而造成的dos,可能性非常小,更多的是惡意的攻擊行為。

現在拒絕服務攻擊早已演變為分布式拒絕服務攻擊(ddos,distributed denial of service),利用更多的**集中攻擊目標,其危害更大。

我們大家都知道tcp/ip協議現在已經成為整個internet框架協議,可以說,如果沒有tcp/ip,至少internet不會像現在這樣普及,甚至不可能會有internet。但凡事皆有兩面性,tcp/ip使我們大家受益,同時因為協議本身構造的問題,它也成為別人攻擊我們的工具。我們以tcp三握手建立連線的過程來說明。

一。tcp syn flood

1.客戶端(client)傳送乙個包含syn(synchronize)的tcp包至伺服器,此資料報內包含客戶端埠及tcp序列號等基本資訊。

2.伺服器(server)接收到syn包之後,將傳送乙個syn-ack包來確認。

3.客戶端在收到伺服器的syn-ack包之後,將回送ack至伺服器,伺服器如接收到此包,則tcp連線建立完成,雙方可以進行通訊(感覺像,一拜天地...二拜高堂...

送入洞房...哈哈)

問題就出在第3步,如果伺服器收不到客戶端的ack包,將會等待下去,這種狀態叫做半連線狀態。它會保持一定時間(具體時間不同作業系統不同),如果syn請求超過了伺服器能容納的限度,緩衝區佇列滿,那麼伺服器就不再接收新的請求了,其他合法使用者的連線都被拒絕掉。這種攻擊往往事半罪倍,殺傷力超強。

當然,dos攻擊的方法多種多樣,如:udp flood,icmp/ping,icmp/smurf...,具體原理的介紹大家可以到去看看,有很詳細的原理及常用攻擊軟體介紹。

不過說到dos攻擊軟體,最具代表的莫過於tfn2k (tribe flood network 2000),其作者是德國大名鼎鼎的mixter( 其主頁好像最近正在埋頭搞什麼tfn3k,哎~~,不知道又有多少人寢食難安了...

二.tfn2k攻擊原理

的攻擊體系。

tfn2k應該算是ddos攻擊中的代表作,其所能實現的功能讓人瞠目結舌,嘆為觀止...(對它的敬畏有如滔滔江水,延續不絕...)來看看它的架構。

主控端---執行tfn客戶端,來遙控並指定攻擊目標,更改攻擊方法.(罪大惡極)

**端---被植入並執行td程序的犧牲品,接受tfn的指揮,攻擊的實施者.需要注意的是,乙個攻擊者,往往控制多台**來完成攻擊,而且其系統多為unix,linux等.(可憐的犧牲品)

目標主機---被攻擊的主機或網路,曾經被ddos的有yahoo、amazon、cnn、e-bay等.(最大的受害者,鬱悶如我)

特性。◆ 主控端通過tcp、udp、icmp或隨機性使用其中之一(預設.隨機)的資料報向**端主機傳送命令,攻擊方法包括tcp/syn、udp、

icmp/ping、混合攻擊、targa3等。

◆ 主控端與**端的通訊採取單向,即主控端只向**端傳送命令,並且會採取隨機的頭資訊,甚至虛擬的源位址資訊,**端不會逆向向主控端傳送任何資訊.

◆ 所有命令經過cast-256演算法加命,其關鍵字即編譯程式時的輸入的口令.並且這個口令做為唯一認證憑證.

◆ 利用td程序,主控端可以遠端執行shell命令.

◆ td程序的名稱可以在編譯時更改,更便於隱藏.

◆ tfn可以編譯執行於win32及linux系統的.

...至於偽造源ip位址等功能,更是基本功能,並且其與老版本的tfn相比,它的發包效率更高,我自已的測試,在短短不到5分鐘,兩台**機,使我的redhat linux 9.0系統癱瘓.

三.tfn2k 實戰測試

1.測試環境:

軟體:redhat linux 9.0

硬體平台:

master:

ip: 192.168.0.6

piv2.4/256*2/rtl8139

ag1 :

ip: 192.168.0.2

piv2.4/256*/rtl8139

ag2 : ip: 192.168.0.3

piv2.6/512*2/3c905

aim: 192.168.0.5

piv2.66c/512*2/3c905

switch: d_link des 1024r

1.**因為此軟體非比尋常,所以我並不提供**位址,如果有興趣,自已到網上找吧)

2.解壓: tar zxvf

3.修改檔案

a. src/makefile 如果你的系統是linux系統,不需要做任何修就可以,如果是win32系統,請將

# linux / *bsd* / others

cc = gcc

cflags = -wall -o3

clibs =

這幾行注釋掉,並將

# win32 (cygwin)

#cc = gcc

#cflags = -wall -dwindoze -o2

#clibs =

這幾行的注釋去掉.因為我的測試系統為redhat linux 9.0所以並未做任何修改.

b. src/ ,預設的就可以用,如果感興趣,可以照其注釋資訊進行調整。

c. src/ 這裡要做一些修改,否則編譯會有錯誤,發生重複定義。

/*struct in_addr

;*/注意啊~~我可是將它放在"/* */"之間,也就是注釋掉了:)

d.更改編譯器:

因為tfn2k支援的是egcs-1.1.2-30,而redhat linux 9.

0所包含的是gcc-3.2.2-5,所以如果不替換掉gcc,tfn2k是編譯不過去的.

需要注意的是,更改之後,有可能會造成基於gcc3.2.2的軟體編譯不去,請謹慎而行.

方法很簡單的,找到一張redhat linux 6.2安裝盤,將拷到~/

cd /mnt/cdrom/redhat/rpms

cp egcs-1.1.2-30* cpp-1.1.2-30* ~/

安裝cpp rpm -uvh --nodeps --oldpackage

安裝egcs rpm -uvh (如果提示有誤,用nodeps、oldpackages、ignoreos等引數忽略過去就是了)

4.編譯tfn2k

cd tfn2k/src

make

首先會談出乙個宣告,你必須接受,之後會提示輸入8-32位密碼,前邊提到過,這是唯一的認證憑證,會被分發於td程序中,所以一定

要記牢噢~。

編譯通過後,會產生td及tfn,這就是大名鼎鼎的tfn2k啦~,td是守護程序,用來安裝在**中的,而tfn就是控制端.

5.安裝td.

將td上傳到我的兩台**,ag1(192.168.0.

2)和ag2(192.168.0.

3) ,因為我只不過測試,所以用的是合法的root來上傳並執行td程序的,如果真要找到並安裝乙個**,你可能得費點兒神,因為沒有乙個管理員會說「come on baby ~~.我給你root,來安裝td做**吧」

[root@test /] ftp 192.168.0.2

connected to 192.168.0.2.

530 please login with user and pass.

530 please login with user and pass.

name (192.168.0.2:root): wjpfjy

331 please specify the password.

password:

230 login successful. h**e fun.

remote system type is unix.

using binary mode to transfer files.

ftp> put td (上傳td)

local: td remote: td

227 entering passive mode (192,168,0,3,198,225)

553 could not create file.

ftp> by (退出ftp)

221 goodbye.

[root@test /]ssh 192.168.0.2 登陸到ag1 以執行td ,注意,我用的是root帳戶,這樣才有足夠的許可權來執行它.

[email protected] password:

last login: tue feb 24 06:51:13 2004

[root@ ag1 /]find / -name td -print 找到剛上傳過來的檔案td.

[root@ ag1 wjpfjy/]chmod a+x td 使之具有執行許可權.

[root@ ag1 wjpfjy/]./td 執行td ,這樣你就擁有乙個**了,它會對你唯命是從的:(。

用同樣的方法在ag2 (192.168.0.3)上安裝並執行tfn2k程序td.

6.攻擊開始(悲慘的回憶上演中...)

回到master(192.168.0.6 ),準備演練...

分布式能源

天然氣分布式能源專案 des 開發及審批流程 2014 7 11 1 專案開發區域選擇 選擇地區 經濟發達 能源品質要求高的城市,以及天然氣 有保障,天氣氣以及電 熱價有利潤空間或有專門補貼支援政策的地區 選擇物件 適合做分布式能源站的使用者包括製造業園區 高新區 技術開發區 城市規劃新區或中小城鎮...

分布式系統

學院 計算機學院 專業 網路工程 班級 xx 姓名 xx 學號 xx 第一步 建立控制台 開始這個過程首先要在 執行 命令中輸入microsoft management console 管理控制台,mmc 命令。當你輸入之後,windows將會載入乙個空的管理控制台。現在,你要在控制台的 檔案 選單...

分布式能源優勢

由於可以提高能源利用率和供電安全性,實現按需供能以及為使用者提供更多選擇,分布式能源系統成為全球電力行業和能源產業的重要發展方向。當前,由於一次能源逐漸短缺,環境壓力越來越大,追求高效 低碳 清潔利用能源是發展的必然趨勢。在世界飽受能源緊缺問題困擾的情況下,美國以及丹麥等歐洲國家近年來通過推廣應用分...