用途:在获得书面授权的实验室或渗透测试环境中模拟 ARP 欺骗(缓存投毒),构造中间人场景,用于验证交换机与网络基础设施是否正确实施动态 ARP 检查(DAI),向相关方演示中间人风险,检验 IDS/IPS、SIEM 等监控工具能否发现投毒行为,评估端口安全、802.1X 与 VLAN 隔离效果,并训练 SOC 分析师识别流量特征。严禁在未获明确书面授权的生产网络使用,不得针对承载关键或生命安全流量的网络,也不得作为拒绝服务手段。
前提:需书面授权并明确在范围的网段;安装 arpspoof、Ettercap、Scapy 的 Kali 等渗透测试发行版;与目标主机同 VLAN 的二层接入;掌握 IP 转发开启/关闭;使用 Wireshark 或 tcpdump 验证拦截;在隔离实验环境或获批的测试窗口内操作。
流程:先用 nmap -sn -PR 192.168.1.0/24 -oG arp_discovery.txt、arp-scan -l -I eth0 和 arp -a 枚举主机、网关及合法 MAC 并记录用于清理;以 sudo sysctl -w net.ipv4.ip_forward=1 开启转发(可选关闭 send_redirects);用 arpspoof 双向欺骗或 ettercap -T -q -i eth0 -M arp:remote /192.168.1.50// /192.168.1.1// 统一执行;用 tcpdump、tshark 抓取并分析被拦截流量;可用 Scapy 自定义 ARP 包演示并编写 restore 函数恢复;测试后在目标机用 arp -a 检查投毒迹象、查看 IDS/SIEM 告警,停止攻击、执行 sudo sysctl -w net.ipv4.ip_forward=0 并恢复 ARP 表。
关键概念:ARP 缓存投毒、无偿 ARP、动态 ARP 检查(DAI)、IP 转发、DHCP Snooping。工具:arpspoof(dsniff)、Ettercap、Scapy、arp-scan、Wireshark。
限制与注意:未开启 IP 转发会退化为拒绝服务而非透明拦截;未恢复 ARP 表会残留错误缓存;在无 DAI 的 VLAN 上操作可能干扰正常流量;在 trunk 端口测试可能影响多个 VLAN。具体收费与平台支持情况暂未提供。