1.求助:《网络嗅探技术分析与实现》信息
无线局域网(WLAN)因其安装便捷、组网灵活的优点在许多领域获得了越来越广泛的应用,但由于其传送数据通过无线电波传播,发射的数据可能到达预期之外的接收设备,因此WLAN的传送信息存在被窃取的危险。
这就是我们今天要说的嗅探技术,它是利用计算机的网络接口截获网络中数据报文的一种技术。嗅探一般工作在网络的底层,可以在对网络传输数据进行记录,从而捕获账号和口令、以及其他用户敏感信息,甚至可以用来获取更高级别的访问权限、分析网络结构进行网络渗透等。
随着无线局域网技术的广泛应用,其安全问题也被越来越多的用户关注。 WLAN中无线信道的开放性给网络嗅探带来了极大的方便。
在WLAN中网络嗅探对信息安全的威胁来自其被动性和非干扰性,运行监听程序的主机在窃听的过程中只是被动的接收网络中传输的信息,它不会与其它主机交换信息,也不修改在网络传输的信息包,使得网络嗅探具有很强的隐蔽性,往往使网络信息的丢失不容易被发现。尽管它没有对网络进行主动攻击或破坏行为明显,但由它造成的损失也是不可估量的。
只有通过分析网络嗅探的原理与本质,才能更有效地防患于未然,增强无线局域网的安全防护能力。 字串9 网络嗅探原理 字串3 要理解网络嗅探的本质,就必须要清楚数据在网络中封装、传输的过程。
根据TCP/IP协议,数据包是经过封装后,再被发送的。假设客户机A、B和FTP服务器C通过接入点(AP)或其他无线连接设备连接,主机A通过使用一个FTP命令向主机C进行远程登录,进行文件下载。
那么首先在主机A上输入登录主机C的FTP口令,FTP口令经过应用层FTP协议、传输层TCP协议、网络层IP协议、数据链路层上的以太网驱动程序一层一层包裹,最后送到了物理层,再通过无线的方式播发出去。主机C接收到数据帧,对数据信息进行对比分析处理。
这时主机B也同样接收到主机A播发的数据帧,并检查在数据帧中的地址是否和自己的地址相匹配,如不匹配则丢弃包。这就是TCP/IP协议通信的一般过程。
字串8 网络嗅探就是从通信中捕获和解析信息。假设主机B想知道登陆服务器C的FTP口令是什么,那么它要做的就是捕获主机A向C发送的数据包,对包信息进行解析,依次剥离出以太帧头、IP包头、TCP包头等,然后对报头部分和数据部分进行相应的分析处理,从而得到包含在数据帧中的有用信息。
字串7 俗话说巧妇难为无米之炊,在进行嗅探前,首先设置嗅探的计算机(安装配置无线网卡并把网卡设置为混杂模式)。这样网卡能够接收一切通过它的数据包,进而对数据包解析,实现数据监听;其次循环包,并将抓到的包送到数据解析模块处理;最后进行数据解析,依次提取出以太帧头、IP包头、TCP包头等,然后对各个报头部分和数据部分进行相应的分析处理。
字串9 防范策略 字串5 尽管嗅探技术实现起来比较隐蔽,但并不是没有防范的方法,下面笔者再来介绍下如何对嗅探行为进行防护。 字串3 首先,加强网络访问控制。
一种极端的手段是通过房屋的电磁屏蔽来防止电磁波的泄漏,通过强大的网络访问控制可以减少无线网络配置的风险。同时配置勘测工具也可以测量和增强AP覆盖范围的安全性。
虽然确知信号覆盖范围可以为WLAN安全提供一些有利条件,但这并不能成为一种完全的网络安全解决方案。攻击者使用高性能天线仍有可能在无线网络上嗅探到传输的数据。
字串7 其次,设置网络为封闭系统。为了避免网络被NetStumbler之类的工具发现,应把网络设置为封闭系统。
封闭系统是对SSID标为“any”的客户端不进行响应,并且关闭具有网络身份识别的功能的系统。这样可以比较好的禁止非授权访问,但不能完全防止被嗅探。
字串4 再其次,采用可靠的加密协议。如果用户的无线网络是用于传输比较敏感的数据,那么仅用WEP加密方式是远远不够的,需要进一步采用适合用户需求的第三方加密方式。
加密协议简单的可以理解为,介于HTTP协议与TCP协议之间的可选层,如SSL是在TCP之上建立了一个加密通道,对通过这一层的数据进行加密,从而达到保密的效果。 字串3 另外,使用安全Shell而不是Telnet。
SSH是一个在应用程序中提供安全通信的协议,通过使用RSA的算法建立连接。在授权完成后,接下来的通信数据是用IDEA技术来加密的。
SSH后来发展成为F-SSH,提供了高层次的、军方级别的对通信过程的加密。它为通过TCP/IP网络通信提供了通用的最强的加密。
目前,还没有人突破过这种加密方法。嗅探到的信息自然将不再有任何价值。
此外,使用安全拷贝而不是用文件传输协议也可以加强数据的安全性。 字串3 最后,使用一次性口令。
通常的计算机口令是静态的,容易被嗅探窃取。采用一次性口令技术,能使窃听账号信息失去意义。
例如S/key的原理是远程主机已得到一个口令(这个口令不会在不安全的网络中传输),当用户连接时会获得一个请求信息,用户将这个信息和口令经过算法运算,产生一个正确的响应回执信息(如果通信双方口令正确的话)。这种验证方式无需在网络中传输口令,而且相同的“请求/响应信息”也不会出现两次。
字串5 网络嗅探。
2.求助:《网络嗅探技术分析与实现》信息
无线局域网(WLAN)因其安装便捷、组网灵活的优点在许多领域获得了越来越广泛的应用,但由于其传送数据通过无线电波传播,发射的数据可能到达预期之外的接收设备,因此WLAN的传送信息存在被窃取的危险。
这就是我们今天要说的嗅探技术,它是利用计算机的网络接口截获网络中数据报文的一种技术。嗅探一般工作在网络的底层,可以在对网络传输数据进行记录,从而捕获账号和口令、以及其他用户敏感信息,甚至可以用来获取更高级别的访问权限、分析网络结构进行网络渗透等。
随着无线局域网技术的广泛应用,其安全问题也被越来越多的用户关注。 WLAN中无线信道的开放性给网络嗅探带来了极大的方便。
在WLAN中网络嗅探对信息安全的威胁来自其被动性和非干扰性,运行监听程序的主机在窃听的过程中只是被动的接收网络中传输的信息,它不会与其它主机交换信息,也不修改在网络传输的信息包,使得网络嗅探具有很强的隐蔽性,往往使网络信息的丢失不容易被发现。尽管它没有对网络进行主动攻击或破坏行为明显,但由它造成的损失也是不可估量的。
只有通过分析网络嗅探的原理与本质,才能更有效地防患于未然,增强无线局域网的安全防护能力。 字串9 网络嗅探原理 字串3 要理解网络嗅探的本质,就必须要清楚数据在网络中封装、传输的过程。
根据TCP/IP协议,数据包是经过封装后,再被发送的。假设客户机A、B和FTP服务器C通过接入点(AP)或其他无线连接设备连接,主机A通过使用一个FTP命令向主机C进行远程登录,进行文件下载。
那么首先在主机A上输入登录主机C的FTP口令,FTP口令经过应用层FTP协议、传输层TCP协议、网络层IP协议、数据链路层上的以太网驱动程序一层一层包裹,最后送到了物理层,再通过无线的方式播发出去。主机C接收到数据帧,对数据信息进行对比分析处理。
这时主机B也同样接收到主机A播发的数据帧,并检查在数据帧中的地址是否和自己的地址相匹配,如不匹配则丢弃包。这就是TCP/IP协议通信的一般过程。
字串8 网络嗅探就是从通信中捕获和解析信息。假设主机B想知道登陆服务器C的FTP口令是什么,那么它要做的就是捕获主机A向C发送的数据包,对包信息进行解析,依次剥离出以太帧头、IP包头、TCP包头等,然后对报头部分和数据部分进行相应的分析处理,从而得到包含在数据帧中的有用信息。
字串7 俗话说巧妇难为无米之炊,在进行嗅探前,首先设置嗅探的计算机(安装配置无线网卡并把网卡设置为混杂模式)。这样网卡能够接收一切通过它的数据包,进而对数据包解析,实现数据监听;其次循环包,并将抓到的包送到数据解析模块处理;最后进行数据解析,依次提取出以太帧头、IP包头、TCP包头等,然后对各个报头部分和数据部分进行相应的分析处理。
字串9 防范策略 字串5 尽管嗅探技术实现起来比较隐蔽,但并不是没有防范的方法,下面笔者再来介绍下如何对嗅探行为进行防护。 字串3 首先,加强网络访问控制。
一种极端的手段是通过房屋的电磁屏蔽来防止电磁波的泄漏,通过强大的网络访问控制可以减少无线网络配置的风险。同时配置勘测工具也可以测量和增强AP覆盖范围的安全性。
虽然确知信号覆盖范围可以为WLAN安全提供一些有利条件,但这并不能成为一种完全的网络安全解决方案。攻击者使用高性能天线仍有可能在无线网络上嗅探到传输的数据。
字串7 其次,设置网络为封闭系统。为了避免网络被NetStumbler之类的工具发现,应把网络设置为封闭系统。
封闭系统是对SSID标为“any”的客户端不进行响应,并且关闭具有网络身份识别的功能的系统。这样可以比较好的禁止非授权访问,但不能完全防止被嗅探。
字串4 再其次,采用可靠的加密协议。如果用户的无线网络是用于传输比较敏感的数据,那么仅用WEP加密方式是远远不够的,需要进一步采用适合用户需求的第三方加密方式。
加密协议简单的可以理解为,介于HTTP协议与TCP协议之间的可选层,如SSL是在TCP之上建立了一个加密通道,对通过这一层的数据进行加密,从而达到保密的效果。 字串3 另外,使用安全Shell而不是Telnet。
SSH是一个在应用程序中提供安全通信的协议,通过使用RSA的算法建立连接。在授权完成后,接下来的通信数据是用IDEA技术来加密的。
SSH后来发展成为F-SSH,提供了高层次的、军方级别的对通信过程的加密。它为通过TCP/IP网络通信提供了通用的最强的加密。
目前,还没有人突破过这种加密方法。嗅探到的信息自然将不再有任何价值。
此外,使用安全拷贝而不是用文件传输协议也可以加强数据的安全性。 字串3 最后,使用一次性口令。
通常的计算机口令是静态的,容易被嗅探窃取。采用一次性口令技术,能使窃听账号信息失去意义。
例如S/key的原理是远程主机已得到一个口令(这个口令不会在不安全的网络中传输),当用户连接时会获得一个请求信息,用户将这个信息和口令经过算法运算,产生一个正确的响应回执信息(如果通信双方口令正确的话)。这种验证方式无需在网络中传输口令,而且相同的“请求/响应信息”也不会出现两次。
字串5 网络嗅探。
3.有关于网络的毕业论文题目,然后给几篇范文
浅谈计算机网络安全对策分析 论文关键词:计算机 网络 安全 对策 论文摘要:本文对计算机网络安全存在的问题进行了深入探讨,提出了对应的改进和防范措施。
随着计算机信息化建设的飞速发展,计算机已普遍应用到日常工作、生活的每一个领域,比如政府机关、学校、医院、社区及家庭等。但随之而来的是,计算机网络安全也受到全所未有的威胁,计算机病毒无处不在,黑客的猖獗,都防不胜防。
本文将着重对计算机信息网络安全存在的问题提出相应的安全防范措施。 1、技术层面对策 在技术方面,计算机网络安全技术主要有实时扫描技术、实时监测技术、防火墙、完整性检验保护技术、病毒情况分析报告技术和系统安全管理技术。
综合起来,技术层面可以采取以下对策: 1) 建立安全管理制度。提高包括系统管理员和用户在内的人员的技术素质和职业道德修养。
对重要部门和信息,严格做好开机查毒,及时备份数据,这是一种简单有效的方法。 2) 网络访问控制。
访问控制是网络安全防范和保护的主要策略。它的主要任务是保证网络资源不被非法使用和访问。
它是保证网络安全最重要的核心策略之一。访问控制涉及的技术比较广,包括入网访问控制、网络权限控制、目录级控制以及属性控制等多种手段。
3) 数据库的备份与恢复。数据库的备份与恢复是数据库管理员维护数据安全性和完整性的重要操作。
备份是恢复数据库最容易和最能防止意外的保证方法。恢复是在意外发生后利用备份来恢复数据的操作。
有三种主要备份策略:只备份数据库、备份数据库和事务日志、增量备份。 4) 应用密码技术。
应用密码技术是信息安全核心技术,密码手段为信息安全提供了可靠保证。基于密码的数字签名和身份认证是当前保证信息完整性的最主要方法之一,密码技术主要包括古典密码体制、单钥密码体制、公钥密码体制、数字签名以及密钥管理。
5) 切断传播途径。对被感染的硬盘和计算机进行彻底杀毒处理,不使用来历不明的U盘和程序,不随意下载网络可疑信息。
6) 提高网络反病毒技术能力。通过安装病毒防火墙,进行实时过滤。
对网络服务器中的文件进行频繁扫描和监测,在工作站上采用防病毒卡,加强网络目录和文件访问权限的设置。在网络中,限制只能由服务器才允许执行的文件。
7) 研发并完善高安全的操作系统。研发具有高安全的操作系统,不给病毒得以滋生的温床才能更安全。
2、管理层面对策 计算机网络的安全管理,不仅要看所采用的安全技术和防范措施,而且要看它所采取的管理措施和执行计算机安全保护法律、法规的力度。只有将两者紧密结合,才能使计算机网络安全确实有效。
计算机网络的安全管理,包括对计算机用户的安全教育、建立相应的安全管理机构、不断完善和加强计算机的管理功能、加强计算机及网络的立法和执法力度等方面。加强计算机安全管理、加强用户的法律、法规和道德观念,提高计算机用户的安全意识,对防止计算机犯罪、抵制黑客攻击和防止计算机病毒干扰,是十分重要的措施。
这就要对计算机用户不断进行法制教育,包括计算机安全法、计算机犯罪法、保密法、数据保护法等,明确计算机用户和系统管理人员应履行的权利和义务,自觉遵守合法信息系统原则、合法用户原则、信息公开原则、信息利用原则和资源限制原则,自觉地和一切违法犯罪的行为作斗争,维护计算机及网络系统的安全,维护信息系统的安全。除此之外,还应教育计算机用户和全体工作人员,应自觉遵守为维护系统安全而建立的一切规章制度,包括人员管理制度、运行维护和管理制度、计算机处理的控制和管理制度、各种资料管理制度、机房保卫管理制度、专机专用和严格分工等管理制度。
3、物理安全层面对策 要保证计算机网络系统的安全、可靠,必须保证系统实体有个安全的物理环境条件。这个安全的环境是指机房及其设施,主要包括以下内容: 1) 计算机系统的环境条件。
计算机系统的安全环境条件,包括温度、湿度、空气洁净度、腐蚀度、虫害、振动和冲击、电气干扰等方面,都要有具体的要求和严格的标准。 2) 机房场地环境的选择。
计算机系统选择一个合适的安装场所十分重要。它直接影响到系统的安全性和可靠性。
选择计算机房场地,要注意其外部环境安全性、地质可靠性、场地抗电磁干扰性,避开强振动源和强噪声源,并避免设在建筑物高层和用水设备的下层或隔壁。还要注意出入口的管理。
3) 机房的安全防护。机房的安全防护是针对环境的物理灾害和防止未授权的个人或团体破坏、篡改或盗窃网络设施、重要数据而采取的安全措施和对策。
为做到区域安全,首先,应考虑物理访问控制来识别访问用户的身份,并对其合法性进行验证;其次,对来访者必须限定其活动范围;第三,要在计算机系统中心设备外设多层安全防护圈,以防止非法暴力入侵;第四设备所在的建筑物应具有抵御各种自然灾害的设施。 计算机网络安全是一项复杂的系统工程,涉及技术、设备、管理和制度等多方面的因素,安全解决方案的制定需要从整体上进行把握。
网络安全解决方案是综合各种计算机网络信息系统安全技术。
4.论文“有关网络的论文”
原发布者:_Voyic_
互联网+摘要:网络作为一种新生事物,给人们的生活和学习所带来的好与坏的具体表现以及我们应该如何辩证的理解和网络的利与弊。然而,网络行业飞速发展,衍生出了互联网+的说法,所以,我们应该认识它,顺应时代潮流,认识互联网+。关键字:认识互联网+网络互联网+前景对互联网+的认识“互联网+”是创新2.0下的互联网发展新形态、新业态,是知识社会创新2.0推动下的互联网形态演进及其催生的经济社会发展新形态。“互联网+”是互联网思维的进一步实践成果,它代表一种先进的生产力,推动经济形态不断的发生演变。从而带动社会经济实体的生命力,为改革、创新、发展提供广阔的网络平台通俗来说,“互联网+”就是“互联网+各个传统行业”,但这并不是简单的两者相加,而是利用信息通信技术以及互联网平台,让互联网与传统行业进行深度融合,创造新的发展生态。它代表一种新的社会形态,即充分发挥互联网在社会资源配置中的优化和集成作用,将互联网的创新成果深度融合于经济、社会各领域之中,提升全社会的创新力和生产力,形成更广泛的以互联网为基础设施和实现工具的经济发展新形态。几十年来,“互联网+”已经改造及影响了多个行业,当前大众耳熟能详的电子商务、互联网金融、在线旅游、在线影视、在线房产等行业都是“互联网+”的杰作。网络现代网络有利于我们的智力开发。十指与电脑的配合联动,我们对计算机网络多种功能的运用,有助于提高我们的智力、技能和智能,而智力、技
5.想问一下网络嗅探器的功能
网络嗅探器 (Network Sniffer) 嗅探器是一种监视网络数据运行的软件设备,协议分析器既能用于合法网络管理也能用于窃取网络信息。
网络运作和维护都可以采用协议分析器:如监视网络流量、分析数据包、监视网络资源利用、执行网络安全操作规则、鉴定分析网络数据以及诊断并修复网络问题等等。 非法嗅探器严重威胁网络安全性,这是因为它实质上不能进行探测行为且容易随处插入,所以网络黑客常将它作为攻击武器。
嗅探器最初由 Network General 推出,由 Network Associates 所有。最近,Network Associates 决定另开辟一个嗅探器产品单元,该单元组成一家私有企业并重新命名为 Network General,如今嗅探器已成为 Network General 公司的一种特征产品商标,由于专业人士的普遍使用,嗅探器广泛应用于所有能够捕获和分析网络流量的产品。
市面上有很多类似嗅探器这样的产品,约具有十亿美元左右的市场规模。基本上分两类:手提式和分布式。
手提式嗅探器是一种能够安装在 PC 机上的单机设备软件。它能够捕获数据,实时控制和重操作数据分析。
零售价一般在数百到数万美元左右,这主要取决于各个供应商以及网络监视和数据分析的实现效果(以太网、千兆位以太网、光纤广域网链路等等)。 手提式协议分析器一般应用于小型公司或者大型公司的现场工程师等。
其核心技术主要是用于数据包的捕获和分析。不同的供应商具有不同的特征分析,诸如简单协议分析(即数据包重组为原始信息)或专家分析等等。
分布式嗅探器主要由两部分组成:一个是各网络点上的监视探测器;另一个是网络操作中心(NOC)的控制台。 大型企业一般采用该装置实现中心监控网络运行。
分布式嗅探器的零售价一般在数千美元到数百万美元左右。除了上述实现功能外,分布式嗅探器还能用来收集和分析 SNMP 和 RMON 数据,以全面了解网络情?r。
手提式嗅探器的主要供应商有:Network General 公司、Agilent Technologies 公司、Wildpackets 公司和 Javvin Technologies 公司等;分布式嗅探器的主要供应商有:Network General 公司、Netscout 公司等;也有一些开放源代码的网络协议分析器如 Ethereal,能够提供公共使用。 此外,网络嗅探器(Network Protocol Analyzer)还被称为协议分析器(Protocol Analyzer)、数据包分析器(Packet Analyzer)、网络窃听器(Network Sniffing Tool)、网络分析器(Network Analyzer)等。
性能 佳文数据包分析器 Network General 嗅探器基本型 (Sniffer Basic) Wildpackets Etherpeek 捕获包 Ethernet 10/100 Ethernet 10/100 Ethernet 10/100 分析 协议分析和重建应用程序信息 简单协议分析、不包括专家协议分析(除非嗅探器专用版本 Sniffer Pro) 简单协议分析、不包括专家协议分析(除非 Etherpeek NX 版本) 协议分析范围 所有 TCP/IP 协议 TCP/IP 协议及一些遗留协议 TCP/IP 协议及一些遗留协议 过滤 是 是 是 使用 30分钟自学 需要供应商一个星期的培训 需要供应商三天的培训 价格 4900元 大于5万元 大于1万元 记录 任何时候的日志文件 任何时候的日志文件 任何时候的日志文件 相关术语 协议分析器、协议分析、数据包分析器 相关链接 Packet Analyzer 英文版 网络嗅探器 (Network Sniffer) 嗅探器是一种监视网络数据运行的软件设备,协议分析器既能用于合法网络管理也能用于窃取网络信息。 网络运作和维护都可以采用协议分析器:如监视网络流量、分析数据包、监视网络资源利用、执行网络安全操作规则、鉴定分析网络数据以及诊断并修复网络问题等等。
非法嗅探器严重威胁网络安全性,这是因为它实质上不能进行探测行为且容易随处插入,所以网络黑客常将它作为攻击武器。 嗅探器最初由 Network General 推出,由 Network Associates 所有。
最近,Network Associates 决定另开辟一个嗅探器产品单元,该单元组成一家私有企业并重新命名为 Network General,如今嗅探器已成为 Network General 公司的一种特征产品商标,由于专业人士的普遍使用,嗅探器广泛应用于所有能够捕获和分析网络流量的产品。 市面上有很多类似嗅探器这样的产品,约具有十亿美元左右的市场规模。
基本上分两类:手提式和分布式。 手提式嗅探器是一种能够安装在 PC 机上的单机设备软件。
它能够捕获数据,实时控制和重操作数据分析。零售价一般在数百到数万美元左右,这主要取决于各个供应商以及网络监视和数据分析的实现效果(以太网、千兆位以太网、光纤广域网链路等等)。
手提式协议分析器一般应用于小型公司或者大型公司的现场工程师等。其核心技术主要是用于数据包的捕获和分析。
不同的供应商具有不同的特征分析,诸如简单协议分析(即数据包重组为原始信息)或专家分析等等。 分布式嗅探器主要由两部分组成:一个是各网络点上的监视探测器;另一个是网络操作中心(NOC)的控制台。
大型企业一般采用该装置实现中心监控网络运行。分布式嗅探器的零售价一般在数千美元到数百万美元左右。
除了上述实现功能外,分布式嗅探器还能用来收集和分析 SNMP 和 RMON 数据,以全面了解网络情?r。 手提式嗅探器的。
6.用VC编写网络嗅探工具
目前,已经有不少的Sniff工具软件,如Windows环境下,最富盛名的工具是Netxray和Sniffer pro,用它们在 Windows环境下抓包来分析,非常方便。
在UNIX环境下如Sniffit,Snoop,Tcpdump,Dsniff 等都是比较常见的。这里介绍一个用C语言和网络数据包和分析开发工具libpcap及winpcap实现的简易网络Sniffer。
2网络嗅探器程序实现在c环境下编程,源码如下:/* June 2nd,2002* Project for graduation qualification By Bby Team 19 */#include #include //必须加路径,必须把头文件packet32.h包含进去#include "..\..\Include\packet32.h"#include "..\..\Include\ntddndis.h"#define Max_Num_Adapter 10// Prototypes原形//发包void PrintPackets(LPPACKET lpPacket);//设备列表char AdapterList[Max_Num_Adapter][1024];// 主程序开始int main(){//define a pointer to an ADAPTER structure设备指针LPADAPTER lpAdapter = 0;//define a pointer to a PACKET structure包指针LPPACKET lpPacket;int i;DWORD dwErrorCode;DWORD dwVersion;DWORD dwWindowsMajorVersion;//Unicode strings (WinNT)WCHAR AdapterName[8192]; //网络适配器设备列表WCHAR *temp,*temp1;//ASCII strings (Win9x)char AdapterNamea[8192]; //网络适配器设备列表char *tempa,*temp1a;int AdapterNum=0,Open;ULONG AdapterLength;char buffer[256000]; // 容纳来自驱动器的数据的缓冲区struct bpf_stat stat;// 获得本机网卡名AdapterLength=4096;printf("Packet.dll test application. Library version:%s\n", PacketGetVersion());printf("Adapters installed:\n");i=0; 下面这段代码是用来在不同版本下得到网络适配器名:Win9x 和WinNT中的网卡名称是分别用ASCII和UNICODE实现的,所以首先要得到本地操作系统的版本号.:dwVersion=GetVersion();dwWindowsMajorVersion= (DWORD)(LOBYTE(LOWORD(dwVersion)));这里首先用到的Packet.dll函数是PacketGetAdapterNames(PTSTR pStr,PULONG BufferSize,通常它是与驱动程序通信并被调用的第一个函数,它将返回的用户本地系统中安装的网络适配器的名字放在缓冲区pStr中;BufferSize是缓冲区的长度:if (!(dwVersion >= 0x80000000 && dwWindowsMajorVersion >= 4)){ //是Windows NT// 找不到设备列表if(PacketGetAdapterNames(AdapterName,&AdapterLength)==FALSE){printf("Unable to retrieve the list of the adapters!\n");return -1;一个简易网络嗅探器的实现 来自: 书签论文网 }// 找到设备列表temp=AdapterName;temp1=AdapterName;while ((*temp!='\0')||(*(temp-1)!='\0')){if (*temp=='\0') {memcpy(AdapterList,temp1,(temp-temp1)*2);temp1=temp+1;i++;}temp++;}// 显示适配器列表AdapterNum=i;for (i=0;i wprintf(L"\n%d- %s\n",i+1,AdapterList);printf("\n");}else //否则就是windows 9x,获取适配器名的方法同WinNT下{if(PacketGetAdapterNames(AdapterNamea,&AdapterLength)==FALSE){printf("Unable to retrieve the list of the adapters!\n");论文一个简易网络嗅探器的实现来自 return -1;}tempa=AdapterNamea;temp1a=AdapterNamea;while ((*tempa!='\0')||(*(tempa-1)!='\0')){if (*tempa=='\0') {memcpy(AdapterList,temp1a,tempa-temp1a);temp1a=tempa+1;i++;}tempa++;}AdapterNum=i;for (i=0;i printf("\n%d- %s\n",i+1,AdapterList);printf("\n");}下面这段代码就是让用户选择监听的网络适配器号:// 选择设备do {printf("Select the number of the adapter to open : ");scanf("%d",&Open);if (Open>AdapterNum) printf("\nThe number must be smaller than %d",AdapterNum); } while (Open>AdapterNum);然后,将所选择的设备打开,这里可以设置为“混杂”模式打开,也可以是“直接”模式打开。代码如下:// 打开设备lpAdapter = PacketOpenAdapter(AdapterList[Open-1]);// 当设备无法打开时,出示错误信息:if (!lpAdapter || (lpAdapter->hFile == INVALID_HANDLE_VALUE)){dwErrorCode=GetLastError();printf("Unable to open the adapter, Error Code : %lx\n",dwErrorCode); return -1;} 将网卡设置为“混杂”模式,代码如下:这里用到函数PacketSetHwFilter(LPADAPTER AdapterObject,ULONG Filter),它在到来的包上设置了一个硬件过滤器,如操作成功,返回TRUE。
AdapterObject是过滤器所在的网卡设备指针;过滤器的常量Filter定义在头文件ntddndis.h 中,包括有:•NDIS-PACKET-TYPE-PROMISCUOUS:设置混杂模式,每个到来的包都会被网卡接受;•NDIS-PACKET-TYPE-DIRECTED:只有直接到主机网卡的包才会被接受;•NDIS-PACKET-TYPE-BROADCAST:只接受广播包;•NDIS-PACKET-TYPE-MULTICAST:只接受到主机所在的组的多播包;•NDIS-PACKET-TYPE-ALL-MULTICAS:接受每个多播的包。// set the network adapter in promiscuous mode// 如果混杂模式设置失败,提示错误:if(PacketSetHwFilter(lpAdapter,NDIS_PACKET_TYPE_PROMISCUOUS)==FALSE){一个简易网络嗅探器的实现 来自: 书签论文网 。
转载请注明出处众文网 » 网络嗅探器相关毕业论文(求助:《网络嗅探技术分析与实现》信息)