任务概述
嗅探器(sniffer)是能够捕获网络报文的设备,可以理解为一个安装在计算机上的窃听设备,它可以用来窃听计算机在网络上所产生的众多的信息。
任务目标
●能够了解网络嗅探技术的原理
●能够掌握嗅探造成的危害
●能够了解嗅探器的安全防范方法
学习内容
一、网络嗅探技术
嗅探技术是网络安全攻防技术中很重要的一种。对黑客来说,通过嗅探技术能以非常隐蔽的方式攫取网络中的大量敏感信息,与主动扫描相比,嗅探行为更难被察觉,也更容易操作。对安全管理人员来说,借助嗅探技术,可以对网络活动进行实时监控,进而发现各种网络攻击行为。
嗅探器是能够捕获网络报文的设备,可以理解为一个安装在计算机上的窃听设备,它可以用来被动窃听计算机在网络上所产生的输入/输出信息而不会轻易地被别人发觉。
二、嗅探原理
嗅探器的英文写法是sniffer,可以理解为一个安装在计算机上的窃听设备,它可以用来窃听计算机在网络上所产生的众多的信息。简单一点解释:一部电话的窃听装置,可以用来窃听双方通话的内容,而计算机网络嗅探器则可以窃听计算机程序在网络上发送和接收到的数据。
可是,计算机直接所传送的数据,事实上是大量的二进制数据。因此,一个网络窃听程序必须也使用特定的网络协议来分解嗅探到的数据,嗅探器必须能够识别出哪个协议对应于这个数据片断,只有这样才能够进行正确的解码。
计算机的嗅探器比起电话窃听器,有其独特的优势:很多的计算机网络采用的是“共享媒体”,也就是说,不必中断通讯并且配置特别的线路再安装嗅探器,而几乎可以在任何连接着的网络上直接窃听到同一掩码范围内的计算机网络数据。我们称这种窃听方式为“基于混杂模式(promiscuous mode)的嗅探”。目前,这种“共享”的技术慢慢转向“交换”技术,这种技术会长期使用下去,它可以实现有目的选择地收发数据。
三、嗅探造成的危害
Sniffer一般工作在OSI的数据链路层。通常情况下,计算机使用者并不直接和该层打交道,而数据链路层传输的数据帧包含有通信者的IP地址和MAC地址,嗅探者利用这些信息,配以各种嗅探工具能够很轻易地获取到各种用户的敏感信息。所以,Sniffer的危害是相当大的,它造成的危害主要有以下几个方面。
(1)捕获用户账号和密码。Sniffer可以记录到网络中传输的各种用户账号(如系统登录账号、各种网络游戏账号、网上银行账号等)和密码等敏感信息,哪怕这些敏感信息进行了加密传输,嗅探者也有可能使用各种破解工具获得敏感信息的明文。
(2)能够捕获专用的或者机密的信息。比如电子邮件,嗅探者通过拦截整个电子邮件数据包,从而获得邮件的完整内容。
(3)获取更高级别的访问权限。一旦嗅探者得到用户账号和密码,必然可以通过系统登录的认证而获取更高级别的系统访问权限,这样就能够获取到更多的敏感信息。
(4)嗅探低级的协议信息。通过对底层的信息协议的嗅探,获取到主机的MAC地址、IP地址、IP路由信息和TCP连接的顺序号等。利用获取的这些信息,能够对整个网络或者主机形成更多的危害,例如IP地址欺骗就要求准确插入TCP连接的顺序号。
在实际应用中,简单地将一个Sniffer放置在一个主机中将不会起到多大作用,嗅探者最多获取到这个主机上的敏感信息。但是,如果嗅探者将Sniffer放置在一个能够获取到许多网络数据的主机上时,例如运行网络设备管理软件的主机(这类主机往往运行有SNMP协议,并且是连接在交换机的镜像端口中,能够获得整个网络的通信数据)或者充当代理服务器角色的主机(这类主机往往运行有路由功能等),那么Sniffer将可以对大量的数据进行监控,造成十分大的危害。
四、嗅探器的安全防范
1.嗅探器的检测
理论上,嗅探器是不可能被检测出来的,因为嗅探器是一种被动的接收程序,属于被动触发,它只会收集数据包,而不发送出任何数据。尽管如此,嗅探器有时候还是能够被检测出来。例如,嗅探器要正常工作,必须将网卡设置为“混杂模式”,这个特性就为嗅探器的检测提供了手段。
2.嗅探器的防范
嗅探器非常难以被发现,因为它们是被动的程序。一个老练的攻击者可以轻易通过破坏日志文件来掩盖信息,并不会给别人留下进行核查的尾巴。完全主动的解决方案很难找到,但是可以采用一些被动的防御措施。
(1)安全的拓扑结构:嗅探器只能在当前网络段上进行数据捕获,这就意味着,将网络分段工作进行得越细,嗅探器能够收集的信息就越少。有3种网络设备是嗅探器不可能跨过的:交换机、路由器、网桥。现在交换机的价格已经很便宜,在网络中使用交换机来替代集线器连接网络,能有效地避免数据泛播,也就是避免了让一个主机接收任何与之无关的数据。在网络中进行VLAN划分,可以使网络能够隔离不必要的数据传送。
(2)会话加密:传统的网络服务程序SMTP、HTTP、FTP、POP3和Telnet等在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,嗅探器可以非常容易地截获这些口令和数据。通过对网络中的会话进行加密,让嗅探器无法获取会话所发送的内容,是防止嗅探的一种很好的方法。
(3)用静态的ARP或者IP-MAC对应表代替动态的ARP或者IP-MAC对应表:该措施主要是针对渗透嗅探的防范。在渗透嗅探过程中,攻击者常常采用诸如ARP欺骗等手段在交换网络中顺利完成嗅探。因此,可以在重要的主机上设置静态的ARP对应表,在交换机上设置静态的IP-MAC对应表等,这样就可以防止攻击者利用欺骗手段进行嗅探了。
(4)及时打补丁:计算机使用者应该养成这样的一个好习惯:定期查询各种安全网站,在这些网站中寻找最新的操作系统、应用软件的漏洞公告,及时下载安全补丁,并采取建议的相应对策。
(5)监控本地局域网的数据帧:查找异常网络行为是较好的检测策略。因此网络管理员可以运行自己的Sniffer,监控网络中指定主机的DNS流量,或使用各种网络工具软件测量当前网络的数据包延迟时间。
除此之外,网络管理员要重视数据交汇集中区域,如网关、交换机、路由器等附近的安全防范。入侵者要让嗅探器发挥较大功效,通常会把嗅探器放置在这些区域,以便能够捕获更多的数据。因此,对于这些区域应该加强防范,防止这些区域存在嗅探器。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。