文档库 最新最全的文档下载
当前位置:文档库 › 网络嗅探器的设计与实现论文要点

网络嗅探器的设计与实现论文要点

网络嗅探器的设计与实现论文要点
网络嗅探器的设计与实现论文要点

目录

1 引言 (1)

1.1 开发背景 (1)

1.2 开发意义 (1)

2 系统分析 (2)

2.1 设计概述 (2)

2.1.1 实现目标 (2)

2.1.2 开发环境 (2)

2.2 开发相关技术简介 (2)

2.2.1 C#语言简介 (2)

2.2.2 嗅探技术简介 (3)

2.2.3 TCP/IP协议 (4)

2.2.4 数据包简介 (6)

2.3 可行性分析 (8)

3 详细设计 (9)

3.1 设计原理 (9)

3.2 功能说明 (12)

3.3 系统实施 (12)

3.4 系统测试 (14)

4 论文总结 (19)

5 参考文献 (20)

6 致谢 (21)

1 引言

1.1 开发背景

随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。Internet的安全已经成为亟待解决的问题。多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。网络嗅探器就是利用计算机的网络接口截获其他计算机的数据报文的一种工具,而且它与一般的键盘捕获程序不同。键盘捕获程序捕获在终端上输入的键值,而嗅探器捕获的则是真实的网络报文.如果把网络嗅探器放置于网络节点处,对网络中的数据帧进行捕获的一种被动监听手段,是一种常用的收集有用数据的方法,可以分析各种信息包并描述出网络的结构和使用的机器,由于它接收任何一个在同一网段上传输的数据包,所以也就存在着捕获密码、各种信息、秘密文档等一些没有加密的信息的可能性。这成为黑客们常用的扩大战果的方法,用来夺取其他主机的控制权。当然嗅探器的正当用处主要是网络管理人员分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器截获网络中的数据包,分析问题的所在。[1]

1.2 开发意义

本次毕业设计是基于C#的网络嗅探器的设计与实现,由于本人能力上的限度,只是对抓取到的本机在网络中的通信数据,比如说协议类型,源、目的地址和端口、数据包的大小等加以分析,而无法做到像Sniffer或者影音神探那种成熟的嗅探器所拥有的强大功能。作为从事网络技术方面的人员来说,要想有效地利用它、防范它,就得深入地学习、分析网络嗅探技术。最为重要的是,对于网络嗅探器的设计与实现,使我对网络通信,数据传输和网络信息安全等有了切身的体会与融入,同时也是对大学四年的学以致用,不断提高自我的一种有效途径。

2 系统分析

2.1 设计概述

基于C#的网络嗅探器的设计与实现,首先就是要设定好实现的目标,确定开发的环境。有个合理的设计目标使得在设计过程中不茫然,思路更清楚。而一个好的开发环境对提高开发的效率同样起着很重要的作用。

2.1.1 实现目标

实现一个简单的网络嗅探器。具备以下功能:

1、实现一个简洁的易操作的计算机操作用户界面

2、实现抓取数据包的功能

3、实现暂停抓取数据包的功能

4、实现清空列表的功能

5、实现显示数据包详细信息的显示功能

2.1.2 开发环境

Microsoft Visual Studio 2010,Windows 7

2.2 开发相关技术简介

本节将对本设计中用到的一些主要技术进行简单的介绍。

2.2.1 C#语言简介

C#是微软于2000年提出的一种源于C++、类似于Java的面向对象编程语言,适合于分布式环境中的组件开发。C# 是专门为.NET设计的,也是.NET编程的首选语言。C#的产生是因为微软在.NET上需要一种类Java的语言,而Java本身却不能胜任这一需求。C#太像C++了,以至于它很难给人带来体验新事物时的那种兴奋。不过,绝大部分的C++开发者将会因为C#保留了C++中大部分其喜欢的、强大的、令人激动的功能而选择使用它。C#通过避免一般的编程错误和自动资源管理,使得C#的稳定性得到了极大的增强。另外,C#语言

功能强大且可以实现对象之间的转换,轻松实现各种对象转换成字符串。鉴于以上种种,我选用C#作为我本次设计的开发语言。[2]

2.2.2 嗅探技术简介

数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。帧通过特定的称为网络驱动程序的软件进行成型,然后通过网卡发送到网线上,通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。就是在这个传输和接收的过程中,存在安全方面的问题。

每一个在局域网(LAN)上的工作站都有其硬件地址,这些地址惟一地表示了网络上的机器(这一点与Internet地址系统比较相似)。当用户发送一个数据包时,这些数据包就会发送到LAN上所有可用的机器。[3]

图示:一个简单的局域网组成

在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的数据包则不予响应(换句话说,工作站A不会捕获属于工作站B的数据,而是简单地忽略这些数据)。

嗅探器工作在网络的底层,在网络上监听数据包来获取敏感信息。从原理上来说,在一个实际的系统中,数据的收发是由网卡来完成的,网卡接收到传输来的数据,网卡内的单片程序接收数据帧的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,认为该接收就接收后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了,计算机根本就不知道。对于网卡来说一般有四种接收模式:

a)广播方式:该模式下的网卡能够接收网络中的广播信息。

b)组播方式:设置在该模式下的网卡能够接收组播数据。

c)直接方式:在这种模式下,只有目的网卡才能接收该数据。

d)混杂模式:在这种模式下的网卡能够接收一切通过它的数据,而不管该数据是否是传给它的。

首先,在以太网中是基于广播方式传送数据的,也就是说,所有的物理信号都要经过我的机器。其次,如果某个工作站的网络接口处于混杂模式,那么它就可以捕获网络上所有的数据包和帧。

Sniffor程序是一种利用以太网的特性把网络适配卡(NIC,一般为以太网卡)置为混杂模式状态的工具,一旦网卡设置为这种模式,它就能接收传输在网络上的每一个信息包,而不管该数据是否传给它的。[4]

2.2.3 TCP/IP协议

因特网是一个发展非常活跃的领域。在1968年,它的早期研究成果开始崭露头角,后来便出现了它的前身ARPANET,ARPANET为表现因特网特性的试验平台做出了重大贡献,1973年,因特网正式面世。从那时起,关于因特网的研究和努力就一直没有间断过,其中大部分努力都是围绕着被称为网络的一个新型赛博空间所需要的标准而进行的。因特网协议及其标准与世界上任何其他事物的结构不同,它总是由一些机构或专业人士中的个人首先提出的。为了了解新的协议是如何出现并最终成为标准的,应该首先熟悉缩写词RFC,即Request for Comment。它的发展变迁过程要追溯到1 9 6 9年,起因是由于因特网的成员过于分散。正如这个词的字面意思所示,这些文档是一些实用文档、方法、测试结果、模型甚至完整的规范。因特网社会的成员可以阅读,也可以把意见反馈给RFC,如果这些想法(或基本原理)被社会接受,就有可能成为标准。在因特网社会中关于R F C的用法(M O)以及如何操作并没有太大的变化。1969年,当时只有一个网络,整个社会不超过一百位专业人员;随着因特网的飞速发展,因特网不但需要一个机构来集中和协调这些成果,并且需要制定一个最低要求的准则,至少能在成员之间进行有效的通信并取得相互了解。1974年前后,摆在ARPANET面前的形势很清晰了,通信联络需要进一步扩展,它需要的不仅是要能容纳成倍增加的通信媒体,而且要了解早已存在于群组中的许多领域的意义。这个领域需要一个管理者。大约在1977年,随着作为因特网实验备忘录(IEN)一部分的许多实验的进行,著名的T C P / I P协议获得了发展的动力。没过多久(1986年),为了RFC讨论的需要,需要建立一

个由工程技术人员组成的、对标准的发展负责的工作机构,以便有效地引导因特网的发展成长,这样,因特网工程工作组

(INENG)成立了。今天,因特网工程部(IETF)和因特网研究部(TRTF)成为对因特网近期工程需求和远期研究目标负责、并担负重任的两个工作组。这两个组织曾直接隶属于国际网络执行委员会(IAB),现在属于因特网协会(1992年成立),这个协会最终也是为因特网技术的发展负责的。

