Network 版 (精华区)

发信人: worldguy (蓝色天际), 信区: Network
标  题: WinDump使用简介
发信站: 哈工大紫丁香 (2004年03月26日20:40:14 星期五), 站内信件

网络流量分析工具Windump  
(本文出自《网管员世界》2003年第5期 网管工具箱 栏目)

        
Windump是Windows环境下一款经典的网络协议分析软件,其Unix版本名称为Tcpdump。它可
以捕捉网络上两台电脑之间所有的数据包,供网络管理员/入侵分析员做进一步流量分析和
入侵检测。在这种监视状态下,任何两台电脑之间都没有秘密可言,所有的流量、所有的
数据都逃不过你的眼睛(当然加密的数据不在讨论范畴之内,而且,对数据包分析的结果
依赖于你的TCP/IP知识和经验,不同水平的人得出的结果可能会大相径庭)。如果你做过D
EBUG或者反汇编,你会发现二者是那么惊人的相似。在W.Richard Stevens的鼎鼎大作《TC
P/IP详解》卷一中,通篇采用Tcpdump捕捉的数据包来向读者讲解TCP/IP;而当年美国最出
色的电脑安全专家下村勉在追捕世界头号黑客米特尼克时,也使用了Tcpdump,Tcpdump/Wi
ndump的价值由此可见一斑。

好了,言归正传,我们正式开始介绍Windump。该软件是免费软件,命令行下面使用,需要
WinPcap驱动,该驱动可以在http://winpcap.polito.it/install/default.htm下载。因为
Windump的下载非常方便,很多站点都有,在这里我就不提供了,请大家去网上搜索一下。

现在我们打开一个命令提示符,运行windump后出现:
D:\tools>windump
windump: listening on \Device\NPF_{3B4C19BE-6A7E-4A20-9518-F7CA659886F3}
这表示windump正在监听我的网卡,网卡的设备名称是:
\Device\NPF_{3B4C19BE-6A7E-4A20-9518-F7CA659886F3}

如果你看见屏幕上显示出这个信息,说明你的winpcap驱动已经正常安装,否则请下载并安
装正确的驱动。

Windump的参数很多,运行windump -h可以看到:
Usage: windump [-aAdDeflnNOpqRStuvxX] [-B size] [-c count] [ -C file_size ] [ 
-F file ] [ -i interface ] [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ] 
[ -E algo:secret ] [ expression ]

下面我来结合TCP的三步握手来介绍Windump的使用,请接着往下看:
D:\tools>windump -n
windump: listening on \Device\NPF_{3B4C19BE-6A7E-4A20-9518-F7CA659886F3}
09:32:30.977290 IP 192.168.0.226.3295 > 192.168.0.10.80: S 
912144276:912144276(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)//第一行
09:32:30.978165 IP 192.168.0.10.80 > 192.168.0.226.3295: S 
2733950406:2733950406(0) ack 912144277 win 8760 <nop,nop,sackOK,mss 1460> 
(DF)//第二行
09:32:30.978191 IP 192.168.0.226.3295 > 192.168.0.10.80: . ack 1 win 64240 
(DF)//第三行

先看第一行。其中09:32:30.977290表示时间;192.168.0.226为源IP地址,端口3295,其
实就是我自己的那台电脑;192.168.0.10是目的地址,端口80,我们可以判断这是连接在
远程主机的WEB服务上面;S 912144276:912144276(0)表示我的电脑主动发起了一个SYN请
求,这是第一步握手,912144276是请求端的初始序列号;win 64240 表示发端通告的窗口
大小;mss 1460表示由发端指明的最大报文段长度。这一行所表示的含义是IP地址为192.1
68.0.226的电脑向IP地址为61.133.136.34的电脑发起一个TCP的连接请求。

接下来我们看第二行,时间不说了;源IP地址为192.168.0.10,而目的IP地址变为192.168
.0.226;后面是S 2733950406:2733950406(0) ack 912144277,这是第二步握手,2733950
406是服务器端所给的初始序列号,ack 912144277是确认序号,是对第一行中客户端发起
请求的初始序列号加1。该行表示服务器端接受客户端发起的TCP连接请求,并发出自己的
初始序列号。

再看第三行,这是三步握手的最后一步,客户端发送ack 1,表示三步握手已经正常结束,
下面就可以传送数据了。

在这个例子里面,我们使用了-n的参数,表示源地址和目的地址不采用主机名的形式显示
而采用IP地址的形式。

下面我们再来看看如果三步握手不成功会是怎么样。我先telnet到一台没有开telnet服务
的计算机上面:
C:\Documents and Settings\Administrator>telnet 192.168.0.10
正在连接到192.168.0.10...不能打开到主机的连接, 在端口 23.
由于目标机器积极拒绝,无法连接。
这个时候我们再看windump所抓获的数据包:
D:\tools>windump -n
windump: listening on \Device\NPF_{3B4C19BE-6A7E-4A20-9518-F7CA659886F3}
10:38:22.006930 arp who-has 192.168.0.10 tell 192.168.0.226//第三行
10:38:22.007150 arp reply 192.168.0.10 is-at 0:60:8:92:e2:d//第四行
10:38:22.007158 IP 192.168.0.226.3324 > 192.168.0.10.23: S 
1898244210:1898244210 (0) win 64240 <mss 1460,nop,nop,sackOK> (DF)//第五行
10:38:22.007344 IP 192.168.0.10.23 > 192.168.0.226.3324: R 0:0(0) ack 
1898244211 win 0 //第六行
10:38:22.478431 IP 192.168.0.226.3324 > 192.168.0.10.23: S 
1898244210:1898244210(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)
10:38:22.478654 IP 192.168.0.10.23 > 192.168.0.226.3324: R 0:0(0) ack 1 win 0
10:38:22.979156 IP 192.168.0.226.3324 > 192.168.0.10.23: S 
1898244210:1898244210
(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)
10:38:22.979380 IP 192.168.0.10.23 > 192.168.0.226.3324: R 0:0(0) ack 1 win 0

从第三行中,我们可以看见192.168.0.226因为不知道192.168.0.10的MAC地址,所以首先
发送ARP广播包;在第四行中,192.168.0.10回应192.168.0.226的请求,告诉192.168.0.2
26它的MAC地址是0:60:8:92:e2:d。

第五行中,192.168.0.226向192.168.0.10发起SYN请求,但在第六行中,我们可以看见,
因为目标主机拒绝了这一请求,故发送R 0:0(0)的响应,表示不接受192.168.0.226的请求
。在接下来的几行中我们看见192.168.0.226连续向192.168.0.10发送SYN请求,但都被目
标主机拒绝。

好了,写了这么多不知道大家看累了没有,如果累了,说明你还需要了解更多的TCP/IP知
识,只有深入了解TCP/IP才有可能成为一个合格的网络管理员。Windump的参数很多,功能
也非常强大,以上我所介绍的仅仅是它冰山的一角,希望能起到抛砖引玉的作用,也希望
有更多的网络管理员能关注协议分析,只有这样,我们才能在日常的网络管理和应急时期
的入侵分析中立于不败之地,为我们的网络安全做出贡献。


 
--
No more you blind me heaven,
no more you bury me hell,
be powderize indifferent gods,
be lighted all the hears.

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.18]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.207毫秒