ARP協議工作原理
1. 什么是ARP
- ARP定義: 地址解析協議(Address Resolution Protocol),是根據IP地址獲取物理地址的一個TCP/IP協議。
2. 工作原理
- ARP表: 每臺計算機都需要一個ARP表,用來保存IP地址和MAC地址的映射關系。
- 查詢過程: 訪問IP地址時,計算機會先查ARP表,找到對應的MAC地址。如果ARP表中沒有匹配項,計算機會使用廣播方式發送一個ARP請求,目標主機收到請求后,會用單播方式返回一個ARP響應,告知自己的MAC地址。
- 廣播與單播: 廣播是在整個網段進行,單播則是針對某一臺機器。
3. ARP協議的作用
- 網絡傳輸依賴: 網絡中數據傳輸所依賴的是MAC地址,而不是IP地址。
- IP到MAC的轉換: ARP協議負責將IP地址轉換為MAC地址,沒有ARP協議,計算機無法將IP地址轉換成MAC地址,從而無法進行上網。
4. ARP常用命令
1)查詢arp表
- 命令: ARP -a
- 功能: 查詢本機緩存的ARP表,顯示IP地址及其對應的物理地址。
2)刪除表內某個IP
- 命令: ARP -d [IP地址]
- 功能: 刪除ARP表中指定IP地址與其MAC地址的綁定關系。
3)tcp抓某塊網卡的所有arp請求
- 命令: tcpdump -i [網卡名] -nn arp
- 功能: 抓取指定網卡上的所有ARP請求數據包。
4)tcp抓取指定ip的請求
- 命令: tcpdump -i [網卡名] -nn arp and host [IP地址]
- 功能: 抓取指定網卡上,與特定IP地址相關的ARP請求和響應數據包。
5. ARP工作過程演示
1)查看IP的mac地址
- 步驟: 在目標機器上,使用ARP -a命令查看是否存在特定IP的MAC地址映射。
2)查看本機IP配置
- 命令: ip a 或 ifconfig
- 功能: 查看本機所有網卡的IP地址配置信息,確認目標IP是否屬于本機某塊網卡。
3)刪除IP的mac地址綁定
- 步驟: 如果存在特定IP的MAC地址映射,先使用ARP -d命令刪除該映射,以便觀察后續的ARP請求和響應過程。
4)抓包
- 命令: tcpdump -i [網卡名] -nn arp and host [IP地址]
- 目的: 在刪除映射后,通過抓包工具觀察當訪問該IP時,計算機如何重新獲取MAC地址。
5)ping目標機器
- 命令: ping [IP地址]
- 目的: 通過ping命令觸發ARP請求,觀察抓包結果中的ARP請求和響應過程。
6)查看最新的ARP表
- 命令: ARP -a
- 目的: 在ping命令執行后,再次查看ARP表,確認特定IP的MAC地址是否已正確綁定。
6. 課堂總結
- ARP協議功能: 負責將IP地址轉換為MAC地址,或進行IP地址和MAC地址的綁定。
- ARP特性: 無需人為干預,計算機會自動進行輪詢和應答,保證ARP表的實時更新。
- 主要工作: 建立、查詢、更新、刪除ARP表。
知識小結
知識點 | 核心內容 | 考試重點/易混淆點 | 難度系數 |
ARP協議定義 | 地址解析協議,根據IP地址獲取物理地址的TCP/IP協議 | ARP協議與IP地址、MAC地址的關系 | 🌟 |
ARP工作原理 | 每臺計算機需ARP表保存IP與MAC映射,訪問IP時查表,不匹配則廣播請求 | ARP表的作用、廣播與單播的區別 | 🌟🌟 |
ARP協議作用 | 負責IP地址與MAC地址的轉換,確保數據傳輸 | 為何需要ARP協議,無ARP協議的影響 | 🌟🌟 |
ARP常用命令 | ARP -a(查詢ARP表),ARP -d(刪除綁定) | 命令的使用場景與操作 | 🌟 |
ARP表查詢與解讀 | 使用ARP -a命令查詢,理解表中信息(IP、MAC、類型、接口) | IP、MAC地址的對應關系,接口的含義 | 🌟🌟 |
ARP表清除與刪除 | 使用ARP -d命令刪除指定IP的MAC綁定 | 刪除操作的步驟與驗證 | 🌟 |
TCP抓包命令 | TCPdump -i 網卡 -nn ARP,抓取指定網卡上的ARP請求 | 抓包命令的參數與用法 | 🌟🌟🌟 |
ARP工作過程演示 | 在CentOS 7上抓包,理解ARP請求與應答過程 | 抓包分析,request與reply的理解 | 🌟🌟🌟🌟 |
ARP自動發送與更新 | 計算機不間斷自動發送ARP請求,實時更新ARP表 | ARP表的動態更新機制 | 🌟🌟🌟 |
課堂總結 | ARP協議負責IP與MAC的綁定與轉換,保證網絡通信 | ARP協議的核心功能與重要性 | 🌟 |
一、ARP斷網攻擊
1. 準備
1)實驗環境準備
- 攻擊機配置:
- 操作系統: Kali
- IP地址: 自己查詢
- MAC地址:
自己查詢
- 被攻擊機配置:
- 操作系統: Win10
- IP地址: 自己查詢
- MAC地址:
自己查詢
- 注意事項:
- 兩臺主機需在同一局域網內,且網絡暢通。
- 需記錄網關(路由器)的IP地址及MAC地址。
2)網絡暢通性驗證
- 方法:
- 在Windows系統上,可使用瀏覽器訪問網頁或使用ping命令來驗證網絡暢通性。
- 如訪問其他官網或使用ping命令后收到回復,且顯示已接收數據包且無丟失,則證明網絡暢通。
- 示例:
- 使用ping命令訪問其他網址,收到回復,顯示32個字節,用時9毫秒,已接收4個數據包,無丟失,證明網絡暢通。
- Kali系統驗證:
- 同樣在Kali系統上,使用ping命令訪問網址,也有響應,證明Kali系統也能正常上網。
3)計算機上網過程示意圖
- 過程:
- 計算機通過內網IP地址發送請求,但內網IP不能直接訪問外網。
- 請求通過路由器(網關)進行轉發,路由器擁有內網和外網IP,能將內網IP和外網IP進行映射。
- 路由器將請求發送到外網服務器,如馬士兵教育官網的服務器。
- 服務器響應請求,將數據包發送回路由器。
- 路由器再將數據包轉發給內網中的計算機。
- ping命令工作原理:
- ping命令通過發送ICMP(Internet Control Message Protocol)回顯請求報文給目標主機,并等待目標主機回復ICMP回顯應答報文來判斷目標主機是否可達。
- 在本例中,ping命令用于驗證網絡暢通性,通過收到目標主機的回復來確認網絡連接正常。
2. ARP斷網攻擊原理
1)ARP攻擊概述
- 定義: ARP斷網攻擊是通過向目標主機發送ARP報文,將網關MAC地址替換為攻擊機MAC地址,使目標主機的網絡數據包發送到攻擊機,從而實現斷網。
- 工具: arpspoof是一個常用的ARP欺騙工具,攻擊者通過毒化受害者ARP緩存,截獲數據包,獲取敏感信息。
2)內網與外網通訊
- 內網IP: 由路由器分發,如192.168.110.12,不能直接訪問外網。
- 外網IP: 路由器擁有,用于與外網通訊,如385167.138。
- 通訊過程: 內網IP通過路由器映射與外網IP通訊,實現訪問外網服務器。
3)數據包傳輸與ARP攻擊
- 數據包傳輸: 計算機間通訊通過數據包傳輸,如ping命令產生的數據包。
- ARP攻擊原理: 攻擊者向目標主機發送ARP報文,將網關MAC地址替換為攻擊機MAC地址,使目標主機的數據包發送到攻擊機。
- 攻擊結果: 攻擊機丟棄數據包,導致目標主機斷網。
4)arpspoof工具使用
- 命令參數:
- -i: 指定網卡
- -c: 指定攻擊機IP或目標機器IP或兩者
- -t: 指定目標機器IP
- -r: 指定網關IP
- 使用前提: 兩臺機器在同一局域網內,且可以互相通訊。
- 查看IP:
- Kali Linux: 使用ip a命令
- Windows: 使用ipconfig /all命令
5)實際操作步驟
- 步驟一: 確保兩臺機器在同一網絡下,并可以互相通訊。
- 步驟二: 查看并記錄Kali Linux和Windows機器的IP地址。
- 步驟三: 在Windows機器上ping Kali Linux,確保網絡連通。
- 步驟四: 使用arpspoof命令進行ARP欺騙攻擊,使目標機器斷網。
6)攻擊效果與防御
- 攻擊效果: 目標機器無法訪問網絡,數據包被攻擊機截獲。
- 防御措施:
- 使用靜態ARP綁定,防止ARP緩存被毒化。
- 部署ARP防火墻,監測和阻止ARP欺騙攻擊。
- 定期檢查網絡設備和主機,確保安全配置正確。
3. arpspoof介紹
1)具體攻擊步驟
- 準備
- 準備內容: 確保兩臺機器在同一局域網下,并且可以互相通訊。
- 查看kali的IP
- 查看windows的IP
- Windows ping kali
- 查看arp表,記錄網關信息
- kali進行斷網攻擊
- win10查看網絡連接
- 結束斷網攻擊
- win10重新查看網絡狀態
2)ARP斷網攻擊原理深入分析
- ARP斷網攻擊過程
- 攻擊命令: 使用arpspoof工具,通過指定網卡、網關IP和靶機IP進行攻擊。
- 攻擊原理:
- 欺騙網關: 攻擊機器告訴網關,靶機的MAC地址已變為攻擊機器的MAC地址。
- 欺騙靶機: 攻擊機器告訴靶機,網關的MAC地址已變為攻擊機器的MAC地址。
- 結果: 靶機無法正確找到網關,數據包被發送到攻擊機器,導致靶機無法上網。
- 攻擊與停止攻擊的命令
- 攻擊命令:
- 攻擊機器向網關發送ARP應答,告知網關靶機的MAC地址已變更。
- 攻擊機器向靶機發送ARP應答,告知靶機網關的MAC地址已變更。
- 停止攻擊命令:
- 攻擊機器向網關發送真實的網關MAC地址。
- 攻擊機器向靶機發送真實的靶機MAC地址。
- 結果: 恢復正常的網絡通訊。
- 攻擊命令:
- 不間斷發送ARP應答的原因
- 原因:
- 覆蓋真實應答: 攻擊機器通過不間斷發送ARP應答,覆蓋真實機器(網關和靶機)的應答,確保靶機無法接收到真實的網關MAC地址,從而實現斷網。
- 目的: 使靶機無法與網關正常通信,達到斷網的目的。
- 原因:
- ARP斷網攻擊原理示意圖
- 停止攻擊后的網絡恢復
3)ARP斷網攻擊課程總結
- 前置條件
- 攻擊機與靶機: 使用Kali作為ARP攻擊機,Win10作為被攻擊方(靶機)。
- 網絡環境: 確保兩臺主機在同一局域網內。
- arpspoof工具介紹
- 功能: arpspoof是一個好用的ARP欺騙工具,能夠毒化受害者的ARP緩存。
- 作用: 截獲受害者發送和收到的數據包,獲取受害者的賬戶、密碼等敏感信息。
- 命令參數:
- -i: 指定網卡。
- -c: 指定攻擊者的IP(own|host|both)。
- -t: 指定目標機器的IP。
- -r: 指定網關IP。
- 具體攻擊步驟
- 查看IP與MAC地址:
- Kali: 使用ip a查看IP地址。
- Win10: 使用ipconfig /all查看IP地址和MAC地址。
- 確保同一局域網: 通過ping命令確保兩臺主機能夠相互通信。
- 記錄網關信息: 在Win10上使用arp -a | findstr <網關IP>記錄網關的MAC地址。
- 發起攻擊: 使用arpspoof命令進行斷網攻擊,如arpspoof -i eth0 -r <網關IP> -t <靶機IP>。
- 查看攻擊效果:
- Win10查看網絡連接狀態。
- 使用arp -a | findstr <網關IP>查看ARP表是否被毒化。
- 結束攻擊: 使用Ctrl+C停止攻擊。
- 恢復網絡: 停止攻擊后,重新查看Win10的網絡狀態和ARP表,確認網絡恢復正常。
- 查看IP與MAC地址:
- ARP斷網攻擊原理
- 毒化靶機ARP緩存: 攻擊機告訴靶機,網關的MAC地址是攻擊機的MAC地址。
- 毒化網關ARP緩存: 攻擊機告訴網關,靶機的MAC地址是攻擊機的MAC地址。
- 數據包劫持: 靶機發送的數據包和網關發送的數據包都會被發送到攻擊機,從而實現數據包的劫持。
- 停止攻擊后的處理
- 恢復通信: 停止攻擊后,需要將正確的MAC地址告訴網關和靶機,以恢復它們之間的正常通信。
- 課堂小結與下節預告
- 課堂小結: 本節課學習了ARP斷網攻擊的原理、工具使用及具體攻擊步驟。
- 下節預告: 下節課將利用本節課的知識,進一步學習其他攻擊手段。
二、知識小結
知識點 | 核心內容 | 考試重點/易混淆點 | 難度系數 |
ARP斷網攻擊 | 課程概覽 | 課程分為六部分講解 | 低 |
ARP斷網攻擊 | 課前準備 | 需準備卡利作為攻擊機,Win 10作為靶機,記錄IP和MAC地址 | 中 |
ARP斷網攻擊 | 網絡暢通確認 | 使用ping命令確認網絡暢通 | 低 |
ARP斷網攻擊 | 計算機上網過程 | 內網IP由路由分發,路由器映射內網IP和外網IP | 中 |
ARP斷網攻擊 | ARP攻擊原理 | 目標主機發送ARP報文,將網關MAC地址設為攻擊機MAC地址 | 高 |
ARP斷網攻擊 | ARP欺騙工具 | 使用ARP spoof工具毒化ARP緩存,截獲數據包 | 高 |
ARP斷網攻擊 | 攻擊命令 | arpspoof命令,帶四個參數:網卡、攻擊IP、目標IP、網關IP | 高 |
ARP斷網攻擊 | 攻擊步驟 | 確認環境、查看IP和MAC、確保通訊、發起攻擊、查看ARP表 | 中 |
ARP斷網攻擊 | 停止攻擊 | 使用ctrl c停止攻擊,恢復網絡狀態 | 低 |
ARP斷網攻擊 | 攻擊過程分析 | 攻擊機不停告訴網關和靶機更新MAC地址,實現斷網 | 高 |