Wireshark在网络安全管理中的应用
2020-05-11欧国成
◆欧国成
Wireshark在网络安全管理中的应用
◆欧国成
(罗定职业技术学院 广东 527200)
为提升网络安全保障能力,介绍了网络分析器Wireshark的应用场景、常用的数据包分析功能及统计功能。以具体实验说明如何利用Wireshark发现ARP欺骗攻击、侦测DoS攻击,并给出相应的处理方法。实验证明,利用Wireshark能够实时监控网络运行状况、及时发现网络异常、快速诊断网络故障,在网络安全管理中能够发挥十分重要的作用。
Wireshark;网络管理;ARP欺骗攻击;DoS攻击
截至2019年6月,我国互联网普及率达61.2%,网民规模达8.54亿。随着我国的网络化水平不断提高,网络安全保障能力也必须同步提升,才能维护广大网民的合法权益。然而,病毒木马、网络诈骗、拒绝服务攻击、信息泄露等网络安全问题屡屡出现,严重威胁网民利用网络开展工作、学习、娱乐等活动的安全。监控网络运行状况、及时发现网络异常、诊断并排除网络故障、保证网络服务正常是网络管理员的日常工作内容。而网络管理工具是网络管理员工作中的好帮手,其中网络分析器是必不可少的工具之一。
1 网络分析器Wireshark
网络管理员利用网络分析器能及时发现各种网络异常,防范网络攻击事件。Wireshark凭借其开源、免费、功能强大等特点,成为最流行的网络分析器之一[1]。Wireshark具有强大的网络封包获取能力,并能提供强大的网络封包分析功能及统计功能,在网络安全管理中得到广泛应用。杨萍等利用Wireshark进行网络安全风险评估,提高计算机网络的运行安全水平[2];任皓利用Wireshark发现实施ARP欺骗攻击的可疑主机[3];辛伟伟等通过Wireshark捕获和分析DHCP数据包来定位网络故障[4];左晓静通过Wireshark抓取TCP数据包,分析TCP协议的工作过程[5];吴志森通过Wireshark对ICMP数据包进行嗅探并且记录,对网络中安全问题进行优化,防止数据被非法窃取[6]。
1.1 Wireshark应用场景
把安装了Wireshark软件的主机称为监控主机,网络管理员需要把监控主机的网卡设置为混杂模式并确保网络数据包经过监控主机的网卡,才能利用Wireshark捕获网络数据包。在实际应用中,常见的Wireshark应用场景有以下3种:
(1)捕获本机数据包。打开监控主机上的Wireshark应用程序,网卡会自动把工作模式切换为混杂模式,选择待监控的网络接口后就可以捕获到本机数据包。
(2)捕获集线器网络环境中的数据包。由于集线器是典型的广播通信网络设备,因此网络管理员只需把监控主机连接到集线器的任意一个端口上,就可以捕获集线器网络中所有主机的数据包。
(3)捕获交换机网络环境中的数据包。交换机网络属于点对点通信网络,要想捕获网络中其他主机的数据包,网络管理员需要在交换机上设置端口镜像,把其他端口的数据复制到监控主机所连接的交换机端口上。
1.2 Wireshark分析功能
启动监控主机上的Wireshark软件,选择待监控的网络接口后就可以捕获到大量的网络数据包。网络管理员要想在大量的捕获数据包中找出异常数据包,通过人工查找的方式是很难实现的。Wireshark提供了强大的数据包分析功能,包括定义过滤器、追踪数据流、专家信息等。下面分别介绍这几种常用的Wireshark分析功能。
(1)定义过滤器。该功能可以帮助用户在大量数据包中迅速找到想要的数据包,用户可以通过协议类型、数据方向、IP地址、端口号等多种规则定义过滤器,过滤器包括捕获过滤器和显示过滤器两种。捕获过滤器在捕获数据前定义,可以按照用户的设置捕获指定的数据包。显示过滤器可以帮助用户在捕获到的数据中筛选出指定的数据包并显示在窗口中。
(2)追踪流。该功能可以自动设置并应用显示过滤器规则,能够帮助用户在大量的捕获数据包中轻松地追踪到同一个TCP流、UDP流、TLS流、HTTP流等数据信息,方便用户对数据包作进一步的分析。
(3)专家信息。Wireshark的专家信息功能可以帮助网络管理员快速准确地找到网络故障点,进行下一步的处理。专家信息包括错误信息(Error)、警告信息(Warning)、注意信息(Note)、聊天信息(Chat)等。在网络管理中,管理员需要重点关注错误信息和警告信息。在专家信息窗口中,可以清晰地看到错误、警告数据包的分组、摘要、协议类型、数量等信息。
1.3 Wireshark统计功能
Wireshark同时提供了强大的数据包统计功能,包括捕获文件属性、已解析的地址、协议分级、网络节点和会话、I/O图表等统计功能。下面对常用的Wireshark统计功能作简要介绍。
(1)捕获文件属性统计。单击Wireshark统计菜单中的捕获文件属性命令,可以获得捕获文件的细节和描述。捕获文件细节包括文件名称、长度、封装、捕获时间、接口、分组统计等。在分组统计中,可以清楚地知道分组数量、时间跨度、平均分组速度、平均分组大小等信息。
(2)已解析地址统计。Wireshark提供地址解析功能,在已解析的地址窗口中,可以看到解析后的数据包地址、名称、端口名称、端口号、端口类型等信息。
(3)协议分级统计。Wireshark协议分级统计列出每种协议的分组数量、按分组百分比、字节大小、按字节百分比、分组速度等信息。网络管理员通过协议分级统计功能可以掌握网络中的数据包组成结构,当网络出现故障时能快速掌握攻击数据包的协议类型。
(4)网络节点和会话统计。网络节点统计详细描述了通信会话中每个节点接收和发送的数据包和字节数,方便网络管理员快速找出网络中哪个节点最占用网络资源。网络会话统计记录了每个会话的分组交换情况,包括会话双方的地址、会话分组数量、会话方向及分组大小等信息,方便网络管理员快速找出网络中哪个会话最占用网络资源。
(5)I/O图表统计。在Wireshark I/O图表窗口中,网络管理员能够看到网络吞吐量的实时图像显示,包括所有数据包的分时流量情况以及错误数据包的分布情况。I/O图表功能为网络管理员进行网络运行状况监控提供了极大的便利。
2 Wireshark在网络安全管理中的应用
Wireshark具有强大的网络封包捕获能力、分析能力及统计能力,能够在网络安全管理中发挥重要的作用。下面以具体实验介绍Wireshark在网络安全管理中的实际应用,实验网络拓扑图如图1所示。
图1 实验网络拓扑图
其中,路由器Router的内网IP为192.168.3.1,作为内网主机的网关;PC1模拟被黑客控制的肉鸡,它的内网IP地址为192.168.3.36;PC2模拟内网合法用户的主机,其内网IP地址为192.168.3.37;监控主机是网络管理员使用的安装了Wireshark软件的主机。
2.1 发现ARP欺骗攻击
正常情况下,PC2要与外网通信时,首先要通过ARP协议,获得网关的MAC地址,然后把数据发送到网关,再通过网关转发至外网传输。ARP欺骗攻击原理如图2所示。
肉鸡PC1向PC2发起ARP欺骗攻击,声称网关的MAC地址改成了自己的MAC地址,导致PC2原本要发送给网关的数据发给了PC1。同时PC1向网关发起ARP欺骗攻击,声称PC2的MAC地址改成了自己的MAC地址,导致网关原本要发送给PC2的数据发给了PC1。这样,肉鸡PC1就能截获PC2与网关之间的通信。
图2 ARP欺骗攻击原理
实验中,PC1利用伪造的MAC地址向PC2和网关发起双向ARP欺骗攻击,使得PC2不能与外界通信。
网络管理员收到PC2用户的网络故障报告后,利用Wireshark捕获网络中的ARP数据包,得到Wireshark的专家信息和I/O图表信息,如图3所示。
图3 利用Wireshark发现ARP欺骗攻击
通过MAC地址警告信息和I/O图表信息中的ARP数据包流量,可以清楚地看到PC2和网关的MAC地址都是ef:ef:ef:4f:10:9f,因此可以判定PC2和网关遭受了ARP欺骗攻击,且攻击者伪造的MAC地址为:ef:ef:ef:4f:10:9f。
网络管理员要处理这个网络故障,需要在PC2上利用“arp -s”命令把网关的IP地址和网关的MAC地址进行静态绑定,同时在网关路由器上把PC2的IP地址和PC2的MAC地址也进行静态绑定即可。
2.2 侦测DoS攻击
拒绝服务(DoS)攻击就是通过各种方式消耗攻击目标的可用资源,其目的是令攻击目标无法提供正常的网络服务,常见的DoS攻击有死亡之Ping、SYN Flood、UDP Flood、ICMP Flood、Land、Teardrop等。实验中,肉鸡PC1向PC2的80端口发起SYN Flood攻击,利用大量随机产生的源IP地址,疯狂向PC2发送SYN包,请求与PC2建立TCP连接,在收到PC2的SYN+ACK包后而不返回确认ACK包,使得PC2不断重发SYN+ACK包,直到超时为止,以此来消耗PC2的系统资源,导致PC2不能响应正常的TCP连接请求。
网络管理员可以利用Wireshark捕获网络中的TCP数据包,通过捕获的数据包、Wireshark警告、会话统计以及I/O图表功能,能快速侦测到网络中的PC2主机遭受DoS攻击,如图4所示。
在图4中,(a)展示了Wireshark捕获到大量RST=1,ACK=1的TCP数据包,数据包的源IP地址均为192.168.3.37(PC2的IP),源端口均为80端口,目标IP地址为随机的IP地址,目标端口均为46287端口;(b)展示了大量TCP连接重置的警告信息;(c)展示了大量相似的TCP会话统计信息;(d)展示了一段时间内的TCP数据包流量情况,流量高达4500个数据包每秒以上。根据以上现象,可以判断,网络中的PC2主机遭受SYN Flood攻击。
网络管理员可以通过关闭目标主机上不常用的端口、不必要的TCP/IP服务,利用网络防火墙对特定数据包进行过滤等方法来防范SYN Flood等拒绝服务攻击。
3 结语
本文介绍了网络分析器Wireshark的应用场景、常用的数据包分析功能及统计功能,以具体实验介绍了如何利用Wireshark发现ARP欺骗攻击、侦测DoS攻击,并给出相应的解决方法。实验证明,利用Wireshark能够实时监控网络运行状况、及时发现网络异常、快速诊断网络故障,在网络安全管理中能够发挥十分重要的作用。
[1]黄鲁江,雷烨,成燚.Wireshark协议解析在网络故障排查中的应用[J].铁道通信信号,2016,52(10):52-55.
[2]杨萍,田建春.Wireshark网络安全风险评估关键技术研究[J].网络安全技术与应用,2015(9):54+56.
[3]任皓.基于Wireshark的ARP欺骗分析及发现技术[J].电子设计工程,2018,26(2):18-21.
[4]辛伟伟,郝继升,张成.基于Wireshark的DHCP网络故障定位分析[J].延安大学学报(自然科学版),2018,37(1):34-36.
[5]左晓静,赵永乐,王荣.基于Wireshark的TCP协议工作过程分析[J].电脑知识与技术,2019,15(5):67-68.
[6]吴志森.利用Wireshark对网络中ICMP数据包进行嗅探分析[J].安徽电子信息职业技术学院学报,2019,18(6):21-25.