arp攻擊原理及其過程?
,ARP協議屬于數據鏈路層協議。ARP協議發明的原因是,以太網中,MAC是不變的,但是IP會經常變化,IP地址是位于網絡層而不是數據鏈路層,所以需要ARP協議來處理MAC地址和IP地址的關系
1,MAC地址唯一性
2,以太網數據包包頭部信息(Ethernet header for this Ethernet packet)包含了源MAC地址和目的MAC地址
3,以太網地址具有廣播地址 ff:ff:ff:ff:ff:ff,所以任何以太網數據包發網特定的地址將會發往所有被連接的設備
4,ARP協議中,兩種最重要的形式就是,ARP請求和ARP應答(包含發送方的MAC地址和IP地址),任何數據包的以太網頭部(Ethernet header)都包含一個值(a type value),這個值用來判斷是ARP類型信息(ARP-type message)還是IP數據包(IP packet)
5,ARP請求是發送到廣播地址的,所有設備都能收到,路由器就可以用來獲取每個設備的IP地址和每個設備的MAC地址,用來形成MAC與IP的對應表
6,下圖就是兩個系統ARP請求和ARP應答的簡單流程(Frist system 沒有ARP緩存,所以它進行了廣播)
一:ARP攻擊三要素
0,偽造發送方IP地址,產生ARP攻擊的條件的根本原因是無法驗證數據包中的發送方IP地址真假,可以偽造數據包中的發送方IP地址
1,當接受方收到包含IP地址的ARP應答的時候,接收方會更改自己的IP地址和MAC地址的對應表,對比后,如果是新的MAC地址,就會覆蓋(ARP緩存如果設置為靜態就不會覆蓋),PS:這好像就是傳說中的毒化ARP緩存。
2,ARP數據是沒有狀態信息的,這是為了簡化協議(協議設定的初衷),這也就意味著系統即便是發起沒有ARP請求,也能接收到ARP應答,攻擊流程如下圖