windows下利用sniffer进行抓包改包,以arp攻击

ARP攻击原理及实验
1. 进行arp IP欺骗
2.进行arp网关MAC欺骗
3.首先进行第一个测试” arp IP欺骗”.实验环境VMWareWorkistation虚拟机2台(xp系统)
4.第一攻击者台IP为172.17.17.201 MAC地址为00-0C-29-92-1F-0F
5. 第二台被攻击者 IP为172.17.17.202 MAC地址为00-0C-29-0D-AF-C4
首先,我们安装sniffer,可以去baidu或者google搜索一下,有汉化破解版的.下载后安装即可(安装方法可以去baidu看下).安装完成后我们开始配置抓包过滤器
windows下利用sniffer进行抓包改包,以arp攻击_第1张图片
选择”配置文件”-新建-名称中输入arp-完成.
在”地址”选项卡中编辑如下
地址类型选择hardware(因为我们要抓的arp协议数据包是工作在OSI模型的数据链路层的,所以我们要用到的是二层的硬件MAC地址)
在位置1中输入自己的MAC地址(格式中间不带-)
在位置2中默认的任意的即可
windows下利用sniffer进行抓包改包,以arp攻击_第2张图片
除此之外,我们在”高级”选项卡中设置如下,
选择协议:IP ARP, 完成后,就可以开始抓包了,点击’捕获’-开始

正在捕获数据包

然后我们用第一台计算机ping第二台计算机
172.17.17.201 ping 172.17.17.202
windows下利用sniffer进行抓包改包,以arp攻击_第3张图片
这里的2说明捕获到了2个数据包
windows下利用sniffer进行抓包改包,以arp攻击_第4张图片
Ping完成后,点击图上的”红色望远镜”图标(停止并查看捕获的数据包)
点击左下角的”解码”进行数据包的查看
windows下利用sniffer进行抓包改包,以arp攻击_第5张图片

以上就是我们捕获到的数据包(ICMP的数据包,因为我们是用172.17.17.201 ping的172.17.17.202以上是一个172.17.17.201去往172.17.17.202的echo数据包,中间靠广播来发现的,和一个172.17.17.202返回给172.17.17.201的echo reply的数据包)ping用的是ICMP协议,所以说是一个ICMP的数据包.


下面来分析这个返回给自己(172.17.17.201)的数据包(发送给广播的数据包不进行分析) 

DLC:数据链路控制层Data Link Control
我们可以看到在DLC层中对应的Destination(目标)的MAC地址是000C29921F0F(172.17.17.201),也就是自己(攻击者)的MAC地址,因为这个数据包是由172.17.17.202(被攻击者)返回来的数据包,所以这个数据包的目的地址就变成了,172.17.17.201的MAC地址,同样的Soure(源)的MAC地址是000C290DAFC4(172.17.17.202),每次点击到对应的协议层就会在下面字节中显示对应的字节数值,如上图的Destination MAC 000C29921F0F对应的是底下的12个字节00 0c 29 92 1f 0f 的位置
依次类推Soure MAC 000C290DAFC4 对应的是后面的00 0c 29 0d af c4这12个字节的位置

windows下利用sniffer进行抓包改包,以arp攻击_第6张图片

依次类推Soure MAC 000C290DAFC4 对应的是后面的00 0c 29 0d af c4这12个字节的位置

windows下利用sniffer进行抓包改包,以arp攻击_第7张图片
再下走是Ethertype(以太网协议类型)0806,对应的是下面的4个字节08 06

ARP协议中
Hardware type(MAC协议类型)1,对应于00 01(数据包以16进制表示,即0x1=0001)
Protocol type(IP协议类型)0800,对应于08 00
还有下面的length of hardware address 硬件地址长度6
Length of protocol address ip地址长度4(指在数据包中占用的字节)
Opcode 2 (ARP reply)指的是ICMP的类型,echo(去)是1,echo reply(返回)是2,因为这个数据包是ICMP返回的数据包,所以类型是2(0x0002)对应下面的4个字节:00 02

Sender’s hardware address 000C290DAFC4发送方的MAC地址
Sender’s protocol address 172.17.17.202 对应的是下面的8个字节的ac 11 11ca(IP地址的16进制表示方法)
windows下利用sniffer进行抓包改包,以arp攻击_第8张图片
Target hardware address 000C29921F0F 接收方的MAC地址
Target protocol address 172.17.17.201 接收方的IP地址,对应下面ac 11 11 c9
同上
后面的保留空间,不用分析了.
好了通过以上对数据包的分析,现在来修改这个数据包来达到IP地址冲突的arp欺骗攻击.好了,到了这里问题来了,怎么才能发生ip地址的冲突呢,既然要发生ip地址的冲突,那么必不可少的是要2台计算机ip地址相同,而MAC地址不变.经过分析,可以得到,只需要修改包的发送和接收方的IP地址一样(都修改成被攻击者的IP地址)就可以了.那么下面开始修改数据包,看好~~~
首先,在选择数据包,在数据报上点击右键
windows下利用sniffer进行抓包改包,以arp攻击_第9张图片
如图选择”发送当前的帧”(OSI7层模型中2层协议中数据包被统一叫做帧,3层中叫做包)
打开帧后,可以选择攻击的动作,这里我们选择”连续的发送”
开始修改,按照数据帧的格式,定位到各个位置开始修改。
修改Destination 对应的位置
 