但是,如果你是一个因特网上的常客,可能对缩略词IAB并不满意,的确,在IAB的逐步发展并走向成熟过程中,IAB将它的名字改为“Internet Architecture Board”(由“Activities”改为“Architecture”),因为I A B在因特网发展的运作方面并没起多大作用。谈到RFC标准,那么首先考虑到的应该是RFC733。如果有关于标准的想法或对因特网有益的新技术,可以把它作为RFC提交给因特网社会。作为IAB成员之一的RFC编辑,决定着RFC的发表,对任一正式文档,RFC都有一种确定的风格和格式。[5]

现今因特网上用到的主要协议有:用户数据报协议(UDP),次要文件传输协议(TFTP),网际协议(IP),因特网控制报文协议(ICMP),传输控制协议(TCP),地址转换协议(ARP),虚终端协议(Telnet),反向地址转换协议(RARP),外部网关协议(EGP)版本2,引导协议(BootP),路由信息协议(RIP),距离向量多播路由协议(DVMRP)。下面对其中的4个协议做一些简单的介绍:

① IP :网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP 或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。

高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。

② TCP:如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。

TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。

面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。

③ UDP:UDP与TCP位于同一层,但对于数据包的顺序错误或重发。因此,UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询---应答的服务,例如NFS。相对于FTP或Telnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网落时间协议)和DNS(DNS也使用TCP)。欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与UDP相关的服务面临着更大的危险。

④ ICMP: ICMP与IP位于同一层,它被用来传送IP的的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP的‘Redirect’信息通知主机通向其他系统的更准确的路径,而‘Unreachable’信息则指出路径有问题。另外,如果路径不可用了,ICMP可以使TCP连接‘体面地’终止。PING是最常用的基于ICMP的服务。[6]

2.2.4 数据包简介

“包”(Packet)是TCP/IP协议通信传输中的数据单位,一般也称“数据包”。有人说,局域网中传输的不是“帧”(Frame)吗?没错,但是TCP/IP协议是工作在OSI模型第三层(网络层)、第四层(传输层)上的,而帧是工作在第二层(数据链路层)。上一层的内容由下一层的内容来传输,所以在局域网中,“包”是包含在“帧”里的。OSI(Open System Interconnection,开放系统互联)模型是由国际标准化组织(ISO)定义的标准,它定义了一种分层体系结构,在其中的每一层定义了针对不同通信级别的协议。OSI模型有5层,1到5层分别是:物理层、数据链路层、网络层、传输层、应用层。OSI模型在逻辑上可分为两个部分:低层的1至3层关注的是原始数据的传输;高层的4至5层关注的是网络下的应用

程序。我们可以用一个形象一些的例子对数据包的概念加以说明:我们在邮局邮寄产品时,虽然产品本身带有自己的包装盒,但是在邮寄的时候只用产品原包装盒来包装显然是不行的。必须把内装产品的包装盒放到一个邮局指定的专用纸箱里,这样才能够邮寄。这里,产品包装盒相当于数据包,里面放着的产品相当于可用的数据,而专用纸箱就相当于帧,且一个帧中只有一个数据包。“包”听起来非常抽象,那么是不是不可见的呢?通过一定技术手段,是可以感知到数据包的存在的。比如在Windows 2000 Server中,把鼠标移动到任务栏右下角的网卡图标上(网卡需要接好双绞线、连入网络),就可以看到“发送:××包,收到:××包”的提示。(详见下图)

通过数据包捕获软件,也可以将数据包捕获并加以分析。就是用网络嗅探器捕获数据包,可以查看捕获到的数据包的MAC地址、IP地址、协议类型端口号等细节。通过分析这些数据,网管员就可以知道网络中到底有什么样的数据包在活动了。数据包的结构非常复杂,不是三言两语能够说清的,在这里主要了解一下它的关键构成就可以了,这对于理解TCP/IP 协议的通信原理是非常重要的。数据包主要由“目的IP地址”、“源IP地址”、“净载数据”等部分构成。数据包的结构与我们平常写信非常类似,目的IP地址是说明这个数据包是要发给谁的,相当于收信人地址;源IP地址是说明这个数据包是发自哪里的,相当于发信人地址;而净载数据相当于信件的内容。正是因为数据包具有这样的结构,安装了TCP/IP 协议的计算机之间才能相互通信。我们在使用基于TCP/IP协议的网络时,网络中其实传递的就是数据包。比如说当你上网打开网页,这个简单的动作,就是你先发送数据包给网站,它接收到了之后,根据你发送的数据包的IP地址,返回给你网页的数据包,也就是说,网页的浏览,实际上就是数据包的交换。理解数据包,对于网络管理的网络安全具有至关重要的意义。

2.3 可行性分析

可行性研究(Feasibility Study)是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可行性研究应具有预见性、公正性、可靠性、科学性的特点。[7]

当然这次论文的可行性研究并没有上述的如此意义重大,只是理清整个系统分析和设计的大致过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。它的目的不是解决问题,而是确定问题是否值得去解决。当然在现阶段这样的信息安全背景下,网络嗅探器的研究与使用的价值是毋庸置疑的。不仅可以有效地诊断网络状况,更可以为信息安全战打攻坚战。

3 详细设计

3.1 设计原理

嗅探器是如何工作的?如何窃听网络上的信息?网络的一个特点就是数据总是在流动中,从一处到另外一处,而互联网是由错综复杂的各种网络交汇而成的,也就是说:当你的数据从网络的一台电脑到另一台电脑的时候,通常会经过大量不同的网络设备,(我们用tracert命令就可以看到这种路径是如何进行的)。如果传输过程中,有人看到了传输中的数据,那么问题就出现了——这就好比我们用手机给人发了一条短信,结果除了发送对象以外,还发到别人的手机上了一样,这样说或许还不是很可怕,要是传送的数据是企业的机密文件呢,或是用户的信用卡帐号和密码呢?[8]

嗅探侦听主要有两种途径,一种是将侦听工具软件放到网络连接的设备或者放到可以控制网络连接设备的电脑上,(比如网关服务器,路由器)——当然要实现这样的效果可能也需要通过其他黑客技术来实现:比如通过木马方式将嗅探器发给某个网络管理员,使其不自觉的为攻击者进行了安装。另外一种是针对不安全的局域网(采用交换HUB实现),放到个人电脑上就可以实现对整个局域网的侦听,这里的原理是这样的:共享HUB获得一个子网内需要接收的数据时,并不是直接发送到指定主机,而是通过广播方式发送到每个电脑,对于处于接受者地位的电脑就会处理该数据,而其他非接受者的电脑就会过滤这些数据,这些操作与电脑操作者无关,是系统自动完成的,但是电脑操作者如果有意的话,就可以将那些原本不属于他的数据打开,这就是安全隐患!

以太网的数据传输是基于“共享”原理的:所有的同一本地网范围内的计算机共同接收到相同的数据包。这意味着计算机直接的通讯都是透明可见的。正是因为这样的原因,以太网卡都构造了硬件的“过滤器”。这个过滤器将忽略掉一切和自己无关的网络信息。事实上是忽略掉了与自身MAC地址不符合的信息。

嗅探程序正是利用了这个特点,它主动的关闭了这个过滤器,也就是前面提到的设置网卡“混杂模式”。因此,嗅探程序就能够接收到整个以太网内的网络数据了信息了。[9]什么是以太网的MAC地址(MAC:Media Access Control),由于大量的计算机在以太网内“共享“数据流,所以必须有一个统一的办法用来区分传递给不同计算机的数据流的。这种问题不会发生在拨号用户身上,因为计算机会假定一切数据都由你发送给MODEM,然后通过电话线传送出去。可是,当你发送数据到以太网上的时候,你必须弄清楚,哪台计算机是你发送数据的对象。的确,现在有大量的双向通讯程序出现了,看上去,他们好像只会在两台机器内交换信息,可是你要明白,以太网的信息是共享的,其他用户,其实一样接收到了你发送的数据,只不过是被过滤器给忽略掉了。[10]

