
前言在局域网渗透与网络安全学习中ARP欺骗是最经典、门槛最低的中间人攻击入门技术在此基础上还可以进阶实现DNS劫持、流量嗅探、网页篡改等更深层次的操作。重要安全声明本文仅用于网络安全技术学习与合法测试禁止对任何未授权的网络、设备进行攻击操作非法入侵与网络破坏行为需承担对应的法律责任请遵守《网络安全法》等相关法律法规一切测试仅限个人虚拟机、自有实验环境。一、原理科普1. ARP协议与ARP欺骗原理ARP地址解析协议负责将局域网内的IP地址解析为对应的MAC物理地址是局域网通信的基础。ARP欺骗ARP中毒攻击者伪造ARP响应报文欺骗受害主机与网关让二者都把攻击者的MAC地址当成对方的MAC地址让所有流量都经过攻击者主机转发既可以直接切断目标网络也可以实现中间人监听。2. DNS劫持原理DNS负责把域名比如www.baidu.com解析为服务器IP地址。DNS劫持 在ARP中间人攻击的基础上篡改DNS解析结果当受害者访问正常网站时被强行跳转到攻击者指定的钓鱼网站、恶意页面。二、实验环境设备/系统角色说明Kali Linux攻击机预装arpspoof、ettercap等渗透工具Windows 10虚拟机受害主机作为被攻击测试的设备同网段路由器网关局域网出口实验网段 192.168.154.0/24- Kali攻击机IP 192.168.154.128- 受害主机IP 192.168.154.131- 网关IP 192.168.154.2三、ARP断网攻击步骤1扫描局域网存活主机首先探测当前局域网内所有在线设备锁定受害主机与网关arp-scan -l执行后会列出网段内所有主机的IP、MAC、设备厂商信息提前记录好网关IP、受害机IP。步骤2确认本机网卡与网关信息1. 查看Kali攻击机网卡与MAC地址ifconfig找到网卡记录本机MAC地址。2. 查看本机ARP缓存确认网关MACarp -a步骤3验证受害主机网络正常攻击前先在Windows受害机测试网络连通性ping www.baidu.com此时可以正常收到百度的回复网络通畅。步骤4发起ARP断网欺骗使用 arpspoof 工具持续发送伪造ARP报文arpspoof -i eth0 -t 192.168.154.131 192.168.154.2参数说明- -i eth0 指定使用的网卡- -t 目标IP 网关IP 欺骗目标主机让它认为网关的MAC就是攻击机MAC步骤5断网效果验证攻击开启后回到Windows受害机再次ping百度ping www.baidu.com此时会提示 Ping 请求找不到主机 目标主机彻底断网。步骤6查看受害机ARP缓存变化在受害机执行arp -a可以发现网关对应的MAC地址已经被篡改为Kali攻击机的MAC地址ARP欺骗生效。四、DNS域名劫持攻击ARP断网只是基础玩法开启流量转发后我们就可以实现中间人DNS劫持。步骤1修改Ettercap DNS配置编辑ettercap的DNS解析规则把指定域名劫持到攻击机IPvim /etc/ettercap/etter.dns在文件末尾添加劫持规则* A 192.168.154.128 *.baidu.com A 192.168.154.128 *.com A 192.168.154.128含义所有匹配的域名全部解析到Kali攻击机的IP。步骤2启动本地Web站点开启Apache服务搭建默认站点用来展示劫持后的页面service apache2 start浏览器访问Kali本机IP即可看到Apache默认页面后续受害者就会跳转到这个页面。步骤3Ettercap工具配置与ARP中间人1. 打开Ettercap图形界面选择攻击网卡2. 扫描局域网存活主机3. 将受害主机添加到Target1网关添加到Target2步骤4开启ARP毒化攻击顶部菜单选择MITM - ARP Poisoning勾选Sniff remote connections确认开启中间人流量嗅探。步骤5加载DNS劫持插件菜单选择Plugins - Manage the plugins找到并启用dns_spoof插件DNS劫持正式生效。步骤6劫持效果演示受害主机打开浏览器访问 www.baidu.com 等任意配置好的域名原本的百度页面会直接跳转到Kali搭建的Apache默认网站劫持成功五、攻击原理总结1. ARP断网单向欺骗目标主机让目标所有流量都发给攻击机攻击机不转发流量 → 目标彻底断网2. 完整中间人开启内核流量转发( echo 1 /proc/sys/net/ipv4/ip_forward )流量正常中转 → 不影响上网可监听、篡改流量3. DNS劫持在中间人基础上伪造DNS响应包篡改域名解析结果 → 钓鱼跳转六、安全防范方案1. 针对ARP欺骗的防御手段1. 静态绑定ARP手动将网关IP与MAC做静态绑定拒绝动态伪造的ARP更新2. 定期清理ARP缓存定期执行 arp -d 清除无效缓存3. 交换机开启DAI动态ARP检测、IPMAC地址绑定4. 安装专业防火墙、终端安全防护软件5. 谨慎连接陌生、公共免费WiFi公共局域网极易遭受此类攻击2. 针对DNS劫持的防御手段1. 手动配置公共可信DNS如223.5.5.5、114.114.114.1142. 锁定本机HOSTS文件禁止恶意篡改3. 浏览器开启HTTPSDNS over HTTPSDoH加密DNS查询4. 定期查杀恶意软件、木马程序5. 访问网站认准HTTPS安全锁标识警惕跳转陌生站点七、写在最后ARP与DNS劫持是网络攻防入门的必学内容弄懂这个实验就能透彻理解局域网通信的底层脆弱点。技术本身无善恶守住法律与道德底线用技术守护网络安全才是网络安全从业者、爱好者的初心。后续还可以拓展HTTPS降级、图片嗅探、密码抓包、网页注入等进阶玩法感兴趣可以持续关注~博主补充小提示实验遇到不通的常见坑1. 虚拟机和攻击机要保证在同一网段能互相ping通2. Kali记得关闭防火墙放行网卡转发3. ettercap权限需要root所有命令务必 sudo 或者直接root用户运行