ARP攻擊原理簡析及防禦措施
0x1 簡介
網路欺騙攻擊作為一種非常專業化的攻擊手段,給網路安全管理者,帶來嚴峻的考驗。網路安全的戰場已經從網際網路蔓延到使用者內部的網路,特別是區域網。目前利用ARP欺騙的木馬病毒在區域網中廣泛傳播,導致網路隨機掉線甚至整體癱瘓,通訊被竊聽,資訊被篡改等嚴重後果。
0x2 ARP協議概述
ARP協議(address resolution protocol)地址解析協議
一臺主機和另一臺主機通訊,要知道目標的IP地址,但是在區域網中傳輸資料的網絡卡卻不能直接識別IP地址,所以用ARP解析協議將IP地址解析成MAC地址。ARP協議的基本功能就是通過目標裝置的IP地址,來查詢目標裝置的mac地址。
在區域網的任意一臺主機中,都有一個ARP快取表,裡面儲存本機已知的此區域網中各主機和路由器的IP地址和MAC地址的對照關係。ARP快取表的生命週期是有時限的(一般不超過20分鐘)。
舉個例子:假設區域網中有四臺主機
主機 |
IP地址 |
MAC地址 |
閘道器 |
A |
192.168.0.2 |
Mac-a |
192.168.0.1 |
B |
192.168.0.3 |
Mac-b |
192.168.0.1 |
C |
192.168.0.4 |
Mac-c |
192.168.0.1 |
D |
192.168.0.5 |
Mac-d |
192.168.0.1 |
主機A想和主機B通訊
主機A會先查詢自己的ARP快取表裡有沒有B的聯絡方式,有的話,就將mac-b地址封裝到資料包外面,傳送出去。沒有的話,A會向全網路傳送一個ARP廣播包,大聲詢問:我的IP地址是192.168.0.2,硬體地址是mac-a,我想知道IP地址是192.168.0.3的硬體地址是多少? 此時,區域網內所有主機都收到了,B收到後會單獨私密迴應:我是192.168.0.3,我的硬體地址是mac-b,其他主機不會理A的此時A知道了B的資訊,同時也會動態的更新自身的快取表
0x3 ARP協議的缺陷
ARP協議是建立在信任區域網內所有節點的基礎上的,他的效率很高。但是不安全。它是無狀態的協議。他不會檢查自己是否發過請求包,也不知道自己是否發過請求包。他也不管是否合法的應答,只要收到目標mac地址是自己的ARP reply或者ARP廣播包(包括ARP reply和ARP request),都會接受並快取。
0x4 ARP攻擊原理
ARP欺騙攻擊建立在區域網主機間相互信任的基礎上的當A發廣播詢問:我想知道IP是192.168.0.3的硬體地址是多少?
此時B當然會回話:我是IP192.168.0.3我的硬體地址是mac-b,可是此時IP地址是192.168.0.4的C也非法回了:我是IP192.168.0.3,我的硬體地址是mac-c。而且是大量的。
所以A就會誤信192.168.0.3的硬體地址是mac-c,而且動態更新快取表這樣主機C就劫持了主機A傳送給主機B的資料,這就是ARP欺騙的過程。
假如C直接冒充閘道器,此時主機C會不停的傳送ARP欺騙廣播,大聲說:我的IP是192.168.0.1,我的硬體地址是mac-c,此時區域網內所有主機都被欺騙,更改自己的快取表,此時C將會監聽到整個區域網傳送給網際網路的資料報。
0x5 ARP病毒攻擊症狀
通常表現:-開啟網頁速度非常慢,甚至打不開
-提示IP地址衝突
-甚至導致校園網癱瘓斷網
-一般會繫結木馬病毒,竊取使用者賬號密碼
0x6 ARP病毒攻擊形式
- 從協議內部分析
-假冒ARP reply包(單波或廣播),向單臺主機或多臺主機發送虛假的IP/MAC地址
-假冒ARP request包(單播或廣播),實際上是單播或廣播虛假的IP、MAC對映。
-假冒中間人,啟用包轉發向兩端主機發送假冒的ARP reply,由於ARP快取的老化機制,有時還需要做週期性連續性欺騙。
2. 從影響網路連線通暢的角度看
-對路由ARP表的欺騙
ARP病毒截獲閘道器資料,讓路由器獲得錯誤的內網MAC地址,導致路由器把資料傳送給錯誤的mac,是內網內的主機斷網
-偽造內網閘道器
ARP病毒通過冒充閘道器,是內網計算機發送的資料無法到達真正的路由器閘道器,導致內網計算機斷網
0x7 ARP欺騙攻擊監測技術
1.手動監測
網路管理員可以通過命令檢視主機的ARP表或路由器的ARP表
也可以用Sniffer工具進行抓包,檢視可疑的<IP,MAC>地址對映
2.動態監測
- 被動監測 (ARP watch,ARP Guard)
僅監測網路中是否存在ARP欺騙,不主動向外發送ARP報文
-主動監測(ARP防火牆)
能夠動態的監測區域網內針對本主機和針對閘道器的ARP欺騙,但如果配置錯誤,ARP防火牆會向區域網內傳送大量的ARP報文,造成ARP報文的廣播風暴,影響網路通訊。
在這裡推薦一款檢視區域網Mac地址和主機IP匹配顯示的軟體:Nbtscan 很好用網上也有使用說明,對於查詢攻擊主機很犀利、
0x8 ARP欺騙攻擊的防禦
-ARP雙向繫結
在pc端上 IP+mac 繫結
在網路裝置(交換路由)上 採用ip+mac+埠繫結
閘道器也進行IP和mac的靜態繫結
-採用支援ARP過濾的防火牆
-建立DHCP伺服器
ARP攻擊一般先攻擊閘道器,將DHCP伺服器建立在閘道器上
-劃分安全區域
ARP廣播包是不能跨子網或網段傳播的,網段可以隔離廣播包。VLAN就是一個邏輯廣播域,通過VLAN技術可以在區域網中建立多個子網,就在區域網中隔離了廣播。。縮小感染範圍。 但是,安全域劃分太細會使區域網的管理和資源共享不方便。
前幾天體育課認識的一基友,遭ARP攻擊了,問我怎麼防,直接給我問懵了,就看了看,對於個人來說,在區域網內遭ARP攻擊,還能咋辦,除了裝ARP防火牆,用代理,我也沒轍。
不過最好的辦法就是用arp –a命令檢視一下arp快取表,看誰在攻擊你,打電話給網管,讓網管滅了它。