网络攻击与防范实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网络攻击与防范实验报告

姓名:_ _ 学号:_ __ 所在班级:

实验名称:编写自己的网络嗅探器实验日期: 2014 年 10 月 22 日指导老师:张玉清、宋杨实验评分:

验收评语:

实验目的:

通过开发基于WinPcap的嗅探器,掌握嗅探器的工作原理,熟悉WinPcap的使用,掌握基于WinPcap网络嗅探器的开发过程。

实验内容:

开发出一个任意平台上的Sniffer(嗅探器)工具,能显示所捕获的局域网数据包并能做相应的分析和统计。主要内容如下:

•列出监测主机的所有网卡,选择一个网卡,设置为混杂模式进行监听。

•捕获所有流经网卡的数据包,并利用WinPcap函数库设置过滤规则。

•分析捕获到的数据包的包头和数据,按照各种协议的格式进行格式化显示。

•将所开发工具的捕获和分析结果与常用的Sniffer进行比较,完善程序代码。

实验环境:

➢硬件环境:

✧处理器:Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz 1.80GHz

✧内存:6.00G

✧硬盘:600G

✧网卡:Intel(R) Centrino(R) Wireless-N 2230 / Realtek PCIe FE 系列控制器

✧网速:约200KB/s

➢软件环境:

✧操作系统: Windows 8.1 x64位操作系统

✧开发工具:Visual Studio 2013

✧开发语言:C#

实验设计:

SharpPcap 是一个.NET 环境下的网络包捕获框架,是基于WinPcap 库开发。提供了捕获、注入、分析和构建的功能,适用于C# 和VB NET开发语言。本实验利用SharpPcap提供的这些网络接口获取到底层的网卡信息及其数据包,并且支持捕获前过滤条件和捕获后过滤条件的设定。再根据TCP/IP协议栈的结构

capturedPacket.Extract(typeof(ProtocolPacket))和

PacketDotNet.Packet.ParsePacket(e.Packet.LinkLayerType, e.Packet.Data)方法依次在数据链路层、网络层、数据传输层和应用层,分别进行数据包的分拆与解析,获取相应协议层的数据信息,并根据应用程序的端口信息找出其对应的数据包,例如

Microsoft-SQL-Server、MySQL、Telnet、QQ、Tomcat等等。实验还对几个最常用的协议,如ARP、IP、ICMP、TCP、UDP等协议的数据包数量进行统计,并用柱状图的形式展现给用户。最后,还从网络层、传输层、应用层三个层次对数据包进行分类,计算它们的百分比,以饼

图的形式展现。

1、界面设计:

图 1 主窗口设计视图

本系统主窗口主要分为9个部分。

第一部分:菜单

菜单栏总共有三项,包括“文件”、“查看”、“帮助”。“文件”菜单项包含常规的几个子菜单:“打开”“保存”“另存为”“退出”;“查看”包括“柱状图”和“饼图”两个子菜单;“帮助”菜单包括“使用帮助”和“关于MySniffer”,下面介绍各个子菜单的功能。

•打开:打开Pcap文件,从文件中读取数据包。

•保存:将当前捕获的流量包保存到用户选择的位置。

•另存为:暂时作用与“保存”相同。

•退出:退出系统。

•柱状图:如图4所示,以柱状图的形式显示捕获到的数据包,方便用户直观的看到数据包的数量情况,可以对ARP、IP、ICMP、TCP、UDP、HTTP、DNS这几种协议的数据包的个数进行比较。

•饼图:如图5所示,以饼图的形式显示捕获到的数据包在不同协议层的分类情况,包括,网络层、传输层和应用层,饼图的左侧图例上显示了每种数据包在该协议层所占的比例,主要的饼图部分更能直观的反应比例关系。最后一个应用层,由于应用的种类实在太多,因此这里只统计了常见的14种应用,详见图5中的图例。

•使用帮助:弹出使用帮助对话框,目前内容只是告诉捕获前过滤条件如何设置,还没有加上软件的使用说明,有待完善。如图6。

•关于MySniffer:弹出版本信息对话框,如图7所示。

图 2 打开文件选项

图 3 保存流量包到文件

第二部分:选择网卡

选择网卡是个下拉菜单,在窗口初始化的时候对下拉菜单进行初始化,将获得的网卡列表加入下拉菜单,用户可以通过点击想要打开的网卡进行网卡的选择

第三部分:捕获前过滤条件

设置捕获前过滤条件,该过滤条件由Winpcap规定,在上面的使用帮助对话框中可以得到提示。

第四部分:开始抓包和停止抓包按钮

点击开始抓包,选中的网卡被打开,开始捕获数据包,此时开始抓包按钮和捕获前过滤文本框变成不可用状态,停止抓包按钮从刚开始的不可用变成可用。如果没有选择网卡将给

出提示框。

第五部分:捕获后过滤条件

设置捕获后过滤条件,这里也做成了下拉菜单的形式,有20种选项,包括ARP、IP、ICMP、TCP、UDP等等,当用户点击过滤按钮的时候,下面的数据包列表框中的内容就会发生改变。

第六部分:封包总览

封包总览包括时序号、时间、源地址、目的地址、协议、长度这六项。

第七部:封包内容

封包内容以树状图的形式展示,对数据包进行数据链路层、网络层、传输层、应用层四个层次的展开,最后除去所有的包头得到最终的有用数据。用户可以根据需要展开和折叠内容。

第八部分:十六进制码以及对应的ASCII码

将数据包的内容转化成ASCII码显示。

第九部分:统计已经抓到的数据包的个数。

图 4 部分数据包统计柱状图

相关文档
最新文档