• / 9
  • 下载费用:5 金币  

Wireshark工具实验与协议安全威胁分析.docx

关 键 词:
WIRESHARK 工具 实验 协议 安全 威胁 分析
资源描述:
Wireshark 工具实验与协议安全威胁分析1. Wireshark 工具实验Wireshark(前称 Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark 使用WinPCAP 作为接口,直接与网卡进行数据报文交换。本次作业进行的是该软件最基础的抓包操作。首先,软件初始界面如下:在抓包列表之中,有以下选项:通过网络接口的选项查看本机可用的接口:之后可以通过选项按钮进行一些设置,同时也可以在选择抓包过滤器中对所要抓的包进行过滤:一切设置就绪之后可以单击开始,进行抓包,结果如图:在这里我选择 arp 协议进行抓包并进行一下分析:1.ARP 请求报文从截图中可以看出硬件类型(hardware type)是以太网(0x0001) 。协议类型(protocol type)为 0x0800,表示使用 ARP 的协议类型为 IPV4。硬件地址长度(hardware size)为 6。协议地址长度(protocol size)为 4,操作类型(opcode)为 0x0001,表示报文类型为 ARP 请求。发送方硬件地址(sender MAC address)为 00:23:8b:d4:a6:04,定义了发送方的硬件地址。发送方协议地址(sender IP address)为 192.168.0.101,定义发送方的协议地址。目的硬件地址(target MAC address)为 00:00:00:00:00:00,表示是广播地址。目的协议地址(target IP address)为 192.168.0.103,定义目的设备的协议地址。2.ARP 应答报文硬件类型为以太网。协议类型为 IP(0x0800) 。硬件地址长度为 6,协议地址长度为 4,操作类型为 2( 0x0002) ,表示为 ARP 应答报文。发送方硬件地址为00:26:c6:8c:de:0c ,发送方 IP 地址为 192.168.0.103。目的硬件地址为00:23:8b:d4: a6:04,目的协议地址为 192.168.0.101。ARP 请求报文中在发送方硬件地址字段填上本机的物理地址,在发送方 IP地址字段填入本机的协议地址,在目的协议地址字段填入准备解析的目的主机 IP地址,以广播方式在以太网上发送。在 ARP 应答报文中,目的主机将收到的 ARP请求报文中的发送方硬件地址和 IP 地址放入目的硬件地址和目的协议地址,在发送方硬件地址和发送方协议地址中分别填入自己的硬件地址和协议地址,在以太网上单播发送。2. ARP 协议安全威胁分析1) ARP 协议的介绍ARP 协议用来在只知道 IP 地址的情况下去发现设备的硬件地址(Media Access Control, MAC 地址) ,其设计目的是用于不同的物理网络层。当发出请求的设备(源主机)不知道目标(目的主机)的 MAC 地址,它就会使用以太广播包给网络上的每一台设备发送 ARP 请求,当一台设备收到一个 ARP 请求数据包时,它用它自己的 IP 地址与包头部的 IP 地址比对,若匹配,该设备(目的主机)就会回送一个 ARP 回应数据包给源主机,该数据包不是广播包,当源主机收到 ARP 回应后,它会把结果存放在缓冲区内。只要设备给缓冲区中的某目标发送数据,缓冲区就是有效的,这样有助于减少网络上广播包的数量。若设备暂停发送数据,那么缓冲区会在一定时间(一般是 5 分钟)后清除该条 MAC-IP 的对应关系项。2) ARP 数据包的格式ARP 头部硬件类型 协议类型头部长度 数据包长度 运算源主机 MAC 地址(0-3 个字节)源主机 MAC 地址(4-5 个字节) 源主机 IP 地址(0-1 个字节)源主机 IP 地址(2-3 个字节) 源主机 MAC 地址(0-1 个字节)目的主机 MAC 地址(2-5 个字节)目标主机 IP 地址(0-3 个字节)ARP 请求以太头部 数据广播 源:硬件 0x806 ARP 头部 补丁ARP 回应以太头部 数据目标:硬件 源:硬件 0x806 ARP 头部 补丁3) 数据包的字段硬件类型(16 比特):ARP 协议起作用的物理网络类型,以太协议使用的值是 1。协议类型(16 比特):使用 ARP 协议的协议。IP 使用的值是 0x800。硬件长度(8 比特):在头部 MAC 地址段以字节表示的长度,以太协议使用的值是 6。协议长度(8 比特):上层协议地址的长度,IPv4 使用的值是 4。运算(16 比特):该字段指出的是请求数据包(值是 1)还是回应数据包(值是 2) 。源主机 MAC 地址(可变):数据包发送方的 MAC 地址,以太协议中的这个字段使用的值为 6 个字节。源主机协议地址(可变):发送方的 IP 地址,IPv4 使用的值是 4 个字节。目标主机 MAC 地址(可变):目标主机的硬件地址,以太协议中这个字段使用的值为 6 个字节。在 ARP 请求时这个字段为全 0。目标主机协议地址(可变):目标主机 IP 地址,IPv4 使用的值是 4 个字节。由于 ARP 头部的长度比最小以太数据包的尺寸要小,因此需要补丁。2. 安全威胁分析1) 基于头部的攻击任何针对 ARP 协议的头部的攻击必须由与目标主机处在同一个网络中的主机实施。无效的 ARP 数据包通常被主机丢弃。所以,基于头部的攻击并不有效。2) 基于协议的攻击当攻击者发现一个 ARP 请求,用无效的 ARP 应答回应。这能造成 ARP 缓冲区中填满错误信息。由于 ARP 请求是广播包,因此网络中的每个设备都将发现这个请求。攻击者需要在真正的 ARP 应答到达以前,向受害者发送 ARP 应答。一些主机将探测到因相互冲突的结果导致多个 ARP 应答,并标识为警告。攻击的结果是一个无效的 MAC 地址被放到受害者的 ARP 缓冲区中,这将阻止受害者与目标设备之间的通信。另一个结果是在攻击者发送带有 MAC 地址的虚假 ARP 应答给另一个攻击者,造成收到这个 ARP 应答的主机把数据包发送到错误的主机,这常常被称为 ARP 缓冲区中毒。3) 基于流量的攻击(雪崩攻击)攻击者能够远程制造一个 ARP 广播雪崩。如上图所示,目标网络是一个 C 类网络,所包含的主机较少。当一个来自另一个网络的数据包其目标是目标网络中的主机时,路由器检查它的 ARP 表以确认它是否需要向目标发送一个 ARP 请求。如果攻击者向目标网络中的各个地址发送一个数据包,则攻击者在完成攻击后,路由器 ARP 表将包含 4 个条目。由于主机数目可能达到 254 台,因此路由器可能发送多达 253 个 ARP 请求。这 253 个 ARP 请求中,249 个是没有回应的,并且在一般环境下路由器对每个请求重新尝试 4 次,这将导致近 1000 个 ARP 请求的产生,这对其自身来说可能不是一个问题。但是,若攻击者继续扫描目标网络地址空间,向每台可能的主机发送一个数据包。每次扫描目标网络能够导致路由器发送 1000个 ARP 请求。可以设想,多个攻击者以相同方式瞄向一个网络,这样能够导致成千上万个广播包产生。可以采取一些常见的方法来消除这种攻击,即通过路由器或其他网络设备限制进入网络的数据包数量。这能够有助于消除雪崩式的攻击,但新的问题是当这些设备阻塞或者阻止了过多的流量时,一些合理的流量也可能收到影响。一般来讲,针对流量的攻击是难以制止的。4) 基于协议的攻击的一个具体例子(ARP 欺骗)A1A2A3An H3H2H1R1C 类目标网络互联网首先模拟一个局域网:该局域网内共有三台主机,由交换机(Switch)连接。其中一个主机A(Attacker)代表攻击方;另一台主机 S(Source) ,代表收发数据的源主机, ;还有一台主机 D(Destination)代表收发数据目的主机。这三台主机的 IP 地址分别配置为 192.168.0.2,192.168.0.3 和 192.168.0.4,其 MAC地址分别为 AA-AA-AA-AA-AA-AA,BB-BB-BB-BB-BB-BB 和 CC-CC-CC-CC-CC-CC。首先,S 给 D 发送数据,在 S 内部,上层的 TCP 和 UDP 的数据包已经传送到了最底层的网络接口层,数据包是待发送状态,而 S 并不知道 D 的硬件地址MAC。此时主机 S 会先查询自己的 ARP 缓存表,查看是否有 192.168.0.4 这台主机的 MAC 地址,如果有(即 CC-CC-CC-CC-CC-CC) ,就将这个 MAC 封装在数据包的外面,然后发送出去。如果没有,主机 S 就会向网内发送一个 ARP 广播包,询问 192.168.0.4 这台主机对应的 IP 地址,用自然语言表达就是:“我的 IP 是 192.168.0.3,MAC 地址是 BB-BB-BB-BB-BB-BB,我想知道 IP 地址为192.168.0.4 的主机的 MAC 地址是多少?” 。然后网络内的主机都会收到该ARP 广播包。正常情况下,主机 A 发现主机 S 要查询的 IP 地址不是自己的,就丢弃该数据包。而主机 D 一看主机 S 要查询的 IP 地址是自己的,则发出一个 ARP 应答包给 S,这个应答包是单播的,其内容用自然语言描述为:“我的 IP 地址是192.168.0.4,我的 MAC 地址是 CC-CC-CC-CC-CC-CC”。这样一来主机 S 的 ARP缓存表里面就有目的主机 D 的 MAC 地址了,之后主机 S 想要向主机 D 发送数据包,就可以在 ARP 缓存表里找到主机 D 的 MAC 地址。ARP 缓存表是动态更新的。ARP 协议的安全性是建立在“局域网里的主机都是诚实主体”这一基础上的,也就是说其安全威胁来自于局域网中的攻击者(本例为主机 A) 。比如主机 S发出 ARP 请求广播包查询主机 D 的 MAC 地址,而主机 D 也给出了正确应答,此时主机 A 也回应了一个包含自己的 MAC 地址的 ARP 应答包,而且发送不止一个这样的包。本来主机 S 的 ARP 缓存表中已经保存了正确的记录:192.168.0.4 对应 CC-CC-CC-CC-CC-CC,由于主机 A 不停地发送 ARP 应答包,导致主机 S 更新自身的 ARP 缓存表内记录为:192.168.0.4 对应 AA-AA-AA-AA-AA-AA,即为 ARP 缓冲区中毒,其后果是主机 S 会把主机 A 错当成目的主A192.168.0.2AA-AA-AA-AA-AA-AAS192.168.0.3BB-BB-BB-BB-BB-BBD192.168.0.4CC-CC-CC-CC-CC-CCSwitch机 D,将数据发送到主机 A。或者主机 A 冒充网关,在网内发送很多 ARP 广播包,声称自己是网关,而因为 ARP 协议本身的缺陷(局域网互信) ,局域网内的主机都会把本来要发送到网关的数据发送给网关,导致整个局域网被攻击者 A 劫持。ARP 欺骗会被用于网络游戏账号的窃取,攻击者 A(或者是一个被劫持的主机)在被攻击者和网关之间截获被攻击主机的数据包,只要能破解数据包的加密算法,就可以进行解密,获取被攻击者的账号和密码。3. 对 ARP 欺骗的检测与控制由于 ARP 欺骗是针对 ARP 协议的攻击中较普遍的一种,所以专门叙述对 ARP 欺骗的检测与控制。首先是检测方法:1) 抓包分析使用抓包工具在局域网内抓取 ARP 的应答包,并对应答的部分进行分析,若MAC 地址不是你的真实 MAC 地址,就说明有 ARP 欺骗存在,这个 MAC 地址很可能就是进行 ARP 欺骗的主机的 MAC 地址。抓包分析的优点是便于实现,误判较少,但是只有在局域网内听包才有效。2) 三层交换机上查询 ARP 缓存表登录局域网上联三层交换机并查看 ARP 缓存表,如果表中存在一个 MAC 地址对应多个 IP 地址的状况,表明存在 ARP 欺骗攻击,这个 MAC 地址就是攻击者的 MAC 地址。这个方法的优点是可以远程操作,并且可以用相应脚本自动分析,缺点是需要管理权限,不适合普通用户。然后是控制方法:1) 主机静态绑定网关 MACWindows 命令提示符里的命令为 arp –s 绑定网关后,ARP 缓存表里的项就不会动态更新,需结合网关绑定主机 MAC地址使用。2) 网关使用 IP+MAC 绑定模式交换机启用静态 ARP 绑定模式,将局域网内的主机 IP 与 MAC 绑定,可有效防止 ARP 欺骗,需与主机绑定网关 MAC 地址结合使用。但是配置工作较繁重。3) 使用 ARP 服务器在局域网内假设 ARP 服务器代替主机应答 ARP 包。虽然效率较高,但是基础配置复杂,成本也很高。4) 使用防 ARP 攻击的软件便于实现,但是无法保证网关不被欺骗。此类软件很多,在此不做累述。一、结论1. 总结因为 ARP 协议本身就存在缺陷,所以目前为止,仍然没有一种十分有效的方法可以控制针对 ARP 协议的攻击。2. 展望以往的 ARP 病毒使用 ARP 欺骗的目的绝大多数是为了窃取用户的敏感信息,近来 ARP 欺骗在又有了新的应用,就是作为传播网页木马的手段,攻击者修改数据包里的网页代码,插入恶意代码,来达到对发出网页请求的主机的网页挂马攻击。
展开阅读全文
1
  金牌文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:Wireshark工具实验与协议安全威胁分析.docx
链接地址:http://www.gold-doc.com/p-256959.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们
copyright@ 2014-2018 金牌文库网站版权所有
经营许可证编号:浙ICP备15046084号-3
收起
展开