免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6206 | 回复: 3
打印 上一主题 下一主题

使用Wireshark 分析Linux网络数据 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-10-11 09:27 |只看该作者 |倒序浏览
原文:http://server.it168.com/server/2007-10-11/200710110823421.shtml\r\n\r\nWireshark是一个有名的网络端口探测器,是可以在Linux、Solaris、SGI等各种平台运行的网络监听软件,它主要是针对TCP/IP协议的不安全性对运行该协议的机器进行监听。其功能相当于Windows下的Sniffer,都是在一个共享的网络环境下对数据包进行捕捉和分析,而且还能够自由地为其增加某些插件以实现额外功能。Ethernet网络监测工具可在实时模式或离线模式中用来捕获和分析网络通信。 \r\n\r\n一、 Wireshark简介及其安装 \r\n\r\n    下面是使用Wireshark 可以完成的几个工作: \r\n\r\n • 网络管理员使用它去帮助解决网络问题 \r\n • 网络安全工程师用它去测试安全问题 \r\n • 开发人员用它是调试协议的实现过程 \r\n • 用它还可以帮助人员深入的学习网络协议 \r\n\r\n    在编译Wireshark之前应先确定已经安装pcap库(libpcap),这是编译Wireshark时所必需的。如果该库已经安装,就可以执行下面的命令来编译并安装Wireshark: \r\n\r\n#wegt http://www.wireshark.org/download/src/wireshark-0.99.4.tar.gz # cd Wireshark-0.10.12# ./configure# make ;# make install

论坛徽章:
0
2 [报告]
发表于 2007-10-11 09:28 |只看该作者
二 使用Wireshark \r\n\r\n    当编译并安装好Wireshark后,就可以执行“Wireshark”命令来启动Wireshark。在用Wireshark截获数据包之前,应该为其设置相应的过滤规则,可以只捕获感兴趣的数据包。Wireshark使用与Tcpdump相似的过滤规则,并且可以很方便地存储已经设置好的过滤规则。 \r\n\r\n Wireshark界面结构 \r\n\r\n    该工具提供一个强健的GUI界面,用来整理网络数据的捕获以及随后的网络通信浏览。主窗口包括一组菜单项,界面结构如图1。许多菜单从名字上看一目了然,这里不再阐述。第一个面板包含所有捕获报文的摘要。该面板包含报文号、时间戳、源、目的、协议以及信息域。这些域是可定制的,并且用户可删掉或加入其他的报文字段信息。 \r\n\r\n图1 Wireshark界面结构 \r\n1. 控制面板和主菜单; \r\n2. 报文摘要窗口; \r\n3. 报文细节窗口; \r\n4. 过滤器。 \r\n\r\n1. 设置Wireshark的过滤规则 \r\n\r\n    在用Wireshark截获数据包之前,应该为其设置相应的过滤规则,可以只捕获感兴趣的数据包。Wireshark使用与Tcpdump相似的过滤规则,并且可以很方便地存储已经设置好的过滤规则。要为Wireshark配置过滤规则,首先单击“Capture”选单,然后选择“Capture Filters...”菜单项,打开“Wireshark :Capture Filter”对话框。因为此时还没有添加任何过滤规则,因而该对话框右侧的列表框是空的(如图2所示)。在Wireshark中添加过滤器时,需要为该过滤器指定名字及规则。例如,要在主机192.168.0.3和192.168.0.11间创建过滤器,可以在“Filter name”编辑框内输入过滤器名字“cao”,在“Filter string”编辑框内输入过滤规则“host 192.168.0.3 and 192.168.0.11”,然后单击“新建”按钮即可。 \r\n\r\n图2 为Wireshark添加一个过滤器 \r\n\r\n    在Wireshark中使用的过滤规则和Tcpdump几乎完全一致,这是因为两者都基于pcap库的缘故。Wireshark能够同时维护很多个过滤器。网络管理员可以根据实际需要选用不同的过滤器,这在很多情况下是非常有用的。例如,一个过滤器可能用于截获两个主机间的数据包,而另一个则可能用于截获ICMP包来诊断网络故障。单击“保存”按钮,会到对话框。单击“关闭”按钮完成设置。

