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地址,实现断网 | 高 |