因为我们这个帧是用来自己(攻击者172.17.17.201 MAC地址为00-0C-29-92-1F-0F)发送给被攻击者(172.17.17.202 MAC地址为00-0C-29-0D-AF-C4),所以在Destination位置的12个字节处要修改成被攻击者的MAC地址00-0C-29-0D-AF-C4
windows下利用sniffer进行抓包改包,以arp攻击_第10张图片

后面的Soure位置修改成自己的MAC地址00-0C-29-92-1F-0F

windows下利用sniffer进行抓包改包,以arp攻击_第11张图片

依次类推,我们只需要修改 源、目的的MAC地址和IP地址即可,其他类型、长度、包返回类型不变即可
在第二行的00 02(之前的可以保持不变)后面我们要修改的是发送者的MAC(00-0C-29-92-1F-0F)和IP(172.17.17.201)
windows下利用sniffer进行抓包改包,以arp攻击_第12张图片
我们要将2个IP都改为被攻击者的IP:172.17.17.202对应16进制的ac 11 11 ca,所以改为ac 11 11 ca
windows下利用sniffer进行抓包改包,以arp攻击_第13张图片
及接收者的MAC(00-0C-29-0D-AF-C4)和IP(172.17.17.202)
windows下利用sniffer进行抓包改包,以arp攻击_第14张图片
172.17.17.202对应的16进制是ac 11 11 ca,所以将接收者的IP对应的改为ac 11 11 ca
windows下利用sniffer进行抓包改包,以arp攻击_第15张图片
这样,我们就修改了一个可以进行arp ip欺骗的数据包,点击确定开始攻击
在被攻击者的计算机上我们看到效果如下。已经实现了ip冲突,但是并不影响上网。只是会不断的弹出对话框
windows下利用sniffer进行抓包改包,以arp攻击_第16张图片


二、介绍抓包分析进行arp另外一种欺骗实例:arp网关MAC欺骗
一样的问题,怎么才能实现arp网关MAC的欺骗呢,简单的说一下,在OSI2层协议中通信时利用MAC地址而不是IP地址的,利用arp协议来进行地址解析,就是将目标IP地址解析成目标MAC地址,以便和对方进行通信,每一个计算机中都会存在一个arp的表,就是一张ip对应mac地址的表,而intarnet计算机要上网就必须通过网关来上网,在arp表中就存在一个网关的ip和mac的对应的arp表,我们可以在cmd下用arp –a命令来查看arp缓存表
windows下利用sniffer进行抓包改包,以arp攻击_第17张图片
比如上图攻击者的ip地址是172.17.17.201,网关是172.17.17.1,那么在正确的arp表中就保存着一个条目,网关的ip-MAC对应关系 172.17.17.1  00-1d-70-b6-94-7f,可以看到网关(172.17.17.1)的MAC地址是00-1d-70-b6-94-7f
由此可以知道,如果将自己的IP地址改成网关的IP地址,MAC可以任意修改成其他的,或者就用自己(攻击者)的,然后不断的发送这个数据包给被攻击者(告诉被攻击者网关就是攻击者自己,或者一个伪造的非真实存在的MAC地址)这样,被攻击者就会认为自己(攻击者或者伪造的MAC)是真正的网关,而把所有的上网的数据包请求发送到攻击者或伪造的MAC,这样,就欺骗了被攻击者,不但可以监听被攻击者所有的数据包,还能造成被攻击者无法通过网关上.
好了,知道了简单的原理,下面就来试验一下,环境不变.步骤不变,唯一改变的是修改的数据包中的
Sender’s hardware address 000C290DAFC4发送方的MAC地址
Sender’s protocol address 172.17.17.202 发送方的IP地址
发送方的MAC地址可以改为自己的也可以伪造一个,这里伪造了一个MAC:00 0c 29 1f 92 c4
因为这里做的是网关MAC欺骗,需要将发送方的IP修改为网关的IP,也就是修改ac 11 11 ca为网关IP(172.17.17.1)对应的16进制数据ac 11 11 01
windows下利用sniffer进行抓包改包,以arp攻击_第18张图片
windows下利用sniffer进行抓包改包,以arp攻击_第19张图片
完成后就可以看到网关欺骗的效果了,先做个对比。
没有欺骗之前
 
可以ping 通baidu,证明可以上网,再看arp表
windows下利用sniffer进行抓包改包,以arp攻击_第20张图片
网关真实的MAC为00 1D 70 B6 94 7F

开始进行arp网关欺骗
windows下利用sniffer进行抓包改包,以arp攻击_第21张图片
在进行观察被攻击者172.17.17.202
windows下利用sniffer进行抓包改包,以arp攻击_第22张图片
可以看到前后的对比,被攻击后baidu无法ping通,arp列表中的网关MAC地址已为我制造的一个伪MAC地址。Arp欺骗成功。

      预防arp网关欺骗的方法也很简单,在自己的cmd中先用arp –a 查看真实的网关ip – MAC对应关系,然后用arp –s IP MAC命令进行arp的绑定即可,或者安装一个带有防arp功能的防火墙(比如360)就可以了。


你可能感兴趣的:(Windows)