编写自己的网络嗅探器讲解

合集下载

网络攻击与防范实验报告-编写自己的网络嗅探器

网络攻击与防范实验报告-编写自己的网络嗅探器
(2)打开设备,建立嗅探会话 打开设备的函数是 pcap_open() ,snaplen 制定要捕获数据包中的哪些部分,flag 是用来指 示适配器是否要被设置成混杂模式,to_ms 指定读取数据的超时时间,以毫秒计: pcap_t* * pcap_open (
const char * source, , int snaplen, ,
m_list1.InsertColumn(0,_T("序号"),LVCFMT_CENTER,50); m_list1.InsertColumn(1,_T("时间"),LVCFMT_CENTER,120); m_list1.InsertColumn(2,_T("源MAC地址"),LVCFMT_CENTER,120); m_list1.InsertColumn(3,_T("目的MAC地址"),LVCFMT_CENTER,120); m_list1.InsertColumn(4,_T("长度"),LVCFMT_CENTER,50); m_list1.InsertColumn(5,_T("协议"),LVCFMT_CENTER,70); m_list1.InsertColumn(6,_T("源IP地址"),LVCFMT_CENTER,120); m_list1.InsertColumn(7,_T("目的IP地址"),LVCFMT_CENTER,120);
其中每个类都有相对应的源文件和头文件,负责存放类的方法和声明类。此外还有 stdafx.h:预编译程序所需的头文件(如 pcap.h,afxtempl.h,windows.h 等);head.h:存放 各类协议规则的结构体。

(2020年编辑)网络嗅探器的设计与实现

(2020年编辑)网络嗅探器的设计与实现

《网络与信息安全》课程设计报告班级学号:姓名:题目:评阅:成绩:2011年1月目录一、开发背景1、网络安全现状。

2、开发意义。

二、设计分析1、实现目标。

2、开发技术简介。

三、详细设计1、嗅探原理。

2、代码设计。

四、测试运行五、总结六、参考文献摘要网络嗅探器是作用在网络上的一种监听程序,它是系统管理员的一个得力助手,管理员可以用它来分析网络。

例如当网络繁忙时可利用它来查找是哪一段网络繁忙,数据报文是属于哪一种协议,这样可以计算出哪种业务受欢迎。

但是当有黑客使用它时,它又变得很可怕。

它可以非法获取一些保密性信息,如帐号、密码等,它带来的负面破坏是非常大的。

作为从事网络安全技术方面的人员来说,要想有效地利用它、防范它就得深入地学习、分析网络嗅探技术。

1、本设计的基本任务是设计一个嗅探软件,实现对常用网络数据包抓取、分析。

2、软件所要完成对本机在网络中的通信数据,比如协议类型,源、目的地址和端口、数据包的大小等加以分析的功能。

3、本设计用到的开发工具为Microsoft Visual Studio 2010 开发环境为Windows 7。

4、程序由韩瑞彬同学和我共同完成,本人主要负责主界面的设计和网络数据包的抓取,韩瑞彬同学负责对数据包的解析设计。

关键字:嗅探器,安全,黑客,数据报文一、开发背景1、网络安全现状随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。

但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。

计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。

Internet 的安全已经成为亟待解决的问题。

多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。

嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。

课程设计--基于C#的网络嗅探器的设计和实现

课程设计--基于C#的网络嗅探器的设计和实现

网络与信息安全课程设计网络嗅探器的设计和实现学院:计算机科学与技术班级:网络工程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是一种常用的收集有用数据方法,这些数据可以是用户的帐号和密码,可以是一些商用机密数据等等。

网络嗅探器的制作PPT课件

网络嗅探器的制作PPT课件

2021
12
二、界面的简易设计
2021
13
双击左侧的Resource>MySniffer resources> IDD_MYSNIFFER_DIALOG,就可以进入图形化界 面设计
控件表
2021
14
静态文本
要用到的控件简介
编辑框
按钮
列表控件
2021
15
创建一个静态文本,并右键点击它,选中属性, 将ID修改为“IDC_STATIC_SELECT_DEVICE”, 标题修改为“选择网络适配器序号:”
49
到文件的最下面,添加对回调函数 packet_handler的函数定义:
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data) { }
2021
50
找到OnButtonStart函数,为“开始”按钮添 加动作响应:
else
{
m_str="No description available";
m_device.SetItemText(i-1,2,m_str);
}
}
2021
42
按F5调试运行,并单击“网络适配器”你会发 现第一个列表中显示出了当前主机上的网络适 配器的相关信息
2021
43
回到OnButtonGetDevice函数,并添加如下所 示代码:
2021
25
选中IDC_LIST_PACK,并点击NM_CLICK,再点 击ADD FUNCTION,添加事件响应函数
2021
26

实验1-网络嗅探实验-报告

