ARP欺骗

0 阅读7分钟

简介

ARP(Address Resolution Protocol,地址解析协议)是用于将IP地址解析为MAC地址的网络层协议。ARP欺骗(ARP Spoofing),又称ARP投毒(ARP Poisoning),是一种针对ARP协议缺陷的攻击技术。由于ARP协议本身缺乏认证机制,无法验证ARP响应报文的真实性,攻击者可以发送伪造的ARP响应报文,将网关IP映射到攻击者的MAC地址,从而使目标主机的网络流量经过攻击者主机,实现中间人攻击(MITM)。

用处

  1. 网络监听与嗅探:在安全测试和网络审计中,可利用ARP欺骗截获目标主机的网络通信数据,分析流量中的安全隐患。

  2. 中间人攻击模拟:安全人员通过ARP欺骗模拟中间人攻击场景,评估网络对中间人攻击的防御能力。

  3. 会话劫持测试:获取用户会话凭证,验证Web应用是否存在会话固定或会话劫持漏洞。

  4. 网络故障排查:在可控环境下,利用ARP欺骗分析网络通信链路和数据包传输情况。

目的

1.理解ARP欺骗的基本原理。 2.掌握arpspoof的使用。 3.掌握driftnet的使用。

内容

  1. 在kali上利用arpspoof对win7和NAT网关进行ARP双向欺骗,展示对win7进行欺骗前后,win7的arp高速缓存列表。

  2. 在kali上开启路由转发功能,并安装driftnet。

  3. 开启双向欺骗(arpspoof)、路由转发功能后,利用driftnet嗅探win7所访问http网站的图片(宿主主机通过共享文件夹向win7发送图片也可)。

  4. 利用ettercap嗅探win7所访问HTTP网站的账号密码。

过程

1 win7查看IP,ARP缓存

图:在win7上使用ipconfig命令查看本机IP地址,使用arp -a命令查看当前ARP缓存表,可以看到网关IP地址与对应MAC地址的正常映射关系。

在kali上打开终端一,欺骗win7

图:在kali终端一中使用arpspoof命令对win7进行ARP欺骗,伪造网关IP地址对应kali的MAC地址,使win7误认为kali就是网关,将数据包发送到kali主机。

开启终端二,欺骗网关

图:在kali终端二中使用arpspoof命令对NAT网关进行ARP欺骗,伪造win7的IP地址对应kali的MAC地址,使网关将发往win7的数据包发送到kali,实现双向欺骗。

欺骗后,win7的网关MAC地址变成kali的MAC地址

图:ARP双向欺骗成功后,在win7上再次执行arp -a命令查看ARP缓存表,可以看到网关IP地址对应的MAC地址已变为kali主机的MAC地址,与欺骗前形成对比,证明欺骗成功。

2 开启路由转发

图:在kali终端中使用echo命令向/proc/sys/net/ipv4/ip_forward写入1,开启IP路由转发功能,使kali能够将win7发送过来的数据包转发给网关,确保被欺骗主机的网络通信不受影响。

安装driftnet

图:在kali终端中使用apt-get install driftnet命令安装driftnet工具,driftnet是一款用于捕获和显示网络流量中图片的嗅探工具,能够实时展示被嗅探主机访问的HTTP图片内容。

3driftnet嗅探win7访问的HTTP图片

图:driftnet成功捕获win7访问HTTP网站时传输的图片,图中显示了被嗅探到的图片内容,证明ARP欺骗结合driftnet可以有效截获目标主机的HTTP明文图片流量。

4ettercap嗅探HTTP账号密码:

启动图形化ettercap

图:在kali终端中使用ettercap -G命令启动ettercap的图形化界面,ettercap是一款功能强大的中间人攻击工具套件,支持ARP欺骗、密码嗅探、数据包注入和流量过滤等多种攻击方式。

配置

选择网卡,扫描网段主机,选中win7IP,网关IP

图:在ettercap图形界面中配置嗅探参数,选择使用的网络接口(网卡),扫描局域网内的活跃主机列表,分别将win7的IP地址添加为Target1(目标1)、网关IP添加为Target2(目标2),准备实施ARP中间人攻击。

开启密码嗅探插件

win7访问HTTP登陆网站

ettercap成功获取账号密码

账号:123456789

密码:123

注意

1.arpspoof属于dsniff工具包,kali默认未安装,需要执行安装命令

2双向欺骗时,kali开启的两个终端都不能关,需要同时运行

3.driftnet没抓到图片,可能是打开的网站本身无图片,且浏览器明文流量会被加密,需要访问纯HTTP站点。

4.win7打开网页显示不全:

1.ettercap图形界面修改了系统iptables规则,拦截了网页资源流量

2.ARP劫持后win7DNS解析异常,仅联通IP但无法加载网页内容

需要重置iptables规则,或者改用命令行ettercap.

5.ettercap无法解析HTTPS流量,且部分网站会对网页表单数据提前加密

危害:

  1. 信息泄露:攻击者可窃取用户的账号密码、浏览记录、私密文件等敏感信息,造成严重的数据泄露。

  2. 数据篡改:攻击者可修改传输中的数据包内容,注入恶意代码或虚假信息,诱导用户访问钓鱼网站。

  3. 拒绝服务攻击:通过发送大量伪造ARP响应导致网络通信中断,使目标主机无法正常访问网络。

  4. 横向渗透:以被攻击主机为跳板,进一步扫描和攻击局域网内的其他设备,扩大攻击范围。

  5. 隐私侵犯:利用driftnet等嗅探工具捕获用户浏览的图片和网页内容,严重侵犯个人隐私权。

防御措施:

  1. 静态ARP绑定:在主机上手动绑定网关的IP与MAC地址(使用arp -s命令),使ARP缓存不被伪造响应篡改。

  2. 安装ARP防火墙:部署专业的ARP防火墙软件(如360ARP防火墙、彩影ARP防火墙),实时检测和拦截ARP欺骗攻击。

  3. 划分VLAN隔离:通过虚拟局域网将不同安全级别的网络区域隔离开,限制ARP欺骗的影响范围。

  4. 启用DAI动态ARP检测:在支持DAI功能的交换机上配置该功能,对ARP报文进行合法性验证,丢弃不合法的ARP响应。

  5. 使用加密通信协议:采用HTTPS、SSH、VPN等加密协议进行通信,即使流量被嗅探,攻击者也难以解密数据内容。

  6. 部署网络监控工具:使用arpwatch、XArp等工具持续监控局域网内的ARP流量,及时发现异常的ARP行为并告警。

  7. 交换机端口安全配置:在交换机上配置端口安全策略,限制每个端口允许学习的MAC地址数量,防止MAC地址泛洪攻击。

声明

本文 ARP 欺骗相关实操仅为封闭虚拟实验环境内安全学习记录,所有操作仅作用于本人自建虚拟机靶机。未经授权对第三方网络实施 ARP 劫持、流量监听均属于违法行为,违反《网络安全法》相关条例。本文仅作科普,请勿用于非法用途,违规操作一切后果由行为人自行承担。