举例一下,很多的小型局域网计算机用户都为实现文件和打印共享,安装了“NetBEUI”因为它不是基于TCP/IP协议的,所以来自于网络的黑客一样无法得知他们的设备情况。基于Raw协议,传输和接收都在以太网里起着支配作用。你不能直接发送一个Raw数据给以太网,你必须先做一些事情,让以太网能够理解你的意思。这有点类似于发短信的方法,你不可能直接把一条短信直接发送出去,你还要输入对方的手机号码才可以发送,同样的网络上的传输数据也是一个道理。[11]

以下是一个帮助我们理解数据传送的简单图示:

_________

/.........\

/..Internet.\

+-----+ +----+.............+-----+

用户A ----- 路由............. 用户B

+-----+ ^ +----+.............+-----+

\.........../

\---------/

+------+

嗅探器

+------+

用户A IP 地址: 192.168.1.10

用户B IP 地址: 192.168.1.1

现在知道用户A要于用户B进行计算机通讯,用户A需要为192.168.1.10到用户B 192.168.1.1的通讯建立一个IP包。这个IP包在网络上传输,它必须能够穿透路由器。因此,用户A必须首先提交这个包给路由器。由每个路由器考查目地IP地址然后决定传送路径。

用户A 所知道的只是本地与路由连接和用户B的IP地址。用户A并不清楚网络的结构情况和路由走向。用户A必须告诉路由器准备发送数据包的情况,以太网数据传输结构大概是这样的:

+--+--+--+--+--+--+

目标 MAC

+--+--+--+--+--+--+

源 MAC

+--+--+--+--+--+--+

0x0800

+--+--+-----------+

IP 包

+--+--+--+--+-----+

CRC校验

+--+--+--+--+

理解一下这个结构,用户A的计算机建立了一个数据包假设它由100个字节的长度(假设一下,20 个字节是IP信息,20个字节是TCP信息,还有60个字节为传送的数据)。现在把这个数据包发送给以太网,放14个字节在目的MAC地址之前,源MAC地址还要置一个

0x0800的标记,他指示出了TCP/IP栈后的数据结构。同时,也附加了4个字节用于做CRC 校验(CRC校验用来检查传输数据的正确性)。

现在发送数据到网络,所有在局域网内的计算机通过适配器都能够发现这个数据包,其中也包括路由适配器,嗅探器和其他一些机器。通常,适配器都具有一块芯片用来做结构比较的,检查结构中的目地MAC地址和自己的MAC地址,如果不相同,则适配器会丢弃这个结构。这个操作会由硬件来完成,所以,对于计算机内的程序来说,整个过程时毫无察觉的。

当路由器的以太网适配器发现这个结构后,它会读取网络信息,并且去掉前14个字节,跟踪4个字节。查找0x0800标记,然后对这个结构进行处理(它将根据网络状况推测出下一个最快路由节点,从而最快传送数据到预定的目标地址)。

设想,只有路由机器能够检查这个结构,并且所有其他的机器都忽略这个结构,则嗅探器无论如何也无法检测到这个结构的。

MAC地址的格式是什么?以太网卡的MAC地址是一组48比特的数字,这48比特分为两个部分组成,前面的24比特用于表示以太网卡的厂商ID,后面的24比特是一组序列号,是由厂商进行分派的,就像我们身份证上的号码一样具有全球唯一性。这样可以担保没有任何两块网卡的MAC地址是相同的(当然可以通过特殊的方法实现)。如果出现相同的地址,将发生问题,所有这一点是非常重要的。这24比特被称之为OUI(Organizationally Unique Identifier)。

可是,OUI的真实长度只有22比特,还有两个比特用于其他:一个比特用来校验是否是广播或者多播地址,另一个比特用来分配本地执行地址(一些网络允许管理员针对具体情况再分配MAC地址)。

举个例子,你的MAC地址在网络中表示为 03 00 00 00 00 01 。第一个字节所包含的值二进制表示方法为00000011。可以看到,最后两个比特都被置为真值。他指定了一个多播模式,向所有的计算机进行广播,使用了“NetBEUI”协议(一般的,在Windows计算机的网络中,文件共享传输等是不使用TCP/IP协议的)。[12]

3.2 功能说明

本次论文我们只对抓取到的本机在网络中的通信数据(如协议类型,源、目的地址和端口、数据包的大小等)加以分析,实现一个简单的网络嗅探器。一个窗体显示主页面,另一个页面显示详细的包信息。

详细信息页面,我们显示一下信息:

开始时间:嗅探器抓取数据包的时间;

源端口:源目的IP地址+端口号;

目的端口:目的IP地址+端口号;

协议类型:只分析一下常见的类型,如ICMP, IGMP,IP, TCP,UDP;

版本信息:协议的版本;

生存时间:数据包的生命周期;

报头大小:报文报首部大小;

报文总长:整个数据报的大小;

优先级别:提供七个级别,分别是Routine = 0,Priority = 1,Immediate = 2,Flash = 3,FlashOverride = 4,CRITICECP = 5,InternetworkControl = 6,NetworkControl = 7;

延迟:NormalDelay = 0、 LowDelay = 1;

吞吐量:NormalThroughput = 0,HighThroughput = 1;

可靠性:NormalReliability = 0,HighReliability = 1;[13]

3.3 系统实施

(1) Microsoft Visual Studio 2005中新建项目Windows应用程序PackerMonitor。

(2)添加窗体文件和类文件,分别命名PacketForm.cs、PacketMonitorForm.cs和Packet.cs、PacketMonitor.cs。PacketForm.cs实现主页面,PacketMonitorForm.cs实现详细信息页面。[14]

(3)编码,详细的代码如源程序。

当使用C#系统类提供的接口取到数据包的bite流时,对流的初始化处理如下:

public Packet(byte[] raw, DateTime time)

{

if (raw == null)

throw new ArgumentNullException();

if (raw.Length < 20)

throw new ArgumentException();

m_Raw = raw;

m_Time = time;

m_Version = (raw[0] & 0xF0) >> 4;

m_HeaderLength = (raw[0] & 0x0F) * 4;

if ((raw[0] & 0x0F) < 5)

throw new ArgumentException(); // 无效的报头

m_Precedence = (Precedence)((raw[1] & 0xE0) >> 5);

m_Delay = (Delay)((raw[1] & 0x10) >> 4);

m_Throughput = (Throughput)((raw[1] & 0x8) >> 3);

m_Reliability = (Reliability)((raw[1] & 0x4) >> 2);

m_TotalLength = raw[2] * 256 + raw[3];

if (m_TotalLength != raw.Length)

throw new ArgumentException(); // 无效的数据包大小

m_Identification = raw[4] * 256 + raw[5];

m_TimeToLive = raw[8];

if (Enum.IsDefined(typeof(Protocol), (int)raw[9]))

m_Protocol = (Protocol)raw[9];

else

m_Protocol = Protocol.Other;

m_Checksum = new byte[2];

m_Checksum[0] = raw[11];

m_Checksum[1] = raw[10];

m_SourceAddress = new IPAddress(BitConverter.ToUInt32(raw, 12));

m_DestinationAddress = new IPAddress(BitConverter.ToUInt32(raw, 16));

if (m_Protocol == Protocol.Tcp || m_Protocol == Protocol.Udp) {

m_SourcePort = raw[m_HeaderLength] * 256 + raw[m_HeaderLength + 1];

m_DestinationPort = raw[m_HeaderLength + 2] * 256 + raw[m_HeaderLength + 3];

}

else {

m_SourcePort = -1;

m_DestinationPort = -1;

}

}[15]

3.4 系统测试

网络嗅探器运行后的界面如下:

点击绿色按钮,开始抓取以太网中与本机通信的IP数据包;点击红色按钮,停止监听。抓取到的信息如下图:

从图中可以看出,抓到的有UDP数据报,TCP数据报,ICMP数据报。鼠标双击列表行,分别得到详细的报文信息。

4 论文总结

