首先,这些工具对网络上主机间的通信,能给出一个详细的,逐包的统计信息。入侵者可以选择某一台主机,看看它正在同那些主机进行通信,使用了哪些协议(通过端口号可以区分出来),传输一些针么内容。
对于这类工具,常常可以设置详细的过滤条件,可以针对信息的源主机、目的主机、使用的协议、使用的端口以及包的长度来设置过滤条件,也可以是这些条件的逻辑组合。
下面是使用snoop发现的主机asy&.vineyard.net和主机next之间后段对话:
#snoop
asy8.vineyard.netànext SMTP C port=1974
asy8.vineyard.netànsxt SMTP C port=1974 MALL FROM: next àasy8.vineyard.net SMTP C PORT=1974 250 Asy8.net à SMTP C port=1974
Asy8.vineyard.net à next SMTP C port=1974 RCPT TO: Nextàasy8.vineyard.net SMTP C port=1974 250 Asy8.vineyard.net ànext SMTP C port=1974.
Asy.vineyard.netànext SMPT C port=1974 DATA\r\n.
Next àasy8.vineyard.net SMTP c PORT =1974 354 Enter mail,end.
在这个例子中,一个邮件消息在从asy8.vineyard.net到计算机next的传播过程中被监听。如上所述,它能给出一个详细的报告,诸如系统中各个用户都在干什么。
对于入侵者来说,最喜欢的莫过于用户的口令。其实,在大多数情况下,监听到的包中,用户的口令也就像上面的“DATA r\N“一样,完全是明文形式,并且很容易找出来,因为人们没有采取任何形式的加密措施。而且口令往往是在一次通信的最开始的几个数据包中,只要找到了两台主机间连接的开始,便很容易找到认证用的口令。
对协议分析
所有的监听软件都可以对数据包进行详细分析,直到每一个字段的含义。
这是Solaris中的snoop使用的一个例子。这一命令监听网络接口/dev/le,
将监听到的数据包存于文件saved中。
# snoop -o saved
Using device /dev/le (promiscuous mode)
23 c
在监听了23个包之后,中断了监听。然后,可以使用snoop读取文件saved中的信息,并按照协议的格式,详细地输出包头的信息。这个命令监听不到包中传输的信息(被子该命令有意过滤掉了)。因此,这一命令是学习">TCP/IP的一个最好的实例,读者不妨详细研究一下不同协议层次,不同协议中的数据包的内容和格式。
# snoop -I saved -tr -v
ETHER:------------Ether Header------
ETHER:
ETHER: Packet 21 arrived at 17:02:;29.70
ETHER: packet size =85 bytes
ETHER: Desstination =0:20:af:3b:bb:8f,
ETHER: Source =8:0:3e:30:28:87,Motorola VME bus processor
Module
ETHER: Ethertype =0800 (Ip)
ETHER: 包的最外部分是以太帧头。
IP:-----------IP Header ----------
IP:
IP: Version =4
IP: Header length =20 bytes
IP: Type of service =0x00
Ip: xxx……..=0 (precedence)
IP: …0…=normal delay
IP: ….0...=normal throughput
IP: …..0.. =normal rellability
IP: Total length =71 bytes
IP: Tdentification =2014
IP: Flags =0x0
IP: .0……=may fragment
IP: ..0….. =last fragment
IP: Fragment offest =0 bytes
IP: Time to live =30 seconds/hops
IP: Protocol =17 (UDP)
IP: Header checksum =0714
IP: Source address =11.22.33.41, source.host
IP: Destination address =192.33.4.12, c.root –servers.ndt
IP: No options
IP:
紧跟着以太帧头的是IP分组的头部信息。
UDP:-----------UDP Header--------
UDP:
UDP: Source port =53
UDP: Destination port =53 (DNS)
UDP: Length =51
UDP: Checksum =2167
UDP:
IP是网络层,网络层之上是传输层。这个包在传输层使用了UDP协议。
DNS:---------DNS:--------
DNS:
DNS: “ “
DNS:
使用应用层的是域名解析服务。