课程设计网络终端综合实践网络嗅探器.docx
- 文档编号:23690781
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:12
- 大小:249.25KB
课程设计网络终端综合实践网络嗅探器.docx
《课程设计网络终端综合实践网络嗅探器.docx》由会员分享,可在线阅读,更多相关《课程设计网络终端综合实践网络嗅探器.docx(12页珍藏版)》请在冰豆网上搜索。
课程设计网络终端综合实践网络嗅探器
课程设计成绩评价表
指导老师评阅成绩表
学习与工作态度(10%)
研究水平与设计能力(45%)
课程设计说明说(论文)
撰写质量(45%)
总分
指导老师签名:
年月日
课程设计答辩记录及评价表
学生
讲述情况
教师主要
提问记录
学生回答
问题情况
答辩评分
评分项目
分值
评价参考标准
评分
总分
优
良
中
及格
差
研究水平与设计能力
30
28
23
20
18
15
课程设计说明书(论文)撰写质量
30
28
23
20
18
15
答辩效果
40
36
32
28
24
16
是否同意论文(设计)通过答辩
□同意□不同意
答辩小组成员签名
答辩小组组长签名:
年月日
课程设计成绩评定表
成绩汇总
评分项目
评分
比例
分数
课程设计总分
指导老师评分
50%
答辩小组评分
50%
成都信息工程学院
课程设计报告
简单的网络嗅探器
姓名:
纪红
专业:
信息安全
班级:
信安084班
提交日期:
2011-12-13
简单的网络嗅探器
摘要
计算机网络嗅探器是可以窃听计算机程序在网络上发送和接收到的数据,程序实现了对抓取到的本机在网络中的通信数据的协议类型、源地址、目的地址、端口和数据包的大小加以简单的分析,改程序应用C#语言编写,实现了一个简单的网络嗅探功能。
其中一个窗体显示主页面,另一个窗体显示详细信息
关键词:
网络嗅探器;发送和接受到的数据;协议类型;源地址;目地地址;端口和数据包;分析;C#言语
目录
论文总页数:
9页
1引言2
1.1课题背景2
1.2研究现状2
1.3本课题研究的意义2
1.4本课题的研究方法2
2系统设计3
2.1程序实现的功能3
2.2主要软件需求3
2.3功能模块与系统结构3
3系统功能程序设计4
3.1功能函数部分4
3.2界面实现部分6
4测试报告及界面预览6
5心得结论8
6参考文献9
1引言
1.1课题背景
随着社会信息化的不断深入,计算机啊网络已经渗入到社会的每一个角落,人们已无时无刻离不开网络。
很多人经常上网购物,学习,玩游戏,然而网络上的一些不良信息很可能影响到互联网用户尤其是青少年的身心健康。
基于以上的现实问题,我开发了这款网络嗅探器。
可以用来实现对计算机程序在网络上发送和接收到的数据的分析。
1.2研究现状
网络嗅探器无论是在网络安全还是在黑客攻击方面扮演了很重要的角色。
通过使用网络嗅探器可以把网卡设置于混杂模式,并可以对网络上传输的数据包的捕获和分析。
此分析结果可供网络安全分析之用,但如为黑客所利用也可以为其发动进一步的攻击提供有价值的信息。
可见,嗅探器实际上是一把双刃剑。
虽然网络嗅探器技术被黑客所利用后会对网络构成一定的威胁,但嗅探器本身的危害并不是很大,主要是用来为其他黑客软件提供网络情报,真正的攻击主要是由其它黑客软件来完成的。
而在网络安全方面,网络嗅探手段可以有效地探测在网络上传输的数据包信息,通过对这些信息的分析利用有助于网络安全的维护。
1.3本课题研究的意义
当我们处理自身网络问题的时候,一个信息包嗅探器向我们展示出正在网络上进行的一切活动。
于是,借助一定的知识,我们就可以确定问题的根源所在。
但必须记住的是,网络嗅探器并不会告诉你问题究竟是什么,而只会告诉你究竟发生了什么。
对网络嗅探器的研究我加深了对通信协议的理解,网络数据结构的理解。
对网络嗅探器的深入研究更重要的是可以让我们的互联网世界更安全、信息更健康。
1.4本课题的研究方法
嗅探侦听主要有两种途径,一种是将侦听工具软件放到网络连接的设备或者放到可以控制网络连接设备的电脑上,(比如网关服务器,路由器)——当然要实现这样的效果可能也需要通过其他黑客技术来实现:
比如通过木马方式将嗅探器发给某个网络管理员,使其不自觉的为攻击者进行了安装。
另外一种是针对不安全的局域网(采用交换hub实现),放到个人电脑上就可以实现对整个局域网的侦听,这里的原理是这样的:
共享hub获得一个子网内需要接收的数据时,并不是直接发送到指定主机,而是通过广播方式发送到每个电脑,对于处于接受者地位的电脑就会处理该数据,而其他非接受者的电脑就会过滤这些数据,这些操作与电脑操作者无关,是系统自动完成的,但是电脑操作者如果有意的话,他是可以将那些原本不属于他的数据打开!
2系统设计
2.1程序实现的功能
该程序实现了抓取本机在网络通信数据并加以简单的分析的功能,实现了一个简单的网络嗅探器。
其中有一个主页面,另一个详细显示包信息的页面。
2.2主要软件需求
本程序使用VisualStudio2010开发平台,使用C#语言编写,编译成功后的可执行文件需要在装有VisualStudio2010的平台上才能运行。
测试平台:
装有VisualStudio2010的WindowsXP系统
使用软件:
VisualStudio2010
2.3功能模块与系统结构
(1)获得计算机的IP地址
(2)开始监听,获得数据包的协议类型、源端口、目地端口和大小
(3)停止监听,程序将暂停运行
(4)清空列表,显示列表被清空
(5)帮助,弹出帮助对话框,显示作者信息
(6)详细信息,双击列表中的任意行,显示数据包的详细信息
3系统功能程序设计
3.1功能函数部分
1、获取计算机的IP地址,并以列表的形式显示出来
IPAddress[]hosts=Dns.Resolve(Dns.GetHostName()).AddressList;
if(hosts.Length==0)
thrownewNotSupportedException("Thiscomputerdoesnothavenon-loopbackinterfacesinstalled!
");
for(inti=0;i { MonitorMenuItem.MenuItems.Add(hosts[i].ToString(),newEventHandler(this.OnHostsClick)); HostsMenu.MenuItems.Add(hosts[i].ToString(),newEventHandler(this.OnHostsClick)); } m_PacketMonitors=newPacketMonitor[HostsMenu.MenuItems.Count]; for(inti=0;i { m_PacketMonitors[i]=newPacketMonitor(hosts[i]); m_PacketMonitors[i].NewPacket+=newNewPacketEventHandler(this.OnNewPacket); } m_Packets=newArrayList(); } 2、开始监测,停止监听,清楚列表 publicvoidOnToolBarClick(objectsender,ToolBarButtonClickEventArgse){ if(e.Button==StopButton){ for(inti=0;i m_PacketMonitors[i].Stop(); HostsMenu.MenuItems[i].Checked=false; MonitorMenuItem.MenuItems[i].Checked=false; } StatusBar.Text="停ª¡ê止1监¨¤测a"; }elseif(e.Button==StartButton){ for(inti=0;i try{ m_PacketMonitors[i].Start(); }catch(Exceptionex){ MessageBox.Show(this,"界? 面? 出? 现? 一°? 个? 错䨪误¨®"+m_PacketMonitors[i].IP.ToString()+"\r\n\r\n["+ex.Message+"]","Mentalis.orgPacketMonitor",MessageBoxButtons.OK,MessageBoxIcon.Error); } HostsMenu.MenuItems[i].Checked=true; MonitorMenuItem.MenuItems[i].Checked=true; } StatusBar.Text="检¨¬测a所¨´有®D端? 口¨²"; }elseif(e.Button==ClearButton){ PacketList.Items.Clear(); m_Packets.Clear(); StatusBar.Text="清? 空? 列¢D表À¨ª"; }elseif(e.Button==AboutButton){ AboutFormaf=newAboutForm(); af.ShowDialog(this); } 3、把获取到的字节流转换成字符 publicstringToString(boolraw){ StringBuildersb=newStringBuilder(Raw.Length); if(raw){ for(inti=0;i if(Raw[i]>31) sb.Append((char)Raw[i]); else sb.Append("."); } }else{ stringrawString=this.ToString(true); for(inti=0;i for(intj=i;j sb.Append(Raw[j].ToString("X2")+""); } if(rawString.Length sb.Append('',((16-(rawString.Length%16))%16)*3); sb.Append(""+rawString.Substring(i)+"\r\n"); }else{ sb.Append(""+rawString.Substring(i,16)+"\r\n"); } } } returnsb.ToString(); } 3.2界面实现部分 1、VS2010中新建项目Windows应用程序PackerMonitor。 2、添加三个窗体文件和两个类文件,分别命名AboutForm.cs、PacketForm.cs、PacketMonitorForm.cs,其中AboutForm.cs实现帮助界面、PacketForm.cs实现详细显示界面、PacketMonitorForm.cs实现主页面 4测试报告及界面预览 1、主页面预览 2、帮助界面预览 2、详细界面预览 3、开始监测界面 4、清空列表 5、暂停监测 5心得结论 该系统设计最关键的是在怎么获得IP地址,怎么获取数据包经过一段时间的思考和查阅,这些问题都一一解决了。 这样方面完整的实现了设计的要求,很好的解决了这些问题。 通过此次课程设计,对网络终端监控程序的编写的方法及实现有了更深入的了解,基本具备了简单的网络终端监控程序开发的能力。 为今后更好的学习及今后工作打下了坚实的基础。 6参考文献 [1]谭浩强.C++程序设计.清华大学出版社. 2004 [2] 张凯主编.VC++程序设计.大连理工大学出版社. 2002 [3] 宋坤,刘锐宁,李伟明.MFC程序开发参考大全. 人民邮电出版社. 2006 [4]杨晓光,李兰友.VisualC#.NET程序设计.北京交通大学出版社 [5]易向东,陈蓓,万英.C#程序员开发指南.中国吉林出版社 [6]刘瑞新.C#网络编程及应用.机械工业出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 网络 终端 综合 实践 嗅探器