网络嗅探器是一把双刃剑,网络安全管理人员利用它可保障网络畅通,防范网络被攻击,以达到维护网络安全的目的,但是到了入侵者手中,嗅探器成了捕获网络传输的机密、敏感数据的厉害武器。所以,作为网络安全管理人员,应该在技术上把握优势,挥舞这把双刃剑,在与入侵者的斗争中取得胜利。单纯的嗅探器的功能始终是局限的,例如无法穿过交换机、路由器,所以在大多数的情况下,嗅探器往往和其他手段结合起来使用,嗅探器和spoof(欺骗)以及其他技术手段结合在一起对网络构成的危害是巨大的。例如结合ARPSpoof(ARP欺骗)、MAC Flooding、Fake the MAC Address(欺骗MAC地址)、ICMP Router Advertisements、ICMP Redirect(ICMP重定向)等技术手段就可以跨交换机、路由器实施嗅探了。其实嗅探器的目的说穿了只有一个,就是抓包,从抓包这个概念上引伸下去,所有为了能够抓到网络上的信息包而采用的技术都可以归入嗅探,单纯的嗅探是没有什么效率的。嗅探器技术被广泛应用于网络维护和管理方面,它工作的时候就像一部被动声纳,默默地接收来自网络的各种信息,通过对这些数据的分析,网络管理员可以深入了解网络当前的运行状况,以便找出网络中的漏洞。在网络安全日益被关注的今天,我们不但要正确地使用嗅探器,还要合理防范嗅探器的危害,嗅探器能够造成很大的安全危害,主要是因为它们不容易被发现。对于一个安全性要求很严格的企业,在使用技术防范的同时安全管理的制度建设也是非常重要的。

毕业论文管理系统设计研究.doc

毕业论文管理系统设计研究 2020年4月

毕业论文管理系统设计研究本文关键词:管理系统,毕业论文,研究,设计 毕业论文管理系统设计研究本文简介:毕业论文管理工作现状当前,大多数的高校的毕业论文管理状况如下。(1)学生无法及时准确选题选题初期的大多数学生不能在前期及时、清晰且全面的了解导师的课题研究方向,也不能准确的选择合适的题目,导致了学生在选题时仅考虑到个人兴趣,盲目的进行选题,未根据自己个人能力做出正确的选择,一些学生可能会错失选题的时 毕业论文管理系统设计研究本文内容: 毕业论文管理工作现状 当前,大多数的高校的毕业论文管理状况如下。(1)学生无法及时准确选题选题初期的大多数学生不能在前期及时、清晰且全面的了解导师的课题研究方向,也不能准确的选择合适的题目,导致了学生在选题时仅考虑到个人兴趣,盲目的进行选题,未根据自己个人能力做出正确的选择,一些学生可能会错失选题的时间和机会。(2)论文各阶段需要提交大量文件,师生无法及时交流首先,学生必须先提交论

文开题报告,指导教师同意开题后,方可继续完成论文。然后,需要在一段时间内将完成论文的阶段性成果提交给导师,方便导师及时了解学生论文完成的进度,以便导师督促学生及时完成论文。如今,很多大学的论文指导方式仍旧以纸质文件进行师生之间的交流,在这种情况下,一会导致资源浪费,也会由于时间和空间限制,导致沟通不畅。(3)统计论文选题工作复杂在毕业论文管理工作中,教师的工作量较大,其中,有很多重复的工作量,处于管理工作的各级人员需要统计学生选题状况、毕业论文完成状态以及答辩成绩等信息,在这样大量的工作状态下,就会产生失误。而毕业论文对于学生来也十分重要,关系能否毕业问题,责任巨大,不容有失。毕业论文管理系统设计意义毕业论文管理系统的最大优势就是学生可以远程在陷上选题,将复杂的工作流程简单化,也会减轻毕业论文指导教师工作中不必要的压力,具有很强的现实意义,具体可以表现为以下功能。(1)缩短毕业论文题目审核时间审核毕业论文题目是为了防止出现选题过大、不切实际或与专业特点不相关的现象。各教学单位在前期的主要任务就是审核已提交的论文题目,若论文题目不合条例,审核不通过,需要单位给指导教师反馈是否通过的信息,之后审核过的信息,需要由教师通知给学生,学生需要结合实际情况以及自身的兴趣选择毕设题目,督促学生积极与指导教师沟通。通过系统可以在线随时随地审核,

基于winpcap的嗅探器设计与实现

基于winpcap的嗅探器设计与实现

计算机与信息学院 《计算机网络系统实践》报告 设计题目:嗅探器的设计与实现 学生姓名:*** 学号:2010**** 专业班级:信息安全****

2013 年9 月25 一、设计要求 1.不限平台,可以使用Libpcap、WinPcap 或 Linux的原始套接字; 2.实现一个功能比较简单的、具有图形界面的Sniffer,主线程响应用户界 面操作,工作线程完成抓包等工作; 3.能够解析出IP层和传输层的协议头,能够过滤TCP、UDP等数据包; 4.能够输出文本方式传送的数据包的内容; 5.能够进行简单的流量统计。 二、开发环境与工具

操作系统:windows7 开发工具:visual studio 开发语言:C++ 附加库:Winpcap 三、设计原理 网络嗅探器是一种常用的监听网络的工具。所谓嗅探器( Sniffer) ,是一种利用计算机网络接口截获网络数据的软件或硬件,可用于网络管理、网络协议分析以及网络安全等众多方面。嗅探器不同于一般的键捕获工具,后者只能捕获当地终端控制台上的按键内容,而嗅探器所“嗅”到的是动态的以信息包形式( 如IP 数据包或者以太网包) 封装的信息流。其中可能携带了重要数据或敏感信息。可以将这些捕获到的信息包存档,以利用相应工具可以作进一步分析。 计算机网络的设计为嗅探器的使用创造了最基本的条件。在目前的网络环境中,所有计算机节点都是共享传输介质,任意节点发出或发往任意节点的数据帧必将经过网内每一个节点的网络接口,此时只需对嗅探节点的网络接口( 网卡) 进行适当的设置便可为实现嗅探的做好准备工作。在计算机网络系统中,网卡是用来接收网络上其他节点发来的数据帧,其内嵌的单片处理程序会检测数据帧来源的MAC 地址,并根据网卡所设置的接收方式来是否接收处理数据,如果认为应该处理,则网卡就会产生中断信号通知中央处理器,接收该数据帧并传输给操作系统处理。否则就简单丢弃,所对应节点的网卡就截断,计算机的中央处理器并不参与。 网卡是网络中节点主机的关键硬件设备。对数据的接收一般有四种设置模式: 广播模式: 接收在网络中进行广播数据信息。组播模式: 接收组播数据信息。单播模式: 只有匹配的目的网卡才能接收数据信息。混杂模式: 网卡能够可以接收一切通过它的数据信息。 四、系统功能描述及软件模块划分 系统功能设计 本系统的基本功能为实现网络数据包的捕获, 并将其数据内容解析显示。网络数据包捕获功能主要负责从网络中捕获和过滤数据,这可以通过调

在线书店系统的设计与实现--优秀毕业设计论文

毕业论文 姓名: 班级: 系部: 专业: 论文题目:在线书店系统的设计与实现 指导教师: 职称: 2013年7月

目录 前言 (3) 需求分析 (5) 一、用户需求分析 (5) 1.图书查询需求 (5) 2.购物车管理需求 (5) 3.订单处理需求 (5) 4.管理员与客户的分类功能 (5) 系统开发技术 (7) 一、MVC模式简介 (7) 1.电子商务概况摘要 (8) 系统总体设计 (10) 1.UML活动关系图 (10) 2.系统组成 (11) 3.功能设计 (11) (1)图书信息管理 (11) (2)购物车管理 (11) (3)会员注册 (11) (4)订单处理 (12) 数据库设计与实现 (13) 一、数据库的需求分析 (13) 1.数据库的逻辑设计 (13) 2.数据表基本结构 (15) 3.创建数据表脚本 (16) 系统实现过程 (18) 开发平台 (18) 一、系统各组件实现 (18) 用户表示层 (18) 系统测试与运行 (27)

一、系统测试 (27) 二、测试结果 (27) 结论 (30) 参考文献 (31) 谢辞 (32)