论坛徽章:
0
3 [报告]
发表于 2007-10-11 09:28 |只看该作者
2. 指定过滤器 \r\n\r\n    要将过滤器应用于嗅探过程,需要在截获数据包之前或之后指定过滤器。要为嗅探过程指定过滤器,并开始截获数据包,可以单击“Capture”选单,选择“Start...”选单项,打开“Capture Options”对话框,单击该对话框中的“Filter:”按钮,然后选择要使用的过滤器,如图3所示。 \r\n\r\n图3为Wireshark指定过滤器 \r\n\r\n    注意在“Capture Options”对话框中,“Update list of packets in real time”复选框被选中了。这样可以使每个数据包在被截获时就实时显示出来,而不是在嗅探过程结束之后才显示所有截获的数据包。 在选择了所需要的过滤器后,单击“确定”按钮,整个嗅探过程就开始了。Wireshark可以实时显示截获的数据包,因此能够帮助网络管理员及时了解网络的运行状况,从而使其对网络性能和流量能有一个比较准确的把握。如图4 。 \r\n\r\n图4 Wireshark实时显示截获的数据包 \r\n\r\nCapture Options其他选项:\r\n\r\n Interface(接口) \r\n    这个字段指定在哪个接口进行捕获。这是一个下拉字段,只能从中选择Wireshark 识别出来的接口,默认是第一块支持捕获的非loopback 接口卡。如果没有接口卡,那么第一个默认就是第一块loopback 接口卡。在某些系统中,loopback 接口卡不能用来捕获(loopback 接口卡在Windows平台是不可用的)。 \r\n\r\n IP address(IP 地址) \r\n    所选接口卡的IP 地址。如果不能解析出IP 地址,则显示\"unknown\" \r\n\r\n Link-layer header type(链路层头类型) \r\n    除非你在极个别的情况下可能用到这个字段,大多数情况下保持默认值。\r\n\r\n Buffer size: n megabyte(s) (缓冲区大小:n 兆) \r\n    输入捕获时使用的buffer 的大小。这是核心buffer 的大小,捕获的数据首先保存在这里,直到写入磁盘。如果遇到包丢失的情况,增加这个值可能解决问题。 \r\n\r\n Capture packets in promiscuous mode (在混杂模式捕获包) \r\n    这个选项允许设置是否将网卡设置在混杂模式。如果不指定,Wireshark 仅仅捕获那些进入你的计算机的或送出你的计算机的包。(而不是LAN 网段上的所有包). \r\n\r\n Limit each packet to n bytes (限制每一个包为n 字节) \r\n    这个字段设置每一个数据包的最大捕获的数据量。有时称作snaplen 。如果disable 这个选项默认是65535, 对于大多数协议来讲中够了。 \r\n Capture Filter(捕获过滤) \r\n    这个字段指定一个捕获过滤。 “在捕获时进行过滤”部分进行讨论。默认是空的,即没过过滤。也可以点击标为Capture Filter 的按钮, Wireshark 将弹出Capture Filters(捕获过滤)对话框,来建立或者选择一个过滤。

论坛徽章:
0
4 [报告]
发表于 2007-10-11 09:28 |只看该作者
三 用Wireshark分析互联网数据包实例 \r\n\r\n    上面基本是以局域网为例的。下面看看Wireshark对于互联网数据的分析。Wireshark和其它的图形化嗅探器使用基本类似的界面,整个窗口被分成三个部分:最上面为数据包列表,用来显示截获的每个数据包的总结性信息;中间为协议树,用来显示选定的数据包所属的协议信息;最下边是以十六进制形式表示的数据包内容,用来显示数据包在物理层上传输时的最终形式。 使用Wireshark可以很方便地对截获的数据包进行分析,包括该数据包的源地址、目的地址、所属协议等。图5是在Wireshark中对一个HTTP数据包进行分析时的情形。在图最上边的数据包列表中,显示了被截获的数据包的基本信息。 \r\n\r\n图5用Wireshark分析互联网数据包内容 \r\n\r\n    图5中间是协议树,通过协议树可以得到被截获的数据包的更多信息,如主机的MAC地址(Ethernet II)、IP地址(Internet Protocol)、TCP端口号(Transmission Control Protocol),以及HTTP协议的具体内容(Hypertext Trnasfer Protocol)。通过扩展协议树中的相应节点,可以得到该数据包中携带的更详尽的信息。图18-14最下边是以十六制显示的数据包的具体内容,这是被截获的数据包在物理媒体上传输时的最终形式,当在协议树中选中某行时,与其对应的十六进制代码同样会被选中,这样就可以很方便地对各种协议的数据包进行分析。图6 是一个详细封包分析。是点击该封包选择“Mark Pactet”。 \r\n\r\n图6 一个封包分析 \r\n\r\n    从图中可以看出,当前选中数据包的源地址是221.217.132.33,目的地址为202.106.124.50,该数据包所属的协议是超文本传输协议(HTTP)。要获取更加详细信息可以是点击该封包选择“Follow TCP stearm ”。如图18-16。 \r\n\r\n图7使用Follow TCP stearm 查看详细信息 \r\n\r\n    更详细的信息表明该数据包中含有一个HTTP的GET命令,访问的网站是:www.it168.com 。客户端使用的Firefox浏览器,操纵系统Linux。 \r\n\r\n总结 \r\n\r\n    Wireshark提供的图形化用户界面非常友好,管理员可以很方便地查看到每个数据包的详细信息,协议树及其对应的十六进制表示对分析每个数据包的目的很有帮助,配合使用Wireshark和Tcpdump能够基本满足网络管理员在Linux系统上的所有安全要示。 \r\n\r\n    更多Wireshark更高级的使用技术,读者可以参考此书: \r\n    Nessus.Snort.and.Ethereal.Power.Tools.Customizing.Open.Source.Security.Applications \r\n\r\nNessus.Snort.and.Ethereal.Power.Tools.Customizing.Open.Source.Security.Applications 封面
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP