一、目的:通过实训理解ARP欺骗的原理。掌握中间攻击的方法。
二、场景描述:
在虚拟机环境下配置 “Win7”和“Kali Linux”虚拟系统,使得2个系统之间能够相互通信。
三、实验环境:
1.软件:VMware Workstations14以上版本
2.虚拟机:Kali-Linux、Windows 7
打开虚拟机:启动kali-linux 启动windows7(未装补丁)
获取IP地址(ifconfig、ipconfig)
Kali-Linux :192.168.0.129
Windows 7:192.168.0.136
3.在虚拟机环境下配置 “Win7”和“Kali Linux”2个虚拟系统,使得虚拟系统之间能够相互通信。
四、实验步骤
具体攻击实现:具体的中间人攻击,大体上可以分为以下几个步骤:
- 对目标主机进行ARP欺骗,声称自己是网关。
- 转发目标的NAT数据到网关,维持目标的外出数据。
- 对网关进行ARP欺骗,声称自己是目标主机。
- 转发网关的NAT数据到目标主机,维持目标的接收数据。
- 监听劫持或者修改目标的进入和外出数据,从而实现攻击。
其中1,3都是ARP欺骗;2,4都是转发,下面会分别说到。
步骤1:
在Win7中,在命令提示符中输入命令“ipconfig /all”查看自身的MAC地址和网关IP地址,下面第一张图所示。然后输入命令“ arp –a”查看ARP缓存表中的网关MAC地址,下面第二张图所示。


步骤2:在kali终端中,输入命令“ifconfig”,查看kali的IP地址与MAC地址,如图所示。

步骤3:主机扫描
方法1:执行ping扫描最简单的方法是使用工具fping,fping使用ICMP ECHO一次请求多个主机,对当前局域网还存在那些主机进行快速扫描,以确定要攻击的主机的ip地址。
fping -a -g 192.168.0.0/24 > result
使用fping工具扫描了192.168.254.0/24网段内的所有主机,并将扫描结果输出到result文件中。其中,-a参数表示只输出活动的主机,-g参数表示扫描整个网段。


方法2:执行nmap -sP 192.168.0.0/24,扫描网络中活跃的主机。(推荐使用)
-sP 选项表示只利用ping扫描进行主机发现,不进行端口扫描
-sS 进行TCP的半开放扫描,如果禁ping的时候可以使用这个参数
注:用nmap进行主机扫描速度快,而且能穿透防火墙,是比较可靠的扫描工具。

步骤4:arpspoof 是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。
注意:
运行 arpspoof 命令时提示:arpspoof未找到命令,其原因是你还未安装 arpspoof 工具;arpspoof 是 dsniff 的一个附属工具,所以我们需要安装的是 dsniff :使用以下命令安装dsniff:apt-get install dsniff
步骤4-1:
更换更新源为阿里云,原有的更新源加#号注释
使用命令打开对应更新源文件:vim /etc/apt/sources.list
添加下面源地址:
阿里云Kali镜像源
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
中科大Kali镜像源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
清华大学Kali镜像源
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
kali源
deb http://http.kali.org/kali kali-rolling main contrib non-free
deb-src http://http.kali.org/kali kali-rolling main contrib non-free
步骤4-2:
修改完成后执行apt-get update命令完成更新
注意:如果出现没有数字签名问题,那就是需要下载证书
使用命令:
wget archive.kali.org/archive-key.asc #下载证书
apt-key add archive-key.asc #添加证书

步骤4-3:
重新安装命令,apt-get install dsniff

命令格式:arpspoof -h #查看arpspoof版本信息

-i 后面的参数是网卡名称
-t 后面的参数是目的主机和网关,截获目的主机发往网关的数据包
步骤5:断网攻击:arpspoof -i eth0 -t 192.168.0.129 192.168.0.2
让win7一直ping百度



发现win7mac地址跟kali的一样了

此时win7是不可上网了的

五、攻击利用
1、内网截获图片
Arp欺骗:目标ip的流量经过我的网卡,从网关出去。
Arp断网:目标ip的流量经过我的网卡
echo 1 >/proc/sys/net/ipv4/ip_forward
(1)设置ip流量转发,不会出现断网现象

有时不能这样直接修改,还有另外一种方法
修改/etc/sysctl.conf文件,使得net.ipv4.ip_forward = 1;等于0为不转发。然后更新使用命令 sysctl -p

(2)在ARP欺骗前,ping baidu.com -t检查是否能够上网

此时,win7和网关通信的数据包都会流经kali
(3).kali 中利用driftnet工具,可以捕获win7机器正在浏览的图片
Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。
在命令行输入:
apt-get install driftnet
driftnet -i eth0

当我使用win7上网时,从图中可以看出,kali 正在不断地捕获win7和网卡之间的数据包(其中有警告:图片太小没法抓取)
Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。只能抓取http协议网址下的图片
测试网站:
http://a.aixjt.com/AdminPublic.html
http://www.win4000.com/
http://yqbz.xnayw.cn/gn.html

2、获取HTTP账户密码
(1)开始欺骗

(2)启动:ettercap -Tq -i eth0
-T 文本模式输出,不使用图形用户界面
-q 静默模式
-i 指定要监听的网络接口

(3)访问登录网址,输入用户名及密码。这里我输入liu/123456

(4)返回kali攻击机,查看记录

浙公网安备 33010602011771号