Sniffer,中文可以翻译为嗅探器,是一种基于被动侦听原理的网络分析方式。使用这种技术方式,可以监视网络的状态、数据流动情况以及网络上传输的信息。
sniffer
sniffer是什么_sniffer -简介
Sniffer,中文可以翻译为嗅探器,是一种威胁性极大的被动攻击工具。使用这种工具,可以监视网络的状态、数据流动情况以及网络上传输的信息。当信息以明文的形式在网络上传输时,便可以使用网络监听的方式来进行攻击。将网络接口设置在监听模式,便可以将网上传输的源源不断的信息截获。黑客们常常用它来截获用户的口令。据说某个骨干网络的路由器曾经被黑客攻入,并嗅探到大量的用户口令。本文将详细介绍Sniffer的原理和应用。
一、Sniffer 原理
1.网络技术与设备简介
在讲述Sni计er的概念之前,首先需要讲述局域网设备的一些基本概念。
数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。帧通过特定的称为网络驱动程序的软件进行成型,然后通过网卡发送到网线上,通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。就是在这个传输和接收的过程中,嗅探器会带来安全方面的问题。
每一个在局域网(LAN)上的工作站都有其硬件地址,这些地址惟一地表示了网络上的机器(这一点与Internet地址系统比较相似)。当用户发送一个数据包时,这些数据包就会发送到LAN上所有可用的机器。
在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的数据包则不予响应(换句话说,工作站A不会捕获属于工作站B的数据,而是简单地忽略这些数据)。如果某个工作站的网络接口处于混杂模式(关于混杂模式的概念会在后面解释),那么它就可以捕获网络上所有的数据包和帧。
2.网络监听原理
Sniffer程序是一种利用以太网的特性把网络适配卡(NIC,一般为以太网卡)置为杂乱(promiscuous)模式状态的工具,一旦网卡设置为这种模式,它就能接收传输在网络上的每一个信息包。
普通的情况下,网卡只接收和自己的地址有关的信息包,即传输到本地主机的信息包。要使Sniffer能接收并处理这种方式的信息,系统需要支持BPF,Linux下需要支持SOCKET一PACKET。但一般情况下,网络硬件和TCP/IP堆栈不支持接收或者发送与本地计算机无关的数据包,所以,为了绕过标准的TCP/IP堆栈,网卡就必须设置为我们刚开始讲的混杂模式。一般情况下,要激活这种方式,内核必须支持这种伪设备Bpfilter,而且需要root权限来运行这种程序,所以sniffer需要root身份安装,如果只是以本地用户的身份进入了系统,那么不可能唤探到root的密码,因为不能运行Sniffer。
基于Sniffer这样的模式,可以分析各种信息包并描述出网络的结构和使用的机器,由于它接收任何一个在同一(物理)网段上传输的数据包,所以也就存在着捕获密码、各种信息、秘密文档等一些没有加密的信息的可能性。这成为黑客们常用的扩大战果的方法,用来夺取其他主机的控制权
3. Snifffer的分类
Sniffer分为软件和硬件两种,软件的Sniffer有NetXray、Packetboy、Net monitor等,其优点是物美价廉,易于学习使用,同时也易于交流;缺点是无法抓取网络上所有的传输,某些情况下也就无法真正了解网络的故障和运行情况。硬件的Sniffer通常称为协议分析仪,一般都是商业性的,价格也比较贵。
实际上本文中所讲的Sniffer指的是软件。它把包抓取下来,然后打开并查看其中的内容,可以得到密码等。Sniffer只能抓取一个物理网段内的包,就是说,你和监听的目标中间不能有路由或其他屏蔽广播包的设备,这一点很重要。所以,对一般拨号上网的用户来说,是不可能利用Sniffer来窃听到其他人的通信内容的。
4.网络监听的目的
当一个黑客成功地攻陷了一台主机,并拿到了root权限,而且还想利用这台主机去攻击同一(物理)网段上的其他主机时,他就会在这台主机上安装Sniffer软件,对以太网设备上传送的数据包进行侦听,从而发现感兴趣的包。如果发现符合条件的包,就把它存到一个LOg文件中去。通常设置的这些条件是包含字“username”或“password”的包,这样的包里面通常有黑客感兴趣的密码之类的东西。一旦黑客截获得了某台主机的密码,他就会立刻进入这台主机。
如果Sniffer运行在路由器上或有路由功能的主机上,就能对大量的数据进行监控,因为所有进出网络的数据包都要经过路由器。
Sniffer属于第M层次的攻击。就是说,只有在攻击者已经进入了目标系统的情况下,才能使用Sniffer这种攻击手段,以便得到更多的信息。
Sniffer除了能得到口令或用户名外,还能得到更多的其他信息,比如一个重要的信息、在网上传送的金融信息等等。Sniffer几乎能得到任何在以太网上传送的数据包。
Sniffer是一种比较复杂的攻击手段,一般只有黑客老手才有能力使用它,而对于一个网络新手来说,即使在一台主机上成功地编译并运行了Sniffer,一般也不会得到什么有用的信息,因为通常网络上的信息流量是相当大的,如果不加选择地接收所有的包,然后从中找到所需要的信息非常困难;而且,如果长时间进行监听,还有可能把放置Sniffer的机器的硬盘撑爆。
sniffer是什么_sniffer -用Sniffer监控网络流量
随着互联网多层次性、多样性的发展,网吧已由过去即时通信、浏览网页、电子邮件等简单的应用,扩展成为运行大量在线游戏、在线视频音频、互动教学、P2P等技术应用。应用特点也呈现出多样性和复杂性,因此,这些应用对我们的网络服务质量要求更为严格和苛刻。
目前,大多数网吧的网络设备不具备高端网络设备的智能性、交互性等扩展性能,当网吧出现掉线、网络卡、遭受内部病毒攻击、流量超限等情况时,很多网络管理员显的心有于而力不足。毕竟,靠网络管理员的经验和一些简单传统的排查方法:无论从时间上面还是准确性上面都存在很大的误差,同时也影响了工作效率和正常业务的运行。
Sniffer Pro著名网络协议分析软件。本文利用其强大的流量图文系统Host Table来实时监控网络流量。在监控软件上,我们选择了较为常用的NAI公司的sniffer pro,事实上,很多网吧管理员都有过相关监控网络经验:在网络出现问题、或者探查网络情况时,使用p2p终结者、网络执法官等网络监控软件。这样的软件有一个很大优点:不要配置端口镜像就可以进行流量查询(其实sniffer pro也可以变通的工作在这样的环境下)。这种看起来很快捷的方法,仍然存在很多弊端:由于其工作原理利用ARP地址表,对地址表进行欺骗,因此可能会衍生出很多节外生枝的问题,如掉线、网络变慢、ARP广播巨增等。这对于要求正常的网络来说,是不可思议的。
在这里,我们将通过软件解决方案来完成以往只有通过更换高级设备才能解决的网络解决方案,这对于很多管理员来说,将是个梦寐以求的时刻。
硬件环境(网吧):
100M网络环境下,92台终端数量,主交换采用D-LINK(友讯)DES-3226S二层交换机(支持端口镜像功能),级联普通傻瓜型交换机。光纤10M接入,华为2620做为接入网关。
软件环境:
操作系统Windows2003 Server企业标准版(Sniffer Pro4.6及以上版本均支持Windows2000 Windows-xp Windows2003)、NAI协议分析软件-Sniffer Portable 4.75(本文选用网络上较容易下载到的版本做为测试)
环境要求:
1、如果需要监控全网流量,安装有Sniffer Portable 4.7.5(以下简称Sniffer Pro)的终端计算机,网卡接入端需要位于主交换镜像端口位置。(监控所有流经此网卡的数据)
2、Snffier pro 475仅支持10M、100M、10/100M网卡,对于千M网卡,请安装SP5补丁,或4.8及更高的版本
网络拓扑:
sniffer
图
监控目的:通过Sniffer Pro实时监控,及时发现网络环境中的故障(例如病毒、攻击、流量超限等非正常行为)。对于很多企业、网吧网络环境中,网关(路由、代理等)自身不具备流量监控、查询功能,本文将是一个很好的解决方案。Sniffer Pro强大的实用功能还包括:网内任意终端流量实时查询、网内终端与终端之间流量实时查询、终端流量TOP排行、异常告警等。同时,我们将数据包捕获后,通过Sniffer Pro的专家分析系统帮助我们更进一步分析数据包,以助更好的分析、解决网络异常问题。
步骤一:配置交换机端口镜像(Mirroring Configurations)
以DES-3226S二层交换机为例,我们来通过WEB方式配置端口镜像(也可用CLI命令行模式配置)。如果您的设备不支持WEB方式配置,请参考相关用户手册。
1.DES-3226S默认登陆IP为:10.90.90.90 因此,需要您配置本机IP为相同网段才可通过浏览器访问WEB界面。
如图(1)所示:
sniffer
图1
2.使用鼠标点击上方红色字体:“Login”,如果您是第一次配置,输入默认用户名称、密码:admin 自动登陆管理主界面。
3.如图(2)所示,主界面上方以图形方式模拟交换机界面,其中绿色灯亮起表示此端口正在使用。下方文字列出交换机的一些基本信息。
sniffer
图2
4.如图(3):鼠标点击左下方菜单中的advanced setup->Mirroring Configurations (高级配置―镜像配置)
sniffer
图3
5.将Mirror Status 选择为Enable(默认为关闭状态,开启),本例中将Port-1端口设置为监听端口:Target Port=Port-1,其余端口选择为Both,既:监听双向数据(Rx接收 Tx发送),选择完毕后,点击Apply应用设置。
此时所有的端口数据都将复制一份到Port-1。(如图4)
sniffer
图4
接下来,我们就可以在Port-1端口,接入计算机并安装配置Sniffer Pro。
步骤二:Sniffer Pro 安装、启动、配置
Sniffer Pro 安装过程与其它应用软件没有什么太大的区别,在安装过程中需要注意的是:
①Sniffer Pro 安装大约占用70M左右的硬盘空间。
②安装完毕Sniffer Pro后,会自动在网卡上加载Sniffer Pro 特殊的驱动程序(如图5)。
③安装的最后将提示填入相关信息及序列号,正确填写完毕,安装程序需要重新启动计算机。
④对于英文不好的管理员可以下载网上的汉化补丁。
sniffer
图5
我们来启动Sniffer Pro。第一次启动Sniffer Pro时,需要选择程序从那一个网络适配器接收数据,我们指定位于端口镜像所在位置的网卡。
具体位于:File->Select Settings->New
名称自定义、选择所在网卡下拉菜单,点击确定即可。(如图6)
sniffer
图6
这样我们就进入了Sniffer Pro的主界面。
步骤三:新手上路,查询网关流量
下面以图文的方式介绍,如何查询网关(路由、代理:219.*.238.65)流量,这也是最为常用、重要的查询之一。
1. 扫描IP-MAC对应关系。这样做是为了在查询流量时,方便判断具体流量终端的位置,MAC地址不如IP地址方便。
选择菜单栏中Tools->Address Book 点击左边的放大镜(autodiscovery 扫描)在弹出的窗口中输入您所要扫描的IP地址段,本例输入:219.*.238.64-219.*.238.159点击OK,系统会自动扫描IP-MAC对应关系。扫描完毕后,点击DataBase->Save Address Book 系统会自动保存对应关系,以备以后使用。(如图7)
sniffer
图7
2.查看网关流量。点击Monitor->Host Table,选择Host table界面左下角的MAC-IP-IPX中的MAC。(为什么选择MAC?在网络中,所有终端的对外数据,例如使用QQ、浏览网站、上传、下载等行为,都是各终端与网关在数据链路层中进行的)(如图8)
sniffer
图8
3.找到网关的IP地址->选择single station->bar (本例中网关IP为219.*.238.65)
sniffer
图9
如图(9)所示:
219.*.238.65(网关)流量TOP-10 此图为实时流量图。在此之前如果我们没有做扫描IP(Address Book)的工作,右边将会以网卡物理地址-MAC地址的方式显示,现在转换为IP地址形式(或计算机名),现在很容易定位终端所在位置。流量以3D柱形图的方式动态显示,其中最左边绿色柱形图与网关流量最大,其它依次减小。本图中219.*.238.93与网关流量最大,且与其它终端流量差距悬殊,如果这个时候网络出现问题,可以重点检查此IP是否有大流量相关的操作。
如果要查看219.*.238.65(网关)与内部所有流量通信图,我们可以点击左边菜单中,排列第一位的->MAP按钮
如图(10)所示,网关与内网间的所有流量都在这里动态的显示。
sniffer
图10
需要注意的是:
绿色线条状态为:正在通讯中
暗蓝色线条状态为:通信中断
线条的粗细与流量的大小成正比
如果将鼠标移动至线条处,程序显示出流量双方位置、通讯流量的大小(包括接收、发送)、并自动计算流量占当前网络的百分比。
其它主要功能:
PIE:饼图的方式显示TOP 10的流量占用百分比。
Detail:将Protocol(协议类型)、From Host(原主机)、in/out packets/bytes(接收、发送字节数、包数)等字段信息以二维表格的方式显示。
第四步:基于IP层流量
1.为了进一步分析219.*.238.93的异常情况,我们切换至基于IP层的流量统计图中看看。
点击菜单栏中的Monitor->Host Table,选择Host Table界面左下角的MAC-IP-IPX中的IP。
2.找到IP:219.*.238.93地址(可以用鼠标点击IP Addr排序,以方便查找)->选择single station->bar (如图11所示)
sniffer
图11
3.我们切换至Traffic Map来看看它与所有IP的通信流量图。(图12)
sniffer
图12
我们可以从219.*.238.93的通信图中看到,与它建立IP连接的情况。图中IP连接数目非常大,这对于普通应用终端来讲,显然不是一种正常的业务连接。我们猜测,该终端可能正在进行有关P2P类的操作,比如正在使用P2P类软件进行BT下载、或者正在观看P2P类在线视频等。
为了进一步的证明我们的猜测,我们去看看219.*.228.93的流量协议分布情况。
4.如图(13)所示:Protocol类型绝大部分为Othen.我们知道在Sniffer Pro中Othen表示未能识别出来协议,如果提前定义了协议类型,这里将会直接显现出来。
sniffer
图13
如图(14)通过菜单栏下的Tools->Options->Protocols,在第19栏中定义14405(bitcomet的默认监听端口),取名为bitcom。
sniffer
图14
现在我们再次查看219.*.238.93协议分布情况.(如图15)
sniffer
图15
现在,协议类型大部分都转换为bitcom,这样我们就可以断定,此终端正在用bitcomet做大量上传、下载行为。
注意:很多P2P类软件并没有固定的使用端口,且端口也可以自定义,因此使用本方法虽然不失为一种检测P2P流量的好方法,但并不能完全保证其准确性。
好了,使用Sniffer Pro监控网关流量,就到这里结束了。实际上我们可以用同样的方法监控网络内的任何一台终端。后续,我们将继续连载使用Sniffer Pro监控网络的其它新手教程,例如:利用Sniffer pro做网络的预警机制、利用Sniffer pro分析病毒、通过包分析结合专家系统发现网络内存在的“未知问题”,以后我们将陆续做更深一步的探讨和分析。
概念解释:
1.什么是端口镜像?
把交换机一个或多个端口(VLAN)的数据镜像到一个或多个端口的方法。
2.为什么需要端口镜像 ?
交换机的工作原理与HUB有很大的不同,HUB组建的网络数据交换都是通过广播方式进行的,而交换机组建的网络是根据交换机内部CAM表(通常也称IP-MAC表)进行数据转发,因此需要通过配置交换机来把一个或多个端口(VLAN)的数据转发到某一个端口来实现对网络的监听。
3.端口镜像通常有以下几种别名:
①Port Mirroring 通常指允许把一个端口的流量复制到另外一个端口,同时这个端口不能再传输数据。
②Monitoring Port 监控端口
③panning Port 通常指允许把所有端口的流量复制到另外一个端口,同时这个端口不能再传输数据。
④PAN Port 在 Cisco 产品中,SPAN 通常指 Switch Port ANalyzer。某些交换机的 SPAN 端口不支持传输数据。
sniffer是什么_sniffer -相关条目
古代文学电影艺术