实验1-网络嗅探实验-报告

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[2] Loris Degioanni, Mario Baldi, Fulvio Risso, and Gianluca Varenn . Profiling and Optimization of Software-Based Network Analysis Applications
24
三、配置开发环境
WinPcap技术手册 V4.1.2 (an offline version can be found in the developer's pack) :
/docs/d ocs_412/index.html
WinPcap中文技术手册 V4.01(翻译版):
库文件、头文件、简单的示Байду номын сангаас程序代码和帮助文件
15
WinPcap简介
WinPcap(Windows Packet Capture)是Windows平台下的链路层网 络访问工具,其目的在于为Windows应用 程序提供访问网络底层的能力。
官方网站:
20
WinPcap架构之packet.dll
packet.dll是一个提供了一系列底层函数的 动态链接库,功能包括:
安装、启动和停止NPF驱动设备 对网络数据包进行嗅探 发送原始的数据报 获取网卡列表和每一个网络的相关信息 对网卡查询和设置底层参数
21
WinPcap架构之wpcap.dll
编写自己的网络嗅探器
国家计算机网络入侵防范中心
陈深龙、刘奇旭
1
主要内容
实验介绍 开发前准备工作 配置开发环境 用WinPcap捕获数据包 分析数据包 实验过程中可能遇到的问题 实验要求
2
一、实验介绍
实验目的 实验内容 当前流行的嗅探器 以前学生开发的嗅探器
/WinPc ap/
23
Winpcap经典论文
[1] FulvioRisso, Loris Degioanni, An Architecture for High Performance Network Analysis. Proceeding for the 6th IEEE Symposium on Computers and Communications (ISCC 2001) . Hammmamet July 2001
14
不可或缺的环境
WinPcap V4.1.2: /install/bi n/WinPcap_4_1_2.exe
驱动程序、Dll文件
WinPcap V4.1.2 Developer’s Pack: /install/bi n/WpdPack_4_1_2.zip
3
实验目的
通过开发基于WinPcap的嗅探器,掌握嗅 探器的工作原理,熟悉WinPcap的使用, 掌握基于WinPcap网络嗅探器的开发过程。
4
实验内容
开发出一个Windows平台上的Sniffer工具, 能显示所捕获的数据包并能做相应的分析和统 计。主要内容如下:
列出监测主机的所有网卡,选择一个网卡,设置为 混杂模式进行监听。
捕获所有流经网卡的数据包,并利用WinPcap函数 库设置过滤规则。
分析捕获到的数据包的包头和数据,按照各种协议 的格式进行格式化显示。
将所开发工具的捕获和分析结果与常用的Sniffer进 行比较,完善程序代码。
5
当前流行的嗅探器
当前公认的比较好的嗅探器有
Wireshark Sniffer Pro
数据包 分析
十六进 制码
数据包统 计信息
12
二、开发前准备工作
开发工具 不可或缺的环境 WinPcap简介 WinPcap功能 WinPcap架构 WinPcap入门参考资源 WinPcap经典论文
13
开发工具
开发语言:C++ 集成开发环境
vc 6.0 2003 ~ 2010
当前的版本
Stable release WinPcap 4.1.2 Latest release WinPcap 4.1.2
16
WinPcap的功能
获得网卡设备列表及其高级信息 打开一个网卡适配器并将其设置成混杂模式 捕获数据包 设置过滤器 将数据包存储为文件并处理离线文件 发送数据包 收集网络通信流量的统计信息 但是,WinPcap不能修改数据包或者拦截数
6
Wireshark主界面
控 制 列
封 包 总 览
封 包 内 容
十六进
制码
7
Sniffer Pro主界面
控 制 列
封 包 总 览
封 包 内 容
十六进
制码
8
以前学生的嗅探器
优秀作品1
主界面 设置过滤器
优秀作品2
9
优秀作品1—主界面
10
优秀作品1—设置过滤器
11
作秀作品2
数据包 列表
Wpcap.dll是一个含有WinPcap公共API 的动态链接库,它导出一系列函数供捕获网 络数据包和分析网络,功能包括:
对网络数据包进行嗅探 发送原始的数据报 获取网卡列表和每一个网络的相关信息 将数据包信息保存到磁盘 在更高层上创建包过滤规则并应用到底层
22
WinPcap入门参考资源
添加头文件目录 添加库文件目录 增加与WinPcap有关的预处理定义 添加pcap.h头文件 添加wpcap.lib库文件 编译并运行测试代码 在此我们用VC 6.0所建的工程为例进行讲解
据包
17
WinPcap架构
NPF,Netgroup Packet Filter,内核 级的数据报过滤器
packet.dll,底层的动态连接库 wpcap.dll,架构在packet.dll之上,提
供了更方便、更直接的编程方法
18
架构图
19
WinPcap架构之NPF
NPF是WinPcap的核心部件,它处理网络 传输的数据包,并向应用层提供捕捉、发送 和分析数据包的服务
相关文档
最新文档