明文嗅探

2014-11-18 20:09:35 38 6696 2


0x01 网卡工作原理简介

      以太网的标准拓扑结构为总线型拓扑,尽管目前快速以太网使用交换机来进行网络连接和组织,但在逻辑上,以太网仍然是总线型拓扑。网卡的主要工作是对总线当前状态进行探测,确定是否进行数据传输;对接收到的数据帧的物理地址(MAC)进行检查,并根据网卡驱动程序设置的接收模式判断是否接收,如果为接收,就接受数据,同时对CPU发送中断信号,将接收到数据帧交给操作系统处理,否则丢弃。整个过程在网卡上独立完成。对于网卡来说,一般有一下四种接收模式:

  • 广播模式:该模式下网卡接收物理地址(MAC)为0xFFFFFF的广播帧。
  • 组播模式:该模式下网卡接收自己组内的组播数据帧。
  • 直接模式:该模式下网卡只接收目的地址是自己MAC地址的数据帧。
  • 混杂模式:该模式下网卡接收所有经过自己的数据,不管该数据是否传给它的。


一般情况下,网卡的默认配置是同时支持前三种接收模式。如果将网卡的工作模式设为混杂模式,那么网卡将接受所有传递给它的数据包。这也就是嗅探器的基本原理:让网卡接收一切它能接收到的数据。

0x02 网络嗅探


网络中的两台主机要进行通信,就必须遵守相应的网络协议。常用的FTP、Telnet、HTTP、POP3协议都是进行数据的明文传输,一旦将明文传输的数据包截获下来,很容易就知道数据包内的敏感信息(如账号,密码),截获者就可以像正常用户那样,使用提取到信息登录相应的账户。为了防范此类攻击,现在大部分的网络应用都采用加密传输协议,将数据进行加密后再传输。若数据包被截获,无法使用私有的密钥进行解码,截获者看到的将是一些乱码,一个信息度为0的数据是没有任何意义的。


FTP明文嗅探:

网络拓扑:


环境:
  • PC1(Win2003):192.168.10.10  (管理机)
  • PC2(Win2003):192.168.10.20  、Wireshark 1.4.0rc2 、VMware 8.0(嗅探机)
  • VMPC1(Win2003):192.168.10.21 、IIS6.0 (FTP账密:test1,test123)、采用桥接模式与PC2相连(受害机)

过程:

首页在PC2上运行Wireshark,设置过滤条件:host 192.168.10.21 and tcp port 21,进行数据监听。

PC1在终端下对WMPC1进行FTP登录。



很快在Wireshark就显示了此次通信的所有数据包,其中账号和密码可以轻易的看到。





Telnet明文嗅探:
网络拓扑:


环境:
  • PC1(Win2003):192.168.10.10  (管理机)
  • PC2(Win2003):192.168.10.20  、Wireshark 1.4.0rc2 (嗅探机)
  • PC3(Win2003):192.168.10.30 、Telnet(账密:test2,test456) (受害机)

过程:



首先对锐捷交换机进行端口镜像配置,将F0/3的数据镜像到F0/2。
hostname(config)#monitor session 1 source interface fastEthernet 0/3 both
hostname(config)#monitor session 1 destination interface fastEthernet 0/2


在PC2上运行Wireshark,设置过滤条件:host 192.168.10.30 and tcp port 23,进行数据监听。

PC1 Telnet登录PC3




      登录成功后,停止PC2上的Wireshark监听,找到返回给登录者提示信息的那个包,后面就是传输的账号和密码。




      用户名以一个字符一个包的 形式进行传输,在接收到回车符后,返回一个提示输入密码的包,密码也是同样的方式。


0x03 嗅探对策

      由于嗅探器需要网卡在混杂模式下才能工作,所以可以利用一些方法将其检测出来,然后进行黑名单处理。DNS测试,很多攻击者使用的嗅探工具都会对IP进行反向DNS解析,以希望根据域名获取更有价值的主机。而不监听网络通讯的主机不会对数据包内的IP地址进行反向解析。根据这个特点,向网络中发送虚假目标IP地址的数据包,然后监听是否有机器发送对虚假目标IP地址的反向DNS查询。主机响应时间测试,向怀疑有网络监听行为的网络发送大量垃圾数据包,根据各个主机回应的情况进行判断,正常的主机由于网卡在硬件层面对数据帧的MAC地址进行判定,所以响应的时间应该没有太明显的变化,而处于混杂模式的主机由于对大量的垃圾信息照单全收,所以响应时间变化量则通常会有1-4个数量级。利用ping模式进行监测,假设怀疑的主机的MAC地址为00:30:6E:00:9B:B9,目的地址为192.168.1.1。那么我们伪造不与局域网内任何主机MAC地址相同的00:30:6E:00:9B:BC,目的IP为192.168.1.1的ICMP数据包。正常模式下的主机是不会对这个包进行响应,但混杂模式下的网卡会将一切接收的数据包直接上传到上层,上层检查到数据包的IP与自己的IP相符,于是对这个ping的包做出响应。这样,处于监听模式下的主机就暴漏了。

关于作者

codingm319篇文章452篇回复湖南理工学院 网络工程 学生

评论38次

要评论?请先  登录  或  注册