编写自己的网络嗅探器讲解
- 格式:ppt
- 大小:765.00 KB
- 文档页数:55
《网络与信息安全》课程设计报告班级学号:姓名:题目:评阅:成绩:2011年1月目录一、开发背景1、网络安全现状。
2、开发意义。
二、设计分析1、实现目标。
2、开发技术简介。
三、详细设计1、嗅探原理。
2、代码设计。
四、测试运行五、总结六、参考文献摘要网络嗅探器是作用在网络上的一种监听程序,它是系统管理员的一个得力助手,管理员可以用它来分析网络。
例如当网络繁忙时可利用它来查找是哪一段网络繁忙,数据报文是属于哪一种协议,这样可以计算出哪种业务受欢迎。
但是当有黑客使用它时,它又变得很可怕。
它可以非法获取一些保密性信息,如帐号、密码等,它带来的负面破坏是非常大的。
作为从事网络安全技术方面的人员来说,要想有效地利用它、防范它就得深入地学习、分析网络嗅探技术。
1、本设计的基本任务是设计一个嗅探软件,实现对常用网络数据包抓取、分析。
2、软件所要完成对本机在网络中的通信数据,比如协议类型,源、目的地址和端口、数据包的大小等加以分析的功能。
3、本设计用到的开发工具为Microsoft Visual Studio 2010 开发环境为Windows 7。
4、程序由韩瑞彬同学和我共同完成,本人主要负责主界面的设计和网络数据包的抓取,韩瑞彬同学负责对数据包的解析设计。
关键字:嗅探器,安全,黑客,数据报文一、开发背景1、网络安全现状随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。
但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。
计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。
Internet 的安全已经成为亟待解决的问题。
多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。
嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。
网络与信息安全课程设计网络嗅探器的设计和实现学院:计算机科学与技术班级:网络工程08-1班姓名:学号:指导老师:目录一、什么是嗅探器--------------------------------------------1二、嗅探器的作用---------------------------------------------1三、网络嗅探器的原理-----------------------------------------1四、反嗅探技术----------------------------------------------7五、网络嗅探器的设计-----------------------------------------8六、结语---------------------------------------------------14参考书目--------------------------------------------------14网络嗅探器的实际与实现一、什么是嗅探器嗅探器,可以理解为一个安装在计算机上的窃听设备它可以用来窃听计算机在网络上所产生的众多的信息。
简单一点解释:一部电话的窃听装置, 可以用来窃听双方通话的内容,而计算机网络嗅探器则可以窃听计算机程序在网络上发送和接收到的数据。
可是,计算机直接所传送的数据,事实上是大量的二进制数据。
因此, 一个网络窃听程序必须也使用特定的网络协议来分解嗅探到的数据,嗅探器也就必须能够识别出那个协议对应于这个数据片断,只有这样才能够进行正确的解码。
计算机的嗅探器比起电话窃听器,有他独特的优势:很多的计算机网络采用的是“共享媒体"。
也就是说,你不必中断他的通讯,并且配置特别的线路,再安装嗅探器,你几乎可以在任何连接着的网络上直接窃听到你同一掩码范围内的计算机网络数据。
我们称这种窃听方式为“基于混杂模式的嗅探”(promiscuous mode)。
网络攻击与防御技术实验报告实验目的:本实验通过研究Winpcap中常用的库函数的使用方式来实现了一个小型的网络数据包抓包器,并通过对原始包文的分析来展示当前网络的运行状况。
实验内容:1.实现对网络基本数据包的捕获2.分析捕获到的数据包的详细信息实验环境:1.WpdPack_4_0_1支持库2.VC++6.0开发环境3.Windows操作系统实验设计:系统在设计过程中按照MVC的设计模式,整体分为三层。
第一层为Control层即控制层,这里为简化设计,将Control层分为两个部分,一部分为网络报文输入,另一部分为用户输入;第二层是Model层即模型层;第三层为View层即显示层。
系统的整体运行过程为:从Control层得到数据,交到Model层进行处理,将处理完的结果交View层进行显示。
Control层主要用于网络数据包的捕获以及获得用户的输入;Model层主要用于分析数据包,处理用户的输入;View层主要用于对处理后的结果进行显示。
详细过程:程序在执行过程中有两个核心的工作,一是调用Winpcap函数库实现下层抓包。
二是对抓到的包文进行分析。
下面分别列出两个核心过程的基本算法与相关的实现代码。
抓包算法:第一:初始化Winpcap开发库第二:获得当前的网卡列表,同时要求用户指定要操作的网卡第三:获得当前的过滤规则,可为空第四:调用库函数,pcap_loop(),同时并指定其回调函数,其中其回调函数为数据包分析过程。
对应的相应核心代码为:I f((pCap=pcap_open_live(getDevice()->name,65536,1,1000,strErrorBuf))==NULL){ return -1; }If(pcap_compile(pCap, &fcode, filter, 1, NetMask) < 0){ return -1; }if(pcap_setfilter(pCap, &fcode)<0){ return -1; }do{pcap_loop(pCap,1,pcap_handle,NULL);}while(nFlag);分析算法:第一:得到数据包,先将其转存到内存里,以备以后再用。
计算机科学与技术学院课程设计报告2012— 2013学年第二学期课程名称计算机网络设计题目简单的网络嗅探器姓名学号专业班级指导教师2013年 6 月17日目录摘要 (2)关键词 (2)1 网络嗅探概述 (3)1.1 网络嗅探的简介 (3)1.2 相关的网络知识 (3)1.2.1 交换基础 (3)1.2.2 路由基础 (4)1.2.3网卡的工作原理 (5)1.3 基于网卡混杂模式的嗅探原理 (6)1.4 基于arp欺骗的嗅探原理 (6)1.5 网络嗅探的安全威胁 (7)1.6 网络嗅探的防范 (8)1.6.1 检测嗅探器 (8)1.6.2 将数据隐藏,使嗅探器无法发现 (8)2 基于原始套接字的嗅探程序 (9)2.1 嗅探实现 (9)2.2 嗅探运行结果 (26)2.2.1 嗅探普通数据包 (26)2.2.2 嗅探HTTP敏感信息 (26)2.2.3 嗅探FTP敏感信息 (27)小结 (29)参考资料 (29)网络嗅探器的设计与实现Design and implementation of network sniffer摘要近年来,伴随着网络技术的发展和网络应用的普及,互联网已经成为信息资源的重要载体和主要传布途径,从而使得网络的安全性和可靠性越来越受到关注和重视。
因此,对于能够很好的分析与诊断网络,测试网络性能与安全性的工具软件的需求越发迫切。
网络嗅探器作为分析与诊断网络,测试网络性能与安全性的工具软件之一,具有两面性。
攻击者可以通过使用它来监听网络中数据,达到非法截取信息的目的,网络管理者可以通过使用嗅探器捕获网络中传输的数据包并对其进行分析,分析结果可供网络安全分析之用。
本文对网络嗅探技术进行了简要分析,研究了网络数据包的捕获机制,如winpcap、原始套接字。
文中首先分析了嗅探的原理和危害,并介绍了几种常见的嗅探器,然后研究了入侵检测系统中使用的包捕获技术。
本文利用原始套接字在windows平台下实现了一个网络嗅探器程序,完成了对数据包进行解包、分析数据包的功能。
毕业论文题目:网络嗅探器的设计与实现学院:数学与信息工程学院专业:计算机科学与技术此毕业设计还包括以下文件,需要的下载后留下邮箱方便发给大家网络嗅探器的设计与实现摘要:嗅探器,英文可以翻译为Sniffer,是一种基于被动侦听原理的网络分析方式。
使用这种技术方式,可以监视网络的状态、数据流动情况以及网络上传输的信息。
实际上Sniffer技术被广泛地应用于网络故障诊断、协议分析、应用性能分析和网络安全保障等各个领域。
本次设计完成了一个较为简单的嗅探器,它实现了对本机的网络监控的作用,对IP包进行了分析,获得其运行的信息。
信息包括了源IP地址,目标IP地址,协议,时间,吞吐量,识别码,校验码,长度等等。
也可以保存所需要的包信息,也可选择所要嗅探的协议类型,以便获得要想的信息。
同时,通过POP3服务器设置端口的值来获取数据包,得到登入邮箱的帐号和密码。
关键词:嗅探器;协议;数据包;监听;吞吐量Design and Implementation of snifferZhang yin(College of Mathematics and Information Engineering, Jinxing University)Abstract:Sniffer, can be translated into English Sniffer,is a passive network analysis method based on the principle of listener. The use of such technology, can monitor the status of networks, data flows and information of network transmission. In fact Sniffer technology is widely used in network diagnosis, analysis of the agreement, performance analysis of the application and network security, and other fields.The design complete a relatively simple sniffer, it realized that the local network monitoring role, analysis the information of IP packet and get their information about the running system. Information includes the source address,destination address, protocol, time, throughput, identification, checking code, length and so on. It can save the information of required packet, and can choose the type of protocol to be sniffing, in order to get to the information.Meanwhile,it can get the Email’s log-mail account and password by analysis the port valu of the POP3 Server.Keywords:Sniffer; Protocol; Data packet; Monitor; Throughput目录1 绪论 (5)1.1 课题背景 (5)1.2 网络嗅探器的概述 (6)1.2.1 网络嗅探器的概念与原理 (6)1.2.2 网络嗅探的检测和防范 (7)1.2.3 网络嗅探器软件需要解决的问题 (8)2 网络嗅探器设计相关技术简述 (8)2.1 在交错环境下的嗅探技术 (8)2.1.1 ARP欺骗 (8)2.1.2 交换机MAC地址表溢出 (9)2.1.3 MAC地址伪造 (9)2.1.4 ICMP路由器发现协议欺骗 (9)2.1.5 ICMP重定向攻击 (9)2.2 C#语言编程 (10)2.3 网络协议 (10)2.3.1 IP (10)2.3.2 TCP (11)2.3.3 UDP (11)3 系统需求分析 (12)3.1 系统性能要求 (12)3.2 软件实现的功能 (12)4 网络嗅探器的相关拓展 (14)总结 (16)致谢 (16)参考文献 (17)附件 (18)1 绪论嗅探器,Sniffer是一种常用的收集有用数据方法,这些数据可以是用户的帐号和密码,可以是一些商用机密数据等等。
1实验名称网络嗅探实验2实验目的掌握网络嗅探工具的使用,捕获FTP数据包并进行分析,捕获HTTP数据包并分析,通过实验了解FTP、HTTP等协议明文传输的特性,以建立安全意识。
3实验内容实验原理网络嗅探器Sniffer的原理:1)Sniffer即网络嗅探器,用于监听网络中的数据包,分析网络性能和故障。
Sniffer 主要用于网络管理和网络维护,系统管理员通过Sniffer可以诊断出通过常规工具难以解决的网络疑难问题,包括计算机之间的异常通信、不同网络协议的通信流量、每个数据包的源地址和目的地址等,它将提供非常详细的信息。
2)网卡有几种接收数据帧的状态:unicast(接收目的地址是本级硬件地址的数据帧),Broadcast(接收所有类型为广播报文的数据帧),multicast(接收特定的组播报文),promiscuous(目的硬件地址不检查,全部接收)3)以太网逻辑上是采用总线拓扑结构,采用广播通信方式,数据传输是依靠帧中的MAC地址来寻找目的主机。
4)每个网络接口都有一个互不相同的硬件地址(MAC地址),同时,每个网段有一个在此网段中广播数据包的广播地址5)一个网络接口只响应目的地址是自己硬件地址或者自己所处网段的广播地址的数据帧,丢弃不是发给自己的数据帧。
但网卡工作在混杂模式下,则无论帧中的目标物理地址是什么,主机都将接收6)通过Sniffer工具,将网络接口设置为“混杂”模式。
可以监听此网络中传输的所有数据帧。
从而可以截获数据帧,进而实现实时分析数据帧的内容。
实验步骤说明和截图1)熟悉Sniffer 工具的使用Sniffer 主界面从文件菜单中选择适配器,标题栏将显示激活的探测器选择适配器文件菜单----选择网络探测器/适配器(N)----显示所有在Windows中配置的适配器菜单与工具栏状态栏网络监控面板Dashboard红色显示统计数据的阀值使用Dashboard作为网络状况快速浏览Host table(主机列表)Detail(协议列表)Matrix (网络连接)2)捕获FTP数据包并进行分析分组角色:学生A进行FTP连接,学生B使用Sniffer监视A的连接。
网络嗅探器网络嗅探器是一种网络安全工具,可以监听、捕捉和分析网络数据包,用于发现网络中的漏洞和安全问题。
本文将从网络嗅探器的原理、使用方法和应用场景三个方面来介绍网络嗅探器。
一、网络嗅探器的原理网络嗅探器的原理是通过监听网络通信,捕捉网络数据包,并对其进行分析。
其基本工作原理可以概括为以下几点:1. 网络嗅探器通过网络接口卡(NIC)来读取网络数据包。
2. 当数据包到达网卡时,嗅探器会复制一份数据包,然后将其传输到嗅探器中。
3. 嗅探器将捕获到的数据包分解成协议层次,以便更好的分析。
4. 嗅探器将分析数据包的内容,并记录下其中的关键信息。
5. 最后,嗅探器会将分析结果返回给用户,以帮助他们识别网络漏洞和安全问题。
网络嗅探器的工作原理虽然简单,但其使用需要一定的技能和知识。
因此,用户需要花费一些时间学习并掌握网络嗅探器的使用方法。
二、网络嗅探器的使用方法1. 安装网络嗅探器首先,需要下载并安装网络嗅探器。
常见的网络嗅探器有Wireshark和Tcpdump等,这些工具都可从官方网站上免费下载。
2. 选择需要监听的网卡安装完成后,需要选择要监听的网络接口卡(NIC)。
用户可以在嗅探器界面上选择需要监听的网卡。
一般来说,用户需要选择与其所使用的网络环境相对应的网卡。
3. 分析网络数据包成功选择网卡后,用户可以开始分析网络数据包了。
为了提高分析效率,用户可以根据需要进行过滤,比如只监控某个IP地址或端口等信息。
4. 查找网络漏洞当找到一个网络包时,网络嗅探器会对其进行分析,并提供相关的信息。
用户可以利用这些信息来查找网络漏洞,并采取相应的措施。
5. 提高嗅探器的可用性为了提高嗅探器的可用性,用户可以在嗅探器界面上设置相关的参数,比如数据包缓冲区大小、捕获窗口大小等。
这些参数可以帮助用户找到更多的网络漏洞和安全问题。
三、网络嗅探器的应用场景网络嗅探器在网络安全领域中有着广泛的应用场景。
以下是几个常见的应用场景:1. 监听网络流量网络嗅探器可以帮助管理员监控网络流量,了解网络使用情况,并识别潜在的网络攻击。
网络嗅探器的工作原理随着网络技术的不断进化和普及,人们使用网络的频率越来越高。
网络安全问题也日益受到重视,为了保障网络安全,网络嗅探器应运而生。
网络嗅探器是一种被广泛应用于网络管理、网络安全等领域的工具,它可以对网络数据包进行抓取、分析和查询,从而帮助管理员监控网络、检测网络中的安全隐患。
本文就是要介绍网络嗅探器的工作原理。
一、网络嗅探器的基本原理网络嗅探器是一种软件工具,主要用于抓取和分析网络数据包。
网络数据包是在网络中流动的载体,其中包含了各种信息,比如网址、IP、端口和数据等。
网络嗅探器利用网络适配器(网卡)和操作系统提供的底层 API,通过监听网络传输的原始数据包,并对数据包进行分析,从而提取出其中的重要信息。
网络嗅探器的基本工作流程如下:1. 打开网络适配器并指定分析的数据包类型(例如,IP、TCP、UDP、ICMP等)和过滤规则:网络嗅探器首先需要打开一个适配器,并且指定要分析的数据包类型。
根据实际需要,管理员可以选择不同的适配器和分析模式。
例如,在 Windows 系统中,可以通过 WinPCap 库实现网络嗅探功能,WinPCap 提供了捕获和处理网络数据包的 API 接口,用户可以通过这些接口实现对数据包的分析。
通过设置过滤规则,可以帮助用户只抓取指定类型的网络数据包,并排除无关的数据包,从而减少抓包数据量,提高分析效率。
2. 监听网络数据包并进行抓取和分析:网络嗅探器的第二个重要任务是监听网络数据流,并抓取要分析的数据包。
当数据包被捕获后,嗅探器会对其进行解码和解析,还原出 IP 头、TCP 头或 UDP 头等数据内容,从而得到数据包中包含的重要信息,如 IP 地址、源目标端口、协议类型等。
对于加密或压缩过的数据包,网络嗅探器无法直接处理,需要对其进行解密和解压缩处理后才能进行分析。
3. 分析抓包数据、生成统计信息并输出结果:网络嗅探器的第三个任务是对抓包数据进行分析并输出结果。