理论教育 网络监听工具Sniffer的原理及应用

网络监听工具Sniffer的原理及应用

时间:2023-10-28 理论教育 版权反馈
【摘要】:网络监听是黑客在局域网中常用的一种技术,在网络中监听其他人的数据包,分析数据包,从而获得一些敏感信息,如账号和密码等。所以网络监听工具和网络扫描工具一样,也是一把双刃剑,要正确地对待。网络监听工具称为Sniffer(嗅探器),其可以是软件,也可以是硬件。(二)网络监听原理Sniffer工作的基本原理就是让网卡接收一切所能接收的数据。

网络监听工具Sniffer的原理及应用

当人们舒适地坐在办公室里,惬意地享受网络带来的便利,收取E-mail或者购买喜欢的物品时,信件和信用卡账号变成了一个又一个的信息包,在网络上不停地传送着。人们是否想过这些信息包会通过网络流入其他人的机器呢?这是实实在在的危险,因为网络监听工具能够实现这样的功能。

网络监听是黑客在局域网中常用的一种技术,在网络中监听其他人的数据包,分析数据包,从而获得一些敏感信息,如账号和密码等。网络监听原本是网络管理员经常使用的一个工具,主要用来监视网络的流量、状态、数据等信息,例如,Sniffer Pro就是许多系统管理员的必备工具。另外,分析数据包对于防黑客技术(如扫描过程、攻击过程有深入了解)也非常重要,从而对防火墙制定相应规则来防范。所以网络监听工具和网络扫描工具一样,也是一把双刃剑,要正确地对待。

网络监听工具称为Sniffer(嗅探器),其可以是软件,也可以是硬件。硬件的Sniffer也称为网络分析仪。不管是硬件还是软件,Sniffer的目标只有一个,就是获取在网络上传输的各种信息。

为了深入了解Sniffer的工作原理,先简单地介绍一下网卡与HUB的原理。因为Internet是现在应用最广泛的计算机联网方式,所以下面都用Internet来讲解。

(一)网卡工作原理

网卡工作在数据链路层,在数据链路层上,数据是以帧(Frame)为单位传输的。帧由几部分组成,不同的部分执行不同的功能,其中,帧头包括数据的目的MAC地址和源MAC地址。

帧通过特定的称为网卡驱动程序的软件进行成型,然后通过网卡发送到网线上,再通过网线到达目的机器,之后在目标机器的一端执行相反的过程。

目标机器的网卡收到传输来的数据,认为应该接收,就在接收后产生中断信号通知CPU,认为不该接收就丢弃,所以不该接收的数据网卡被截断,计算机根本不知道。CPU得到中断信号产生中断,操作系统根据网卡驱动程序中设置的网卡中断程序地址调用驱动程序接收数据。

网卡收到传输来的数据时,先接收数据头的目的MAC地址。通常情况下,像收信一样,只有收信人才去打开信件,同样网卡只接收和自己地址有关的信息包,即只有目的MAC地址与本地MAC地址相同的数据包或者是广播包(多播等),网卡才接收;否则,这些数据包就直接被网卡抛弃。

网卡还可以工作在另一种模式中,即“混杂”(Promiscuous)模式。此时网卡进行包过滤,不同于普通模式,混杂模式不关心数据包头内容,让所有经过的数据包都传递给操作系统处理,可以捕获网络上所有经过的数据帧。如果一台机器的网卡被配置成这样的方式,那么这个网卡(包括软件)就是一个嗅探器。

(二)网络监听原理

Sniffer工作的基本原理就是让网卡接收一切所能接收的数据。Sniffer工作的过程基本上可以分为3步:把网卡置于混杂模式;捕获数据包;分析数据包。

下面根据不同的网络状况,介绍Sniffer的工作情况。

1.共享式HUB连接的网络(www.daowen.com)

如果办公室里的计算机A、B、C、D通过共享HUB连接,计算机A上的用户给计算机C上的用户发送文件,根据Internet的工作原理,数据传输是广播方式的,当计算机A发给计算机C的数据进入HUB后,HUB会将其接收到的数据再发给其他每一个端口,所以在共享HUB下,同一网段的计算机B、C、D的网卡都能接收到数据,并检查在数据帧中的地址是否和自己的地址相匹配,计算机B和计算机D发现目的地址不是自己的,就把数据帧丢弃,计算机C接收到数据帧,并在比较之后发现是自己的,就将数据帧交给操作系统进行分析处理,如图2-56所示。同样的工作情况,如果把计算机B的网卡置于混杂模式(即在计算机B上安装了Sniffer软件),那么计算机B的网卡也会对数据帧产生反应,把数据交给操作系统进行分析处理,实现监听功能,如图2-57所示。

图2-56 HUB工作原理图

图2-57 监听模式的HUB

2.交换机连接的网络

交换机的工作原理与HUB不同。普通的交换机工作在数据链路层,交换机的内部有一个端口和MAC地址对应,当有数据进入交换机时,交换机先查看数据帧中的目的地址,然后按照地址表转发到相应的端口,其他端口收不到数据,如图2-58所示。只有目的地址是广播地址的,才转发给所有的端口。如果现在在计算机B上安装了Sniffer软件,计算机B也只能收到发给自己的广播数据包,无法监听其他人的数据。因此,在交换环境下,比HUB连接的网络安全得多。

现在许多交换机都支持镜像的功能,能够把进入交换机的所有数据都映射到监控端口,同样可以监听所有的数据包,从而进行数据分析,如图2-59所示。镜像的目的主要是为了网络管理员掌握网络的运行情况,采用的方法就是监控数据包。

图2-58 交换机工作原理图

图2-59 交换机的监听端口

要实现这个功能,必须能对交换机进行设置才可以。因此,在交换环境下,对于黑客来说很难实现监听,但是还有其他方法,如ARP欺骗、破坏交换机的工作模式、使其也广播式处理数据等。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