WireShark的应用背景
» 为更好掌握整个⽹络的运⾏情况,⼈们使⽤各种专业的数据包分析⼯具。Wireshark (前称Ethereal)就是其中⼀款知名的⽹络封包分析软件。它可以抓取⽹络封包,并以最为详细的⽅式,显示封包的数据。
Wireshark 应⽤⾮常⼴泛
˃ ⽹络管理员使⽤Wireshark 来检测⽹络问题;
˃ ⽹络安全⼯程师使⽤Wireshark 检查数据传输的安全问题;
˃ 开发者使⽤它为新的通信协议排错和学习⽹络协议的相关知识。
WireShark软件界面介绍
WireShark启动窗口
WireShark主窗口
WireShark各项功能简介
WireShark的功能
WireShark是一个最受欢迎的网络数据包分析软件,是截取网络数据包,并尽可能显示出最为详细的网络数据包数据.它是一个最知名开源应用程序的安全工具.
WireShark可以运行在Windows,MAC OS X,Linux和Unix操作系统上,他甚至可以作为一个Portable App运行.
一般分析任务
找出在一个网络内的发送数据包最多的主机
查看网络通信
查看某个主机使用了哪些程序
基本正常的网络通信
验证特有的网络操作
了解尝试连接无线网络的用户
同时捕获多个网络的数据
实施无人值守数据捕获
捕获并分析到/来自一个特定主机或子网的数据
通过FTP或HTTP来查看和重新配置文件传输
从其他捕获工具导入跟踪文件
故障任务
为故障创造一个自定义的分析环境
确定路径,客户端和服务延迟
确定TCP问题
检查HTTP代理问题
检查应用程序错误响应
通过查看图形显示的结果,找出相关的网络问题
确定重载的缓冲区
比较缓慢的通信到正常通信的一个基准
找出重复的IP地址
确定DHCP服务或网络代理问题
确定WLAN信号强度问题
检测WLAN连接的次数
检查各种网络配置错误
安全分析(网络取证)任务
为网络取证创建一个自定义分析环境
检查使用非标准端口的应用程序
确定到/来自可以主机的数据
查看哪台主机正在尝试获取一个IP地址
确定网络侦查过程
全球定位和映射远程目标地址
检查可疑数据重定向
检查单个TCP或UDP客户端和服务器之间的会话
检查到恶意畸形的帧
在网络数据中找出攻击签名的关键因素
应用程序分析任务
了解应用程序和协议如何工作
图形应用程序的带宽使用情况
确定是否将支持应用程序的链接
更新/升级后检查应用程序性能
从一个新安装的应用程序检查错误响应
确定哪个用户正在运行一个特定的应用程序
检查应用程序如何使用传输协议,如TCP或UDP
WireShark的下载和安装
网络数据包分析基础
WireShark捕获数据
当用户的计算机连接到一个网络时,它用来一个网络适配器和链路层驱动(如Realtek PCI-E网卡驱动)来发送和接受数据包.WireShark为了捕获和分析数据包,也是依赖网络适配器和网卡驱动来传递数据.
在这里插入图片描述
数据包分析基础
1.数据包分析
也叫数据包嗅探或协议分析:指捕获和解析网络上在线传输数据的过程,为了能更好的地了解网络上正在发生的事情.
2.目标
了解网络特征
查看通信主体
确认占用带宽者
识别网络高峰时段
识别攻击和恶意活动
查找不安全和滥用网络的应用
3.软件
Tcpdump(命令行)
OmniPeek(GUI)
WireShark(GUI)
4.协议
层次 | 协议 |
---|---|
应用层 | HTTP,SMTP,FTP,Telnet |
表示层 | ASCII,MPEG,JPEG,MIDI |
会话层 | NetBIOS,SAP,SDP,NWLink |
传输层 | TCP,UDP,SPX |
网络层 | IP,IPX |
链路层 | Ethernet,Token Ring,FDDI,AppleTalk |
5.数据封装
- 协议栈中的每层协议都负责在传输数据上增加一个协议头部或尾部,其中包含了使协议栈之间能够进行通信的额外信息
- 数据封装过程将创建一个协议数据单元PDU,其中包括正在发送的网络数据,以及所有增加的头部和尾部协议信息
- 数据包指的就是一个完整的PDU
6.网络硬件
集线器:工作在半双工模式,即可能同时发送和接收数据,会将数据包广播到所有集线器端口,适合用于抓包.
交换机:工作在全双工模式,数据包发往目的计算机连接的端口.
路由器:负责在两个或多个网络间转发数据包.
7.流量分类
广播流量:广播包被发送到一个网段上所有端口,二层广播地址是FF:FF:FF:FF:FF:FF,三层广播地址是主机地址为255的IP地址;路由器可以分割广播域.
多播流量:多播是将单一来源数据包同时传输给多个目标的通信方式,避免了数据包的大量复制,减少了网络带宽使用率.实施方法是通过将数据包接受者加入多播组的方式,多播地址是224.0.0.0~239.255.255.255
单播流量:一台计算机直接传输到另一台计算机.
监听网络线路
1.关键决策:在哪里放置数据包嗅探器?
2.混杂模式:需要一个支持混杂模式驱动的网卡,能够查看到所有刘静网络线路数据包的驱动模式
3.集线器嗅探方式:流经集线器的所有网络数;数据包都会被发送到每一个集线器连接的端口.
4.交换机嗅探方式:端口镜像,集线器输出(hubbing out),使用网络分流器,ARP欺骗攻击4种方法.
- 端口镜像
设置连接点额交换机的端口镜像功能,将交换机其他一个或多个端口的经过的数据包复制一份到嗅探器连接的端口上.
需要留意你所镜像端口的流量负载 - 集线器输出
在目标设备和交换机间插接一个集线器,嗅探器也接在集线器上.在交换机不支持端口镜像时可使用此方法.
- 网络分流器
有聚合的和非聚合的两种类型,都是安置在两个设备之间来修探索由流经的网络通信,聚合的是三个端口,非聚合的是四个端口.
- ARP欺骗
- 通过发送包含虚假MAC地址的ARP消息,劫持其他计算机流量的过程,它是在交换机式网络中进行的高级技术
5.路由器嗅探方式
在处理设计多个网段与路由器的问题时,需要将嗅探器移动到不同的位置上,才获得一个完整的网络拓扑.
数据报文
WireShark将从网络中捕获到的二进制数按照不同的协议包结构规范,显示在Packet Details面板中.为了帮助用户能够清楚地反洗数据,介绍识别数据包的方法.
在WireShark中关于数据包的叫法有三个术语
帧:数据链路层
包:网络层/IP层
段:传输层
Frame:物理层的数据帧概况
Ethernet II:数据链路层以太网帧头部信息
Internet Protocol Version 4:互联网层IP包头部信息
Transmission Control Protocol:传输层的数据段头部信息
Hypertext Tranfer Protocol:应用层的信息
物理层数据帧
数据链路层以太网帧
网络层IP报头部
传输层TCP段头部
WireShark的使用
WireShark面板
三个面板相互关联: - 在Packet List面板中单击选中要查看的数据包
- Packet Details面板显示数据包各字段的具体数值
- 在Packet Bytes面板中查看相应字段的字节信息