前言 随着Internet信息技术的高速发展和个人、企业上网的迅速普及,企业的WWW网站在商业活动中发挥着越来越大的作用,在信息时代,建立一个功能强大、界面美观的电子商务网站,建立电子商务系统平台,对企业的发展是至关重要的。 所谓电子商务,是指各种具有商业活动能力的实体(生产企业、商贸企业、金融机构、政府机构、个人消费者等)利用网络和先进的数字化传媒技术进行的各项商业贸易活动。其中特别要强调的特点,一是其商业背景,二是网络化和数字化。简言之,电子商务就是通过电子网络渠道达成的商务活动。 电子商务是计算机网络的第二次革命,它通过电子手段建立新的经济秩序,不仅涉及电子技术和商业交易本身,而且涉及诸如金融、税务、教育等社会其他层面。对于电子商务的研究始于20世纪70年代末,而其实施要更晚些,实施又分为两步,其中电子数据交换(Electronic Data Interchange,EDI)始于20世纪80年代中期,Internet上的电子商务始于20世纪90年代初期。电子商务活动相应分成两大类:企业组织-企业组织(Business-Business,B2B)型和企业组织-消费者(Business-Consumer,B2C)型。根据统计,目前电子商务活动中80%的收属于B2B型商务活动,这由于企业组织的信息化程度和技术水平比个体消费者明显要高,主要面向的是企业与企业,为企业提供进行采购、销售和结算等业务的平台。B2C则是我们最熟悉的,它直接面向终端的大众消费者。它通常也有两种形式,一种是类似一个大的超市,里面摆放着大量的商品,提供给消费者直接去选择购买;而另一种形式则类似一个大商城,商城中有许多柜台,用户可以直接到柜台选择和购买自己中意的东西,然后去结算,这种商城只提供柜台和相关的服务,并收取相应的柜台使用费。 一般意义上,一个完整的电子商务系统包括信息流、资金流与物流三个要素,三者相辅相成。信息流就是通过电子网络向客户揭示所售商品的相关信息,引导客户通过网络进行购物。资金流就是使客户在选择商品后,能够通过网络支付相关费用,一般包括预付款支付、网上银行支付、货到付款

(完整版)个人博客系统毕业设计论文

编号: 审定成绩:先锋软件学院2011届 毕业设计(论文) 题目:个人博客系统 分院:软件工程分院 学生姓名:________ 印聪___________ _ __ 专业:软件设计与开发 班级:0805 学号: 指导教师:魏伟华

填表时间:2011年6月

先锋软件学院 学生毕业设计(论文)工作自查表 学生姓名印聪专业软件设计与开发学号 导师姓名魏伟华职称导师每周指导次数每次:小时题目名称个人博客系统 作息时间上午8时~ 12 时下午 1时~ 5 时 晚间 6时~ 9 时 个人精力实际投入日均工 作小时 10 周均工 作小时 缺席天数出勤率% 毕业设计(论文)工作进度已完成主要内容% 待完成主要内容% 自己写好自己写好

存在问题 自己写好 工作措施 指导教师(签字):日期:年月日

(上面要不要空行啊?)摘要 随着Internet的广泛应用,动态网页技术也应运而生。本文介绍了应用ASP动态网页技术开发博客系统的设计与实现。 博客系统主要为用户提供发表文章、浏览文章等功能,用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流。博客系统主要实现了文章管理的数字化、信息化、智能化,是打破传统报刊、杂志发表文章方式的新尝试。 本系统的开发设计实现采用ASP技术,系统后台使用Microsoft的Access 2000数据库,并通过使用ODBC技术访问。 本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;在数据库设计部分,详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想,提出系统的程序设计思路,对前台与后台功能的程序实现进行了详细论述;系统测试部分,具体分析测试过程中出现的主要问题,并提出了解决方案,实现系统功能。最后,对系统作以客观、全面的评价,并对进一步改进提出了建议。 关键字:博客;ASP ;Access 2000 ;ODBC

网络嗅探器的设计与实现

计算机网络课程设计 题目网络嗅探器的设计与实现 系 (部) 姓名 学号 指导教师 2015年7月18日

计算机网络课程设计任务书

网络嗅探器的设计与实现 摘要:网络嗅探器是对网络中的数据帧进行捕获的一种被动监听手段,是一种常用的收集有用数据的方法。本设计是关于网络嗅探器的设计与实现,其功能包括实现网络层抓包,对获得包的源和目的地址、端口、协议等进行分析和实现简单的包嗅探器功能。 关键字:网络嗅探器;数据包捕获; 套接字 引言 由于网络技术的发展,计算机网络的应用越来越广泛,其作用也越来越重要。计算机网络安全问题更加严重,网络破坏所造成的损失越来越大。但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。 嗅探器是一种常用的收集有用数据的方法,可以作为网络数据包的设备。嗅探器是通过对网卡的编程来实现网络通讯的,对网卡的编程是使用通常的套接字(socket)方式来进行。通常的套接字程序只能响应与自己硬件地址相匹配的或是以广播形式发出的数据帧,对于其他形式的数据帧比如已到达网络接口但却不是发给此地址的数据帧,网络接口在验证投递地址并非自身地址之后将不引起响应,也就是说应用程序无法收取到达的数据包。而网络嗅探器的目的恰恰在于从网卡接收所有经过它的数据包,这些数据包即可以是发给它的也可以是发往别处的。 1 基本概念 1.1 嗅探器 每一个在局域网(LAN)上的工作站都有其硬件地址,这些地址唯一地表示了网络上的机器。当用户发送一个数据包时,这些数据包就会发送到LAN上所有可用的机器。在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的数据包则不予响应。嗅探器工作在网络的底层,在网络上监听数据包来获取敏感信息。从原理上来说,在一个实际的系统中,数据的收发是由网卡来完成的,网卡接收到传输来的数据,其内的单片程序接收数据帧的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,认为该接收就接收后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了,计算机根本就不知道。对于网卡来说一般有四种接收模式: a)广播方式:该模式下的网卡能够接收网络中的广播信息。 b)组播方式:设置在该模式下的网卡能够接收组播数据。 c)直接方式:在这种模式下,只有目的网卡才能接收该数据。

即时通讯系统的设计与实现毕业设计论文

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。 学位论文作者(签名): 年月

关于毕业论文使用授权的声明 本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据 库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期:

电子设计竞赛论文要点

程控增益放大器(B题) 程控增益放大器 摘要:本设计采用带通滤波器来选择输入信号带宽滤除杂质。以工作稳定、性能指标较高的STC89C52RC单片机作为微控制器核心来控制选择DDS模块的信号输出、放大器步进选择以及液晶显示。用两个AD603为放大电路核心组成级联放大电路,通过单片机控制DAC0832将数字量转化为模拟量来进行程控放大,提高了放大增益、扩展了通频带宽、而且具有良好的抗噪声系数。放大器带宽可以预置并显示,经测试本设计基本满足题目要求。 关键词:STC89C52RC AD603 程控放大器 AD9850 带通滤波 目录 1、引言: 1 2、方案设计: 1 2.1 总方案框图 1 2.2 DDS模块选择 1 2.3 滤波电路的选择 2 2.4 增益控制部分,放大器的选择 2 3、设计实现: 2

3.1 硬件设计 2 3.1.1 最小系统设计 3 3.1.2 滤波电路 3 3.1.4 放大电路 3 3.1.5 数模转换,电压输出电路 4 3.2软件设计 4 4、测试: 5 4.1、测试方法 5 4.2、测试条件 5 4.3、测试仪器 5 4.4、测试结果 6 5、结论及体会: 6 5.1 结论 6 5.2 体会 6 参考文献: 7 附录一: 8 1 最小系统和按键模块电路原理图 8

