ARP協議--Address Resolution Protocol--地址解析協議
在以太網中, 一個主機要和另一個主機進行直接通信, 必須要知道目標主機的MAC地址。 但這個目標MAC地址是
如何獲得的呢?它就是通過地址解析協議獲得的。
f
這是網絡底層知識, 一個合格的hacker應該必備的知識...入侵時很有用..
首先先說下命令,
arp[-a [InetAddr] [-N IfaceAddr]] [-g [InetAddr] [-N IfaceAddr]] [-d InetAddr [IfaceAddr]] [-s InetAddr EtherAddr [IfaceAddr]]
-a[ InetAddr] [ -N IfaceAddr] 與-a相同 -g[ InetAddr] [ -N IfaceAddr]
顯示所有接口的當前 ARP 緩存表。 要顯示特定 IP 地址的 ARP 緩存項, 請使用帶有 InetAddr 參數的 arp -a, 此處的 InetAddr 代表 IP 地址。 如果未指定 InetAddr, 則使用第一個適用的接口。 要顯示特定接口的 ARP 緩存表, 請將 -N IfaceAddr 參數與 -a 參數一起使用, 此處的 IfaceAddr 代表指派給該接口的 IP 地址。 -N 參數區分大小寫。
-d InetAddr [IfaceAddr]
刪除指定的 IP 地址項, 此處的 InetAddr 代表 IP 地址。 對于指定的接口, 要刪除表中的某項, 請使用 IfaceAddr 參數, 此處的 IfaceAddr 代表指派給該接口的 IP 地址。 要刪除所有項, 請使用星號 (*) 通配符代替 InetAddr。
-s InetAddr EtherAddr [IfaceAddr]
向 ARP 緩存添加可將 IP 地址 InetAddr 解析成物理地址 EtherAddr 的靜態項。 要向指定接口的表添加靜態 ARP 緩存項, 請使用 IfaceAddr 參數, 此處的 IfaceAddr 代表指派給該接口的 IP 地址。
/? "幫助
Such as
arp -a 顯示所有接口的ARP 緩存表
arp -a -N 123.123.123.123 對指定的IP地址為123.123.123.123的接口,顯示其ARP緩存表
arp -s 123.123.123.123 FF-FF-FF-FF-FF-FF 將IP地址123.123.123.123解析成物理地址FF-FF-FF-FF-FF-FF并添加到靜態ARP緩存項
說完命令后我們來試試效果,
到本機測試:Dos下輸入 arp -a,回顯
Interface: 192.168.1.2 --- 0x2
Internet Address Physical Address Type
192.168.1.1 00-46-05-01-6a-14 dynamic
這里值得注意的是Type是ip和mac的對應關系類型.
在Ping下局域網下任意一個IP
再次arp -a ,回顯
Interface: 192.168.1.2 --- 0x2
Internet Address Physical Address Type
192.168.1.1 00-46-05-01-6a-14 dynamic
192.168.1.5 00-55-05-01-6a-FF dynamic
可以看到多了一個IP,這個就是因為你新ping一個IP后返回那IP的MAC地址會添加到靜態ARP緩存項,利用這點我們可以很容易的滲透內網.
比如我們要在內網入侵一主機,但是主機里有防火墻,并且只對某一IP開放.
我們可以先掃描這一IP 如192.168.2.3
思路就是先想辦法 讓192.168.2.3當機,一旦他死機,主機里面的ARP緩存表就會把這IP刪了,然后我們在改自己
的IP,發一個ping 給主機,要求主機更新主機的arp緩存表,主機當然不知道已經換了機器啊,加入我們的IP及與
MAC的對應關系,并且更新arp緩存表,然后我們就可以進一步活動了...
接下來,我們說下基于ARP欺騙的監聽原理
監聽,我想大家肯定最先想到的是那些嗅探工具,但是那些一旦遇到交換機就沒用了,這時候就是ARP出場的時候了
假設有三臺主機A,B,還有我們的主機, 位于同一個交換式局域網中
A與B正在通信,假如我們想要監聽A―>B通信的內容,于是我們就可以給A發送一個偽造的ARP數據包,告訴A, B的IP對應的MAC地址為我們的MAC地址,于是,A也就會相應的刷新自己的ARP緩存,將發給B的數據,源源不斷的發送到我們的主機上來,這樣我就可以對接收到的數據包進行分析就好了,達到了監聽的目的.當然,因為動態ARP緩存是動態的,有超時時間的,所以我們必須每隔一段時間就給A發送一個ARP數據包
雖然我們這樣達到了目的,但是A到B的通信卻被停止了,為了不讓B發現,我們還要對每次接收到的數據包進行轉發,全部都轉發給B,這樣就天衣無縫了
之前的查看QQ號碼也就是這個原理..
再說下怎么偽造一個ARP數據包.用到的工具Iris Traffic Analyzer,這是一款網絡流量分析監測工具.
首先,我們可以先用Iris Traffic Analyzer截獲一個ARP報文,點工具欄上類似播放健,然后對截獲的ARP請求報文編輯, 讓它變成一個免費ARP報文,所謂的免費ARP報文就是“自己請求自己的MAC地址”--主要目的就是避免IP地址沖突!
我們把ARP請求報文的
目的MAC地址由標準的FF-FF-FF-FF-FF-FF, 改正我們需要欺騙的目的主機
1.1.1.1的MAC地址:00-0c-76-c6-55-fc
源MAC地址改成我們00-01-02-03-04-05
對于ARP報文頭, 我們需要修改:
Sender Hardware Address為:00-01-02-03-04-05
Sender IP Address和Target IP Address都改成:1.1.1.1
然后發送報文,在到本機 執行 arp -a 就可以看到結果了...
后記:至于防范,網上到處都是這些文章.
ARP---套用落伍的一句話!
很好,很強大!
很好,很強,也很大!