Linux系统下Sniffer的实现(一).docx
《Linux系统下Sniffer的实现(一).docx》由会员分享,可在线阅读,更多相关《Linux系统下Sniffer的实现(一).docx(27页珍藏版)》请在咨信网上搜索。
1、Linux系统下Sniffer的实现(一)论文关键词:嗅探器 数据包 协议栈 以太网论文摘要:Sniffer是一种强大的网络分析工具,它集成了很多可以有力解决网络问题的功能。Sniffer可以实时地列出流经多个网卡的数据包,它还支持基于某些应用的数据包捕捉。通过它,你可以获得你所感兴趣的某个应用的所有网络流量。今天,Sniffer成为了网络监控器和网络分析器的专用名词,它通常还代表收集数据和信息的方法。ISS把它这样定义:Sniffer是一种利用自身网络接口来对目的地是其它计算机的数据包进行捕捉的一种工具。本文介绍并研究了Sniffer相关技术,重点是在Linux系统下如何实现Sniffer并
2、获得相关数据包,并且详细介绍了Linux环境下Sniffer的实现过程。通过阅读本论文,您会对Sniffer有大致的了解,还可以得知如何在Linux系统环境下实现一个Sniffer的详细过程。同时,本文还简略介绍TCP/IP协议栈和Sniffer实现过程的关系,详尽分析了TCP/IP中各个层次。第一章 Sniffer简介什么是Sniffer ?Sniffer又叫“嗅探器”,是一种威胁性极大的被动攻击工具。使用这种工具,可以监视网络的状态、数据流动情况以及网络上传输的信息。当信息以明文的形式在网络上传输时,便可以使用网络监听的方式来进行攻击。黑客们常常利用它来截获用户私人信息,网络管理员也常常用
3、它来监视网络状态,分析网络流量,排除网络故障等。Sniffer分为软件和硬件两种,软件的Sniffer有 NetXray、Packetboy、Net monitor等,其优点是物美价廉,易于学习使用,同时也易于交流;缺点是无法抓取网络上所有的传输,某些情况下也就无法真正了解网络的故障和运行情况。硬件的Sniffer通常称为协议分析仪,一般都是商业性的,价格也比较贵。ISS ( Int ernetS ecurityS ystem)为Sniffer这样定义:Sniffer是利用计算机的网络接口截获目的地为其他计算机的数据报文的一种工具。我们一般认为Sniffer是指在运行以太网协议、TCP/ IP
4、协议、IPX协议或者其他协议的网络上,可以攫取网络信息流的软件或硬件。Sniffer早期主要是分析网络的流量,以便找出所关心的网络中潜在的问题。Sniffer的存在对网络系统管理员是至关重要的,网络系统管理员通过Sniffer可以诊断出大量的不可见模糊问题(如网络瓶颈、错误配置等),监视网络活动,完善网络安全策略,进行行之有效的网络管理。众所都知,在以太网中,所有的通讯都是广播的,也就是说通常在同一个网段的所有网络接口都可以访问在物理媒体上传输的所有数据,在正常的情况下,一个网络接口应该只响应单播和广播两种数据帧。对于网卡,一般都具备“正常模式”和“混杂模式”两种模式。网卡在“混杂模式”下可以
5、接收非本地址的数据帧。所以,简单说来,Sniffer就是在网卡处于“混杂模式”下,捕捉流经本网卡的所有数据包,并根据接收到的数据包,来进行一些应用,例如流量控制等。Sniffer的应用在内部网上,黑客要想迅速获得大量的账号,最为有效的手段是使用 sniffer 程序。这种方法要求运行Sniffer 程序的主机和被监听的主机必须在同一个以太网段上,并且要求要以root用户登陆,运行成功,就能够监听到本以太网段上的数据流。黑客会使用各种方法,获得系统的控制权并留下再次侵入的后门,以保证sniffer能够执行。大多数 ethernet sniffer程序在后台运行,将结果输出到硬盘存储上的某个记录文
6、件中。Internet是由众多的局域网所组成,这些局域网一般是以太网、令牌网的结构。数据在这些网络上是以很小的称为帧(Frame)的单位传输的,帧通过特定的网络驱动程序进行成型,然后通过网卡发送到网线上。由于以太网等很多网络(常见共享HUB连接的内部网)是基于总线方式,物理上是广播的,同一物理网段的所有主机的网卡都能接收到这些以太网帧。当网络接口处于正常状态时,网卡收到传输来的数据帧,网卡内的芯片程序先接收数据头的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,如果认为是目的地址为本机地址的数据帧或是广播帧,则接收并在接收后产生中断信号通知CPU,否则就丢弃不管,CPU
7、得到中断信号产生中断,操作系统就根据网卡驱动程序中设置的网卡中断程序地址调用驱动程序接收数据,驱动程序接收数据后放入信号堆栈让操作系统处理。通过修改网卡存在一种特殊的工作模式,在这种工作模式下,网卡不对目的地址进行判断,而直接将它收到的所有报文都传递给操作系统进行处理。这种特殊的工作模式,称之为混杂模式(Promiscuous Mode).Sniffer就是通过将网卡设置为混杂模式,它对遇到的每一个帧都产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。Sniffer工作在网络环境中的底层,它会拦截所有的正在网络上传送的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,
8、进而分析所处的网络状态和整体布局。另外,Sniffer一个更重要的作用就是进行网络监控。Sniffer通过捕捉流经本主机的所有数据包,然后对这些捕捉的数据包进行上层分析,进而得出关于网络流量等信息,为网络管理员做出某些决策提供证据。一般用户管理员会在服务器上运行一个Sniffer,通过捕捉数据包,然后进行详尽分析,就可以得到一些信息,例如,哪些主机在和服务器网络通信,这些主机分别在服务器上做了哪些操作。得到这些信息后,系统管理员就可以做一些决策,使得本服务器更加安全。一般来说,snifer可以截获的不仅仅是用户的ID和口令,它还可以截获敏感的经济数据(如信用卡号)、秘密的信息(Email)和专
9、有信息。基于入侵者可利用的资源,一个Sniffer可能截获网络上所有的信息。从sniffer上可以得到所有的信息,只要你有足够的存储空间。近年来sniffer技术出现了新的重要特征。传统的sniffer技术是被动地监听网络通信、用户名和口令。新的snifer技术出现了主动地控制通信数据的特点把sniffer技术扩展到了一个新的领域。sniffer既可以作为网络故障的诊断工具,也可以作为黑客嗅探和监听的工具。sniffer技术除了目前在传统的网络侦测管理外,也开始被应用在资讯保全的领域。可以这样说,snifer技术是一把双刃剑,如何更好地利用它,了解它的一些特性,这将为我们带来便利。目前Snif
10、fer工具的应用一般分为以下几个方面1. 分布式Sniffer系统(Sniffer Distributed): 分布式的Sniffer系统适用于管理大型企业网络或远距离的由多个网络段组成的网络。它由一个或数个中心控制台以及多个Sniffer服务器组成,每个Sniffer服务器可以放在一个网络段中,自动监视网络情况。每个Sniffer服务器都具有一个IP地址,可以和中心控制台通信,服务器根据中心控制台的命令实时监视分析网络,并将分析结果返回给中心控制台分布式系统,通过中央控制平台和分布全网的网络分析(Distributed Sniffer System, DSS)全天候地监控整个网络的运行情况。
11、2. 远程监测的分布式Sniffer系统(DSS/RMON): 通过结合中央控制平台与分布全网的网络分析器,同步收集RMON2统计数据,全天候地监控整个网络运行情况,主要包括分布式远程监控分析器(DSS/RMON Analysis Software)和分布式远程监控服务器(DSS/RMON Server), DSS/RMON探测器对OSI模型的七层结构均进行分析,直接监控网络状态,并把收集到的数据通过网络送达服务器,管理员则可在远端通过网络连接到服务器实现对网络的远程控制。3. Web技术: Web技术与网络管理技术相结合,是网络管理发展的新趋势,基于Web的网络管理系统允许管理员在网络的任何
12、位置,通过Web浏览器访问具有网络管理功能的服务器,进行网络管理;Web浏览器对计算机的硬件要求很低管理员依靠简单、廉价的计算平台就能访问具有管理功能的代理服务器。同样也可以将Web技术和Sniffer技术相结合,为用户提供一个用于管理互联网流量的完整的端到端视图。4. 在交换环境下Sniffer的使用: 共享连接的局域网是基于总线方式,物理上是广播的,同一物理网段的所有主机的网卡都能接收到这些以太网帧。交换机(switch)采用交换方式来传输数据,这样一台机器就无法得到与他无关的网络数据了。为了允许网络管理人员在switch环境下仍让可以得到其他任何一台机器的网络数据,采用了端口镜像技术(P
13、ort mirroring)。交换机就会把所有的网络数据都向该端口复制一份。这样在该端口上的机器就和以前一样,能够得到任何数据了。现在大多数switch产品都支持此项技术。5. 结合人工智能技术: 利用Sniffer“专家分析”技术(Expert Analysis),专家系统能够自动检测诸如拒绝连接、吞吐量降低等多种网络故障征兆,并且及时地阻止其发展成为致命的网络性能问题,并且能够根据当有们狗网络运行状况提出优化方案,以提高网络的运行效率,给出智能管理方案。同时具有学习与主动发觉网络问题的能力。当一个网络异常被发现时,立刻正确地指出其原因以便帮助去解决它。6. Sniffer无线解决方案(Sn
14、iffer Wireless网络分析器): Sniffer无线解决方案高效率设计构建起一个精密而安全的无线LAN基础架构。常用Sniffer系统简介Sniffer 可分软、硬两种,软件Sniffer有它的优点,价格成本相对较低,易于学习使用,同时也易于交流,缺点是无法抓取网络上所有的传输,比如碎片、fragment, short event等等,某些情况下也就无法真正了解网络的故障和运行情。硬件的Sniffer通常称为协议分析仪,一般都比较贵的,商用化的工具产品如美国网络联盟公司的Sniffer网络协议分析仪。以下是当前比较流行的Sniffer软件。 表 比较流行的Sniffer软件 软件名称
15、使用平台简单评价GlbblerDOS, Windows可以在一个单独的工作站上运行,仅分析本地的包,也可以在网络上运行ETHLOADDOS用于Ethernet和令牌环网NetmanUNIX只能运行在UNIX平台SNIFFITUNIX, Linux默认状态下只接受最先的400个字节的信息包Tcpdump, Free BSD, Linux, SunOS一个专业的网络管理工具,可移植性强Net MonitorWindowsMicrosoft 商用SnifferExpert SnifferUNIXNetwork General公司商用SnifferTotal Network Visibility Sn
16、ifferWindowsNAI-Sniffer 着名的整体网络解决方案之一SunOS被设计仅截获数据包的开头部分因为Sniffer工具比较多,所以还存在很多其他的Sniffer工具,在此,我们仅详细介绍Ethereal和tcpdump两种常用的Sniffer工具。Ethereal是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Linux和windows平台。Ethereal起初由Gerald Combs开发,随后由一个松散的etheral团队组织进行维护开发。它目前所提供的强大的协议分析功能完全可以媲美商业的网络分析系统,自从1998年发布最早的版本至今,大量的志愿
17、者为ethereal添加新的协议解析器,如今ethereal已经支持五百多种协议解析。很难想象如此多的人开发的代码可以很好的融入系统中;并且在系统中加入一个新的协议解析器很简单,一个不了解系统的结构的新手也可以根据留出的接口进行自己的协议开发。这都归功于ehereal良好的设计结构。事实上由于网络上各种协议种类繁多,各种新的协议层出不穷。一个好的协议分析器必需有很好的可扩展性和结构。这样才能适应网络发展的需要不断加入新的协议解析器。tcpdump是linux平台下一个很重要的Sniffer工具,作为互联网上经典的的系统管理员必备工具,tcpdump以其强大的功能,灵活的截取策略,成为每个高级的
18、系统管理员分析网络,排查问题等所必备的工具之一。tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。tcpdump存在于基本的 FreeBSD系统中,由于它需要将网络界面设置为混杂模式,普通用户不能正常执行,但具备root权限的用户可以直接执行它来获取网络上的信息。因此系统中存在网络分析工具主要不是对本机安全的威胁,而是对网络上的其他计算机的安全存在威胁。普通情况下,直接启动tcpdump将监视第一个网络界面上所有流过的数据包。Sniffer技术发展状况当前将Sniffer技术应用在网络管理中还不是十分的普遍,即使己经在网络管理中使用了Sni
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 系统 Sniffer 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。