2 滤波电路原理图 8 3 自制DDS模块及其外围电路系统原理图 9 4 增益控制电路原理图 10 5 DAC8032数模转换电路图 11 附录二:主要源程序 12 1、引言: 放大器是电子系统中最基本的单元电路,放大器的增益又是其中一个重要的性能参数,随着电路控制的日益精细,对放大器增益的控制和调整也变得越来越细致。程控增益放大器与普通放大器的差别在于反馈电阻网络可变且受控于控制接口的输出信号。不同的控制信号,将产生不同的反馈系数,从而改变放大器的闭环增益。通过单片机用程序来控制放大的增益,通过键盘输入放大倍数,再利用单片机输出相应的数字信号,然后通过DA变换,换成模拟电压信号,使用这个电压信号来控制放大器的放大倍数,实现了程控增益放大。在灵活性方便性上远远优于传统的放大器。 2、方案设计: 2.1 总方案框图 Ui 本系统原理方框图如图2.1所示。本系统由DDS模块、51单片机、滤波电路、键

(完整版)个人博客系统毕业设计论文40121149

人生最大的幸福,是发现自己爱的人正好也爱着自己。 摘要 随着Internet的广泛应用 动态网页技术也应运而生 本文介绍了应用ASP动态网页技术开发博客系统的设计与实现 博客系统主要为用户提供发表文章、浏览文章等功能 用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流 博客系统主要实现了文章管理的数字化、信息化、智能化 是打破传统报刊、杂志发表文章方式的新尝试 本系统的开发设计实现采用ASP技术 系统后台使用SQL Server 2008数据库 并通过使用ODBC技术访问 本文对博客系统进行整体分析 明确了系统的可行性和用户需求;根据模块化原理 规划设计了系统功能模块;在数据库设计部分 详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想 提出系统的程序设计思路 对前台与后台功能的程序实现进行了详细论述;系统测试部分 具体分析测试过程中出现的主要问题 并提出了解决方案

实现系统功能 最后 对系统作以客观、全面的评价 并对进一步改进提出了建议 关键字:博客ASP SQL Server 2008 ODBC 目录 1 系统概述 3 1.1项目背景3 1.2系统开发的意义 4 1.2.1发布想法 4 1.2.2博客的用途4 1.3 系统开发的目标 5 1.3.1任何拥有博客的人都可以做到5 1.3.2 访问博客系统的人 可以做到 5 1.4系统概述5 1.5 系统的开发方法 6 2 系统分析8 2.1 可行性分析8 2.2 需求分析8 2.2.1 管理员登录8 2.2.2 文章管理9

2.2.3 系统信息管理9 2.3 系统的主要技术分析9 2.3.1 ASP技术概论9 2.3.2 ASP工作原理10 2.3.3 ODBC技术10 2.3.4 硬件设备及操作系统11 2.3.5 系统开发平台11 2.4 数据分析11 2.5 数据流图12 3 数据库设计13 3.1 数据库技术概述13 3.2 数据库选择13 3.3数据库逻辑结构设计13 3.4 数据库的完整性和安全性15 3. 4.1 数据库的完整性约束15 3.4.2 数据库的安全性16 4 系统设计17 4.1系统总体设计17 4.2公用模块的编写17 4.2.1数据库连接文件17 4.2.2用户登录和注销17 4.3客户界面的设计与实现17 4.3.1 界面头设计17 4.3.2 界面尾设计18 4.3.3首页设计与实现18

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

《网络与信息安全》课程设计报告 班级学号:姓名: 题目: 评阅: 成绩: 2011年1月

目录 一、开发背景 1、网络安全现状。 2、开发意义。 二、设计分析 1、实现目标。 2、开发技术简介。 三、详细设计 1、嗅探原理。 2、代码设计。 四、测试运行 五、总结 六、参考文献

摘要 网络嗅探器是作用在网络上的一种监听程序,它是系统管理员的一个得力助手,管理员可以用它来分析网络。例如当网络繁忙时可利用它来查找是哪一段网络繁忙,数据报文是属于哪一种协议,这样可以计算出哪种业务受欢迎。但是当有黑客使用它时,它又变得很可怕。它可以非法获取一些保密性信息,如帐号、密码等,它带来的负面破坏是非常大的。作为从事网络安全技术方面的人员来说,要想有效地利用它、防范它就得深入地学习、分析网络嗅探技术。 1、本设计的基本任务是设计一个嗅探软件,实现对常用网络数据包抓取、分析。 2、软件所要完成对本机在网络中的通信数据,比如协议类型,源、目的地址和端口、数据包 的大小等加以分析的功能。 3、本设计用到的开发工具为Microsoft Visual Studio 2010 开发环境为Windows 7。 4、程序由韩瑞彬同学和我共同完成,本人主要负责主界面的设计和网络数据包的抓取,韩 瑞彬同学负责对数据包的解析设计。 关键字:嗅探器,安全,黑客,数据报文 一、开发背景

1、网络安全现状 随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。Internet 的安全已经成为亟待解决的问题。多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。网络嗅探器就是利用计算机的网络接口截获其他计算机的数据报文的一种工具,而且它与一般的键盘捕获程序不同。键盘捕获程序捕获在终端上输入的键值,而嗅探器捕获的则是真实的网络报文.如果把网络嗅探器放置于网络节点处,对网络中的数据帧进行捕获的一种被动监听手段,是一种常用的收集有用数据的方法,可以分析各种信息包并描述出网络的结构和使用的机器,由于它接收任何一个在同一网段上传输的数据包,所以也就存在着捕获密码、各种信息、秘密文档等一些没有加密的信息的可能性。这成为黑客们常用的扩大战果的方法,用来夺取其他主机的控制权。当然嗅探器的正当用处主要是网络管理人员分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器截获网络中的数据包,分析问题的所在。 2、开发意义 本次设计只是对抓取到的本机在网络中的通信数据,比如说协议类型,源、目的地址和端口、数据包的大小等加以分析,而无法做到像Sniffer 或者影音神探那种成熟的嗅探器所拥有的强大功能。作为从事网络技术方面的人员来说,要想有效地利用它、防范它,就得深入地学习、分析网络嗅探技术。最为重要的是,对于网络嗅探器的设计与实现,使我对网络通信,数据传输和网络信息安全等有了切身的体会与融入,同时也是对网络安全技术这门课的学以致用,不断提高自我的一种有效途径。 二、设计分析 1、实现目标 (1)实现网络嗅探器的界面。 (2)实现抓取数据包的功能。

在vs2008MFC下开发基于winpcap的网络嗅探器(IP,TCP,UDP)

课程设计Ⅰ设计报告 题目:基于Winpcap的网络嗅探器的实现学号: 姓名: 学院: 专业班级: 指导教师: 设计时间: 指导老师评语: 评定成绩: 签名: 日期:

目录 1 概述 (3) 1.1课程设计的目的 (3) 1.2设计任务与要求 (3) 1.3开发环境 (3) 2系统设计的基本概念与原理 (3) 2.1IP协议基本知识 (3) 2.2TCP协议基本知识 (6) 2.3UDP协议基本知识 (9) 2.4 WINPCAP基本知识 (9) 2.5 WINPCAP基本原理 (14) 2.6MFC编程框架 (16) 3 基于WINPCAP的单文档网络嗅探器的设计与分析 (19) 3.1系统设计实现的基本原理与过程 (19) 3.2系统功能设计 (21) 3.3系统架构设计 (22) 3.4子系统与模块设计 (23) 3.4.1网络嗅探器设置模块 (23) 3.4.2网络数据包的捕获模块 (23) 3.4.3解析和显示模块 (23) 4 系统详细设计与实现 (24) 4.1数据结构的设计 (24) 4.2全局变量与函数的声明 (25) 4.3嗅探器界面设计 (25) 4.4嗅探器捕获模块的设计与实现 (26) 4.5网络数据包捕获模块的设计与实现 (31) 4.6解析和显示模块的设计与实现 (32) 4.6.1列表视图初始化设置 (32) 4.6.2从读取离线数据包并在列表视图中显示 (33) 4.6.2响应用户鼠标消息,解析对应行的数据包信息。 (36) 5 系统调试与运行 (38) 5.1 WINPCAP函数库的安装 (38) 5.2 SNIFFER网络嗅探器的测试与运行 (38) 6 课程设计总结 (39) 参考文献 (40)

论文管理系统的设计与实现

