ARP欺騙的原理
某機器A要向主機B發送報文,會查詢本地的ARP緩存表,找到B的IP地址對應的MAC地址后,就會進行數據傳輸。如果未找到,則A廣播一個ARP請求報文(攜帶主機A的IP地址la--物理地址Pa),請求IP地址為Ib的主機B回答物理地址Pb。網上所有主機包括B都收到ARP請求,但只有主機B識別自己的IP地址,於是向A主機發回一個ARP響應報文。其中就包含有B的MAC地址,A接收到B的應答后,就會更新本地的ARP緩存。接着使用這個MAC地址發送數據(由網卡附加MAC地址)。因此,本地高速緩存的這個ARP表是本地網絡流通的基礎,而且這個緩存是動態的。
(1) 單向欺騙:
攻擊主機欺騙受害主機,發送數據告訴受害主機:我是網關,受害主機將攻擊主機當做網關進行數據傳輸,所以導致數據被竊取。
(2) 雙向欺騙:
攻擊主機欺騙受害主機,發送數據告訴受害主機:我是網關,受害主機將攻擊主機當做網關進行數據傳輸,同時,發送數據告訴真實網關:我是受害主機,網關將攻擊主機當做受害主機進行數據傳輸。
ARP欺騙的功能
可以實現對頭部網段同局域網其他機器的欺騙,導致對其他機器的數據流量或者其他數據進行截獲。
ARP欺騙的利用前提
與受害主機在同一局域網下
ARP欺騙的防御方法
雙向綁定mac地址,跟本地和路由器都綁定一下
arp -s ip mac
ARP欺騙實例
目標主機:192.168.1.105
攻擊主機:192.168.1.103
方法一:
利用kali自帶的arpspoof進行單向arp欺騙攻擊
arpspoof -t 192.168.1.105 192.168.1.1 -i eth0
利用本地抓包軟件wireshark抓取本地數據包
選擇基於eth0網卡抓包
當目標主機對一個網站發起請求,攻擊主機在wireshark界面就可以發現抓到了包,一般需要看的是HTTP和DNS的數據包
方法二:
利用kali自帶的arpspoof
arpspoof -t 192.168.1.105 192.168.1.1 tcpdump host 102.168.1.105
當目標主機對一個網站發起請求,攻擊主機就抓到了這個網站的包