论文管理系统的设计与实现 1绪论 1.1引言 1.1引言 随着时代的进步,网络已经成为人们生活中不可缺少的一部分。人们对网络经历了由陌生到熟悉的过程,网络为人们的生活、学习、工作提供了极大的方便。高等学校可以通过网络了解教育动态,发布教育信息,进行网络化管理。教师可以通过网络获得教学资源,进行教学经验交流,开展网络教学。借助于网络环境下的管理软件完成复杂的管理工作是目前软件开发的一个重要课题。学校、企业、事业单位的管理系统、信息系统几乎无处不在,这些软件不但具有对相应的事务进行管理的功能,而且使用起来简单、方便,简化了工作流程,提高了工作效率。 在Internet普及的今天,绝大多数高等学校建立了自己的校园网站。学校通过网站可以展示教育成果,发布教育信息,与学生和家长进行交流和沟通,与其它院校建立联系,了解全球教育动态,开展网络教学活动等。基于网络环境的管理系统是构成学校数字化校园的一个重要组成部分。校园网担负着双重作用,一方面可以用来动态发布教育和科研信息,对学校事务进行管理;另一方面又可以及时向学生、家长及社会征求意见,进行课堂外的互动,促进学校教育的发展。 1.2研究意义 本课题来源于高校对毕业论文管理系统的实际需要,目标是提高院系对毕业生毕业设计全程监控、对毕业设计前期、中期、后期工作情况进行检查等相关工作的效率,并围绕此管理目标对系统所需要的各毕业生基本信息、课题基本信息、学生毕业设计完成情况基本信息、指导教师指导情况基本信息、系统后台数据库等进行管理和维护。系统开发的总体任务是实现毕业论文整个进程管理工作的流程化、系统化和规范化。 本课题涉及的知识有:面向对象程序设计,计算机网络基础,Web程序设计(熟悉https://www.wendangku.net/doc/415168655.html,),网页制作基础(熟悉网页制作工具软件),数据库原理,https://www.wendangku.net/doc/415168655.html,集成开发环境,SQLServer数据库,信息管理系统等。

全国大学生电子设计大赛应该准备哪些模块

全国大学生电子设计大 赛应该准备哪些模块 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

2012-04-24 3:55全国大学生电子设计大赛应该准备哪些 模块 主要可以针对以下几类准备模块:电源类、信号源类、无线电类、放大器类、仪器仪表类、控制类。 建议现在打好基础,做好知识储备: 1数电,模电,单片机原理,C语言,这几个是必学的,重要,相当重要。 2收集相关资料,比如芯片数据手册,应用笔记,源程序,制作实例,现在吧资料积累好了,到时候用起来很方便。 3多跑电子市场,买些元件回来自己动手做一些东西,锻炼实践能力。 4看往年电子设计大赛的题目,学习别人设计的长处,最好自己总结下,写成自己的东西。 5找你们学校以前带电子设计竞赛的老师,告诉他你自己的想法,希望他能给你点建议或者帮助。 6坚持,坚持,再坚持,克服困难,持之以恒! 这些最基本的东西学好了,等你正式参加比赛的时候,什么ARM,DSP,FPGA等用起来也就不是很困难了!切记,不要赶时髦,追新潮,最基本的东西全掌握了,新东西也不就那么神秘了!!课程方面: 还要学单片机啊、嵌入式系统、数字电路、CPLD/FPGA设计、C语言、汇编、微机接口模电要好好学,信号没多大用CPLD/FPGA编程/模拟用II 单片机模拟用P 模电模拟用M 单片机编程用K,用的C语言和汇编 嵌入式还要用到L的内核还有个画PCB板的,P 99SE,现在最新的叫“A D” 反正这些东西都会要用的,要学起来东西很多,建议你要用到什么看书吧~而且电子设计竞赛都是几个人一组,分工合作吧~ 在此留贴激励自己备战两年后的全国大学生电子设计大赛。 在这两年完成自己技能的升级,能力的质变: 1熟练PCB L O规则(EDA 工具P99SE,OR CAD) 2熟练基于VHDL、AHDL的CPLD、FPGA、GAL的内核设计 3熟练基于M的电路仿真分析 4熟练基于MCS-51或其它系列的单片机程序设计(C/A混合编程) 5熟练基于ASIC 的中小规模时序及组合数字电路设计 6熟练基于ASIC 的通用模拟及高频通信电路设计 7熟练基于ASIC 的DA/AD及传感器检测电路设计 8熟练基于ASIC 的锁相环电路及近代频率合成技术 9熟练单片机的外围扩展电路设计及MCU标准通信协议 10掌握基于VB/VC 的上位机程序设计(串并口通信) 11熟练各种通用电参量的定义及测量方法 12熟练万用表、示波器、扫频仪、信号源、频率计等仪表的使用 13能在规定时间内独立完成业余条件下的PCB制作

网络嗅探器的设计实现

- - -. 《网络与信息安全》课程设计报告

2011年1月 目录 一、开发背景 1、网络安全现状。 2、开发意义。 二、设计分析 1、实现目标。 2、开发技术简介。 三、详细设计 1、嗅探原理。 2、代码设计。 四、测试运行 五、总结

六、参考文献 摘要 网络嗅探器是作用在网络上的一种监听程序,它是系统管理员的一个得力助手,管理员可以用它来分析网络。例如当网络繁忙时可利用它来查找是哪一段网络繁忙,数据报文是属于哪一种协议,这样可以计算出哪种业务受欢迎。但是当有黑客使用它时,它又变得很可怕。它可以非法获取一些XX性信息,如XX、密码等,它带来的负面破坏是非常大的。作为从事网络安全技术方面的人员来说,要想有效地利用它、防X它就得深入地学习、分析网络嗅探技术。 1、本设计的基本任务是设计一个嗅探软件,实现对常用网络数据包抓取、分析。 2、软件所要完成对本机在网络中的通信数据,比如协议类型,源、目的地址和端口、数据包 的大小等加以分析的功能。 3、本设计用到的开发工具为Microsoft Visual Studio 2010 开发环境为Windows 7。 4、程序由韩瑞彬同学和我共同完成,本人主要负责主界面的设计和网络数据包的抓取,韩 瑞彬同学负责对数据包的解析设计。 关键字:嗅探器,安全,黑客,数据报文

一、开发背景 1、网络安全现状 随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。Internet 的安全已经成为亟待解决的问题。多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。网络嗅探器就是利用计算机的网络接口截获其他计算机的数据报文的一种工具,而且它与一般的键盘捕获程序不同。键盘捕获程序捕获在终端上输入的键值,而嗅探器捕获的则是真实的网络报文.如果把网络嗅探器放置于网络节点处,对网络中的数据帧进行捕获的一种被动监听手段,是一种常用的收集有用数据的方法,可以分析各种信息包并描述出网络的结构和使用的机器,由于它接收任何一个在同一网段上传输的数据包,所以也就存在着捕获密码、各种信息、秘密文档等一些没有加密的信息的可能性。这成为黑客们常用的扩大战果的方法,用来夺取其他主机的控制权。当然嗅探器的正当用处主要是网络管理人员分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器截获网络中的数据包,分析问题

网络嗅探器实验报告

网络攻击与防御技术实验报告 实验目的: 本实验通过研究Winpcap中常用的库函数的使用方式来实现了一个小型的网络数据包抓包器,并通过对原始包文的分析来展示当前网络的运行状况。 实验内容: 1.实现对网络基本数据包的捕获 2.分析捕获到的数据包的详细信息 实验环境: 1.WpdPack_4_0_1支持库 2.VC++开发环境 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)

最新毕业论文--网上书店系统的设计与实现

*********软件技术学院 毕业设计(论文) 题目:网上书店系统的设计与实现系别:软件技术 专业:ACCP 学号: 姓名: 指导老师: 完成日期:2009 年 3 月 5 日

目录 目录 (2) 前言 (4) 需求分析 (5) 一、用户需求分析 (6) 1.图书查询需求 (6) 2.购物车管理需求 (6) 3.订单处理需求 (6) 4.管理员与客户的分类功能 (6) 系统开发技术 (7) 一、MVC模式简介 (8) 1.电子商务概况摘要 (9) 系统总体设计 (10) 1.UML活动关系图 (11) 2.系统组成 (12) 3.功能设计 (12) (1)图书信息管理 (12) (2)购物车管理 (12) (3)会员注册 (12) (4)订单处理 (13) 数据库设计与实现 (13) 一、数据库的需求分析 (14) 1.数据库的逻辑设计 (14) 2.数据表基本结构 (16) 3.创建数据表脚本 (17) 系统实现过程 (18) 开发平台 (19) 一、系统各组件实现 (19) 用户表示层 (19) 系统测试与运行 (27)

一、系统测试 (27) 二、测试结果 (27) 结论 (30) 参考文献 (31) 谢辞 (32) 毕业设计(论文)成绩评定表(理科)....... 错误!未定义书签。

前言 随着Internet信息技术的高速发展和个人、企业上网的迅速普及,企业的WWW网站在商业活动中发挥着越来越大的作用,在信息时代,建立一个功能强大、界面美观的电子商务网站,建立电子商务系统平台,对企业的发展是至关重要的。 所谓电子商务,是指各种具有商业活动能力的实体(生产企业、商贸企业、金融机构、政府机构、个人消费者等)利用网络和先进的数字化传媒技术进行的各项商业贸易活动。其中特别要强调的特点,一是其商业背景,二是网络化和数字化。简言之,电子商务就是通过电子网络渠道达成的商务活动。 电子商务是计算机网络的第二次革命,它通过电子手段建立新的经济秩序,不仅涉及电子技术和商业交易本身,而且涉及诸如金融、税务、教育等社会其他层面。对于电子商务的研究始于20世纪70年代末,而其实施要更晚些,实施又分为两步,其中电子数据交换(Electronic Data Interchange,EDI)始于20世纪80年代中期,Internet上的电子商务始于20世纪90年代初期。电子商务活动相应分成两大类:企业组织-企业组织(Business-Business,B2B)型和企业组织-消费者(Business-Consumer,B2C)型。根据统计,目前电子商务活动中80%的收属于B2B型商务活动,这由于企业组织的信息化程度和技术水平比个体消费者明显要高,主要面向的是企业与企业,为企业提供进行采购、销售和结算等业务的平台。B2C则是我们最熟悉的,它直接面向终端的大众消费者。它通常也有两种形式,一种是类似一个大的超市,里面摆放着大量的商品,提供给消费者直接去选择购买;而另一种形式则类似一个大商城,商城中有许多柜台,用户可以直接到柜台选择和购买自己中意的东西,然后去结算,这种商城只提供柜台和相关的服务,并收取相应的柜台使用费。 一般意义上,一个完整的电子商务系统包括信息流、资金流与物流三个要素,三者相辅相成。信息流就是通过电子网络向客户揭示所售商品的相关信息,引导客户通过网络进行购物。资金流就是使客户在选择商品后,能够通过网络支付相关费用,一般包括预付款支付、网上银行支付、货到付款等多种形式。目前有些电子商务网站也可以接受邮局汇款。物流就是把客户

电子设计竞赛论文要点

程控增益放大器(B题)

程控增益放大器 摘要:本设计采用带通滤波器来选择输入信号带宽滤除杂质。以工作稳定、性能指标较高的STC89C52RC单片机作为微控制器核心来控制选择DDS模块的信号输出、放大器步进选择以及液晶显示。用两个AD603为放大电路核心组成级联放大电路,通过单片机控制DAC0832将数字量转化为模拟量来进行程控放大,提高了放大增益、扩展了通频带宽、而且具有良好的抗噪声系数。放大器带宽可以预置并显示,经测试本设计基本满足题目要求。 关键词:STC89C52RC AD603 程控放大器 AD9850 带通滤波

目录 1、引言: (1) 2、方案设计: (1) 2.1 总方案框图 (1) 2.2 DDS模块选择 (1) 2.3 滤波电路的选择 (2) 2.4 增益控制部分,放大器的选择 (2) 3、设计实现: (2) 3.1 硬件设计 (2) 3.1.1 最小系统设计 (3) 3.1.2 滤波电路 (3) 3.1.4 放大电路 (3) 3.1.5 数模转换,电压输出电路 (4) 3.2软件设计 (4) 4、测试: (5) 4.1、测试方法 (5) 4.2、测试条件 (5) 4.3、测试仪器 (5) 4.4、测试结果 (6) 5、结论及体会: (6) 5.1 结论 (6) 5.2 体会 (6) 参考文献: (7) 附录一: (8) 1 最小系统和按键模块电路原理图 (8) 2 滤波电路原理图 (8) 3 自制DDS模块及其外围电路系统原理图 (9) 4 增益控制电路原理图 (10) 5 DAC8032数模转换电路图 (11) 附录二:主要源程序 (12)

网上信息管理系统设计毕业论文

网上信息管理系统设计毕业论文1.1 项目开发背景 近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,也有人称为数字化时代,在这数字化的时代里,学校的教学管理都受到了极大的挑战。Internet技术持续迅猛的发展,也给传统的办学提出了新的模式。通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理,从而方便管理者、老师和学生间信息发布、信息交流和信息共享。以现代计算技术、网络技术为基础的数字化教学主要是朝着信息化、网络化、现代化的目标迈进。作为新型的办学模式,它们具有对于教育、教学过程来说极为宝贵的特性,可以为新型办学模式的建构提供理想的环境。在此开发的大学信息学院管理信息系统,旨在探索一种以互联网为基础的办学模式。通过这种新的模式,为信息学院营造一种新的办学环境,使管理突破时空限制,扩大教学规模,提高工作效率和办学水平,使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行学习与交流。基于这些优点,信息学院委托计算机系统研究所以及计算机软件与理论研究所共同开发“大学信息学院管理信息系统”。 1.2 项目开发的目的 为了适应信息时代发展,提高考试工作效率和办学水平,实现现代化大学的运行机制和高水平的管理,体现大学计算机学院自己的特色,使数字化学院建设成为一流信息学院建设的重要组成部分。用“数字化校园”的整体概念来统一规划、组织和建设学院的办公自动化系统、数字化教学系统、系统、图书资料管理系统和数字化校园体验系统。在这个概念下,统一设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理等。 开发后的数字化学院管理系统包括学院概况、组织机构、师资队伍、学科与专业、招生与就业、数字化教学、数字图书馆、数字化校园体验和办公自动化九部分。

《网络嗅探器》课程设计报告

《网络与信息安全技术》课程报告 课题名称:网络嗅探器提交报告时间:2010年12月17 日 网络嗅探器 专业 组号指导老师 [摘要]随着网络技术的飞速发展,网络安全问题越来越被人重视。嗅探技术作为网络安全攻防中最基础的技术,既可以用于获取网络中传输的大量敏感信息,也可以用于网络管理。通过获取网络数据包的流向和内容等信息,可以进行网络安全分析和网络威胁应对。因此对网络嗅探器的研究具有重要意义。 本课程设计通过分析网络上常用的嗅探器软件,在了解其功能和原理的基础上,以VC为开发平台,使用Windows环境下的网络数据包捕获开发库WinPcap,按照软件工程的思想进行设计并实现了一个网络嗅探工具。该嗅探工具的总体架构划分为5部分,分别是最底层的数据缓存和数据访问,中间层的数据捕获,协议过滤,协议分析和最顶层的图形画用户界面。 本嗅探器工具完成了数据包捕获及分析,协议过滤的主要功能,实现了对网络协议,源IP 地址,目标IP地址及端口号等信息的显示,使得程序能够比较全面地分析出相关信息以供用户参考决策。 关键词:网络嗅探;WinPcap编程接口;数据包;网络协议;多线程 (中文摘要在150字左右。摘要正文尽量用纯文字叙述。用五号宋体字。姓名与摘要正文之间空二行。关键词与摘要之间不空行。“摘要”这两个字加粗) 关键词:入侵检测系统;感应器;分析器;分布式入侵检测系统模型 Network sniffer Major: software engineering Group Number: 29 [Abstract] With the rapid development of network technology, network security is increasingly being attention. Sniffing network security technology as the most basic offensive and defensive

相关文档
相关文档 最新文档