2008年信息安全大赛作品设计报告

上传人:ra****d 文档编号:110203660 上传时间:2022-06-17 格式:DOC 页数:45 大小:1.57MB
收藏 版权申诉 举报 下载
2008年信息安全大赛作品设计报告_第1页
第1页 / 共45页
2008年信息安全大赛作品设计报告_第2页
第2页 / 共45页
2008年信息安全大赛作品设计报告_第3页
第3页 / 共45页
资源描述:

《2008年信息安全大赛作品设计报告》由会员分享,可在线阅读,更多相关《2008年信息安全大赛作品设计报告(45页珍藏版)》请在装配图网上搜索。

1、2021年全国大学生电子设计竞赛信息平安技术专题邀请赛作品设计报告作品题目基于USB的主机资源监管系统参赛学校电子科技大学参赛队员乔鑫鑫王小松石靖岚指导教师王勇注:作品设计报告的内容主要包括:系统方案、功能与指标、实现原理、硬件框图、软件流程;系统测试方案、测试设备、测试数据、结果分析、实现功能、特色;应用资料与参考文献目录;附录局部,含源代码和程序清单,扩展应用系统电路图等。目 录一级1.引言12.系统结构设计23.各模块之间的关系和其关键技术74.系统性能测试85.业界和学界相关成果86.系统创新点87.总结与展望88.参考文献81. 引言1.1 研究背景随着信息化的加深,商业领域的计算机

2、应用也越来越广泛,各行业对计算机的依赖性日益提高,计算机系统已成为各个单位业务管理的核心平台,其数量与日俱增,配套的环境设备也日益增多。据IDC调查显示,目前我国已有57.7的中小企业实施了信息化。但与此同时,计算机资源的滥用和重要数据丧失、被盗的状况也随之日益加深。而互联网的参加,在方便人们工作的同时,也进一步加深了这种危机。面临此种现状,如何保护企业内部的计算机资源成了广阔IT从业者和信息平安经理尤为关注的一个方向。目前,针对企业计算机资源平安防护,各大平安厂商主要采取的方案是入侵检测系统IDS和入侵防护系统。二者皆是从防御外部攻击出发,通过制定复杂的行为检测模型,结合数字签名技术,来探测

3、攻击行为。以上两种方式虽然在一定程度上有效防止了来自外部的入侵,但对计算机使用者的误操作、泄密和资源滥用行为的防护却不尽人意。在实际应用中,因绝大局部的计算机使用者并非专业的计算机平安从业人员,他们对复杂的检测和防护系统的各种设置不了解而导致的错误操作使检测和防护系统不能发挥其功能或被关闭;同时,使用者的误操作和无意中的泄密行为,也给计算机资源带来了严重的危害。而且,很多使用者的平安意识缺乏,对恶意网站、携带病毒的移动存储设备和网络交流人员缺少必要的防范心理,也导致了大量资源的损失、感染病毒木马及泄密行为的发生。更有甚者,由于忘记了系统密码而被迫重新安装系统,大量数据因此受损。1.2 系统设计

4、目标.针对上述平安问题,基于USB主机资源监管系统的解决方案应运而生,对主机设备和各类信息资源进行严格的监控。该系统基于多级授权体系,通过资源访问策略控制用户对计算机各类资源、设备的访问行为,防止使用者的误操作和滥用行为给主机资源带来危害。通过对文件、网络、IM软件的实时监控,保护本机的资源平安和资源监管软件的正常运行,有效防止未授权的移动存储设备、恶意软件和由社会工程学带来的潜在威胁;此外,应用可信网络策略对网络进行实时监控,保证网络访问范围的平安,防止由于用户缺少防范意识而浏览内嵌病毒或木马网页,对本机平安造成危害。同时,本系统将个人信息和使用权限加密存储于USB移动存储设备中,具有对用户

5、透明的特点,系统运行不需普通用户进行任何参与即可对主机资源进行保护,使用过程中不需输入任何密码,简单方便。本系统主要面对企业级用户,如金融、电力等,同时可应用于家用机资源、设备的管理。2. 系统结构设计2.1 系统总体架构由于基于USB主机资源监管系统是一个以信息平安为中心和重点的系统。系统中包含了用户的敏感信息,因此对架构提出了更高的要求。架构必须从各个方面满足实际需求,开发过程中也须严格遵守架构的约束,以保证实现架构设计的最终目标。图 1主机资源监控的拓扑结构如上图所示,只有持有USB-KEY的用户才能登陆主机。在使用过程中,对文件的操作受限于文件访问策略,只有合法操作才能执行。主机访问外

6、网,那么必须通过SPI防火墙的检验,只有合法的请求才能通过。基于USB主机资源监管系统由主监控程序界面GUI、权限分配和身份识别模块、主机资源监控模块、访问策略集、日志记录模块、自保护模块以及驱动与操作系统支持部件七局部组成,根据用户权限对各种主机资源进行监控管理,以保护主机资源的平安。该系统采用了多层结构,其目的在于系统功能的扩展。系统的整体结构如下列图所示:图 2主机资源监控的整体结构各功能模块的描述如下:2.1.1 主监控程序主监控程序部署于主机中,由系统自动加载。主要功能是为各级用户提供日志查看功能,为主机管理员提供用户管理、设备授权及监控子系统控制的功能。主监控程序只能通过效劳控制台

7、来间接控制监控子系统的工作模式。经过实践证明,这种通信方式使得代码的重用率提高,并能很好的扩展该系统的功能。1) 与效劳控制台的通信:此功能必须以管理员的身份进行配置,主监控程序与效劳控制台的通信方式以管道发送命令的通讯方式为主。主监控程序可以通过向效劳控制台发送控制文件或者网络部件的暂停或者启动命令来控制监控子系统的工作模式。2) 与文件监控模块的通信:此功能可以在任何登陆模式下自启动,由于文件监控模块会创立一个虚拟的设备,向该虚拟设备写入当前触犯规那么的日志信息,并将该虚拟设备的盘符提供给主监控程序,以访问设备中记录的日志信息。主监控程序维护一个线程,通过DeviceIoControl的方

8、式主动轮询文件过滤驱动中的日志信息,并将该信息以最近更新的形式显示在文件日志列表中,同时将此条信息保存在相对应的文件日志记录文件中。3) 与网络模块的通信:此功能可以在任何登陆模式下自启动,主监控程序维护一个线程,通过创立一个命名管道被动的获取与网络模块中所产生的日志信息,即当网络模块过滤掉触犯规那么的信息时,自动向主监控程序发起通信连接,并即时传递最新触犯的规那么信息以及当前使用者信息。4) 与身份识别模块的通信:此功能只有在管理员的权限下才能启动。主监控程序向身份识别模块提供管理员输入的待授权的USB设备信息和当前系统中存在的用户帐户信息后,将由身份识别模块自动产生出证书文件和与该文件所对

9、应的私钥文件,同时把该私钥信息写入带授权的USB的特定扇区中。在主监控程序中,管理员可以完成授权设备功能,以及查看当前系统中的证书信息。2.1.2 效劳控制台该效劳由操作系统自动加载,启动后立刻实时维护主监控进程的存在,主监控程序也实时的维护该效劳的运行状态,到达相互保护的目的。效劳控制台根据主监控程序通过管道传递的命令信息对监控子系统进行直接控制,并实时验证登陆用户身份的有效性。1) 主监控程序的保护功能该效劳控制台实时枚举进程资源列表,发现其监控进程不存在于进程资源列表中,那么立即重新启动主监控程序。实验结果说明,用该方法可以到达主监控程序实时保护的目的。2) 处理主监控程序的命令消息效劳

10、控制台使用管道的形式与主监控程序进行实时通信,处理并执行主监控程序发送到来的各种命令消息。例如,当主监控程序向效劳控制台发送了暂停命令后,效劳控制台收到命令,并马上通过管道形式向网络监控模块发送暂停命令,并同时动态卸载文件过滤驱动,从而实现暂停监控子系统的功能。2.1.3 主机资源监控子系统部署于主机中,作为监控系统的一局部,通过对各种主机资源进行实时监控,根据当前用户权限,通过查询访问策略集,对用户的各种操作进行管理,具有较好的可扩展性。以管理员的身份登陆该系统后,可以改变其他用户的访问策略。此子系统具体可分为以下两个局部:1) 文件监控以管理员身分登陆系统,可以配置各个用户的文件访问策略,

11、而用普通用户的身份登陆系统,那么不能对文件访问策略进行配置。该监控子系统为每个用户各自维护了一个独立的文件访问策略集。通过在系统中动态的加载文件过滤驱动,该监控子系统可以对文件以及目录进行的监控,能够有效的分级处理文件或者目录的读、写、删除、重命名这四类操作。管理员通过配置文件访问策略集可以实现对关键文件的保护功能。2) 网络监控结合可信网络地址列表,对网络访问范围进行控制。访问过程中,目标地址或返回数据的源地址不在可信网络地址列表内,丢弃该请求;受保护的文件和信息无法通过网络进行传输。a、对网站过滤监控用户访问的网站域名或网络地址与存在于网站过滤策略集里的信息相匹配时,本系统会自动停止用户访

12、问登陆该网站。b、对关键字信息过滤监控使用pop3协议的邮件和MSN即时通讯软件聊天信息的可被此关键字信息进行过滤处理。当用户使用邮件或者MSN与外界进行通讯时,如果发送或者接收的信息包含了存在于关键字策略集里的信息,那么本系统会自动地屏蔽掉这些非法信息。c、对IP和端口过滤监控当用户访问的目的地址与IP和端口过滤策略集里的信息匹配时,本系统会自动拒绝用户对这些IP和端口的访问。2.1.4 用户身份识别子系统该系统部署于主机的用户登陆模块和权限分配模块中,是与监控子系统通信的重要子系统之一。该身份识别子系统需要在用户登陆系统之前进行加载,并且通过实时侦测USB移动存储设备,识别用户权限的变更并

13、及时进行权限分配。此子系统可分为以下两个局部:1) 身份识别该身份识别模块在用户登陆时,就已加载于登陆系统中。通过获取USB移动存储设备上特殊扇区内的信息并经过认证模块认证后,才能许可当前用户登陆进系统。在用户登陆系统之后,身份识别模块被加载于自保护系统中,对该USB移移动存储设备的状态进行实时监测,检测用户身份和权限的变化,并对此立即做出响应;当该USB移动存储设备离开主机后,系统立刻进入锁定状态。2) 权限分配该模块功能仅在管理员登陆的情况有效,管理员可以为监控系统添加用户并为其配置相应的访问策略;插入待授权的USB移动存储设备后,管理员可以通过主监控程序为用户生成相应的证书和私钥,并将私

14、钥授权给USB移动存储设备,之后当用户使用该USB移动存储设备登陆系统时,身份识别模块会根据存储在USB设备上的信息,为用户分配相应的权限登陆系统。2.1.5 系统自保护子系统通过监控本系统进程的运行情况和系统文件的变动,防止系统自身被恶意关闭、修改、删除,保证系统自身的正常平安运行。1) 关键进程监控模块由效劳控制台来完成对主监控程序的监控,假设发现主监控程序被非法关闭或者异常退出,那么即时启动主监控程序。主监控程序同时监听效劳控制台进程是否被停用,假设发现该效劳不存在或者被禁用,那么会即时重新安装该效劳。2) 关键文件保护模块通过运用文件监控来实现对关键文件的保护,管理员在配置文件策略时需

15、将敏感文件和目录参加文件访问策略集中。2.1.6 日志记录子系统信息来源于主机资源监控子系统,用于记录主机使用时间、频率,文件访问行为、网络访问行为及泄密行为。2.1.7 访问策略集该部件以文件的形式储存在物理磁盘中,提供了包含访问策略规那么的维护和更新,与主机资源监控子系统进行互动的功能。2.2 系统功能架构及模块介绍系统的功能架构主要描述了系统主要的功能模块及其之间的关系。根据系统的整体架构将系统分为一下主要功能模块,其功能框架如下列图:图 3主机资源监控系统各功能模块主机资源监控系统的主要功能模块为主监控程序、效劳控制台、监控子系统这三大功能模块。其中主监控程序为用户提供友好的监控系统操

16、作界面,方便用户更新主机中用户状态信息和规那么信息,在管理员权限下还可以对监控系统进行自主配置;效劳控制台主要负责接收主监控程序传来的消息,并处理该消息完成用户发送过来的指令;监控子系统根据效劳控制台所发送过来的命名启动或者停止某个监控模块。图 4 主要模块间通信关系3. 各模块之间的关系和其关键技术3.1 用户登陆模块用户登陆模块负责用户在主机上的登陆操作,增强WINDOWS提供的传统的用户名/口令的用户身份认证机制,提供更高的平安性。图 5 用户登陆的部署图其功能如下:1) 用户登陆模块:在NT/2000中交互的登陆支持是由winlogon调用GINADLL实现的,用户登陆接口可以通过编写

17、自己的GINA dll来代替MSGINA dll,以实现特定需求的用户身份认证机制,例如USB-KEY的认证机制。并获取相应的用户登陆信息。2) 身份验证接口:支持用户名/口令的身份验证,并参加自己的用户身份认证机制。该系统采用公钥加密认证模式PKI体系,即非对称加密技术。为待授权的U盘生成一个唯一的私钥,本地主机上的CA负责管理维护私钥的生成和公钥的签发。该技术利用了OPENSSL提供的身份认证接口来实现。3) 使用固定用户名登陆:通过基于USB-KEY的用户身份证后,调用WINDOWS提供的传统登陆方式,使用固定的用户账号和口令登陆到WINDOWS系统。4) 策略集导入接口:该接口为效劳控

18、制台提供规那么集信息。根据当前登陆用户的状态信息,查找相应的访问策略集,并将其规那么信息导入策略集中,在监控子系统加载中使用。3.2 自保护模块自保护模块实时监听该系统的主要进程是否实时存在于登陆后的系统中,并且各自的功能都能有效的运行;并且维护关键文件和敏感文件不会被用户随意的篡改和删除,该模块由三个主要局部构成,相互监听和保护,形成一个有机的整体,并最终完成系统的自保护目标。图 6 自我保护的部署图1) 效劳控制台:效劳控制台利用枚举进程的方式来实现对主进程资源的保护,其具体实现方法是,首先使用EnumProcesses函数来遍历当前登陆系统中所有的进程信息,并将该信息储存在进程列表中,然

19、后通过使用字符串查找来判断当前主监控进程是否存在;如果发现主监控进程不存在那么即时初始化并启动之。2) 主监控进程:主监控进程分发一个独立的线程,利用查询效劳状态的方式来实时监听该系统的效劳控制台的运行状况,如果在调用OpenService函数翻开效劳句柄后,GetLastError返回的状态为ERROR_SERVICE_DOES_NOT_EXIST那么调用CreateService函数重新创立效劳进程,并启动之后或者在调用QueryServiceStatusEx函数返回状态信息不为SERVICE_START_RUNNING时调用StartServcie函数重新启动效劳。3) 文件过滤驱动:在

20、加载了文件过滤驱动后,可以使系统根据管理员填入文件规那么列表中的信息有效地控制相应登陆用户对文件或者目录所进行的访问操作。从而配置合理的信息填入文件规那么列表中,就能够有效地防范该系统的关键数据被非法盗取或者篡改。3.3 日志记录模块日志记录模块主要是记录当前登陆用户的违法操作,比方登陆用户访问了受限的文件、网站,发送了某些私密信息等等。这些操作都将会被记录在相应的日志文档中,管理员可以随时查看这些信息。这些日志信息通过不同的方式传给日志记录模块。1) 文件监控模块通讯方式:在文件驱动中创立了虚拟设备,当有违法操作产生后,违规信息将自动写入虚拟设备中。日志记录模块可以利用DeviceIoCon

21、trol来访问这个虚拟设备,读取其中的有效地日志信息。2) 网络监控模块通讯方式:网络监控模块与日志记录模块建立了一个命名管道,当有违法操作产生后,这些违规信息将由网络监控模块利用这个命名管道向日志记录模块发送有效信息。3.4 效劳控制台系统监控模块对计算机各种关键资源的监控,包括:文件操作监控技术、主机网络数据包括IM信息过滤监控技术、本系统关键进程监控技术。图 7 效劳控制台的部署图3.4.1 文件操作监控技术该技术是监控子系统中文件监控的核心技术。根据当前用户权限,结合规那么集中的访问控制列表,对用户的文件操作修改、复制、移动、删除实施不同的响应策略,且此监控不可被绕过,也是整个监控系统

22、的核心技术。此技术难点在于如何截获所有的文件操作,这是文件操作监控的根底。在主机中挂载文件过滤驱动来实现该系统的文件监控目标。下面对文件过滤驱动技术做一个简单的介绍:文件过滤驱动通过在WINDOWS文件系统中加载一层过滤驱动,到达对特定文件特定操作的过滤目的,有较强的不可绕过性。3.4.1.1 内核驱动根本概念内核驱动程序自身并不是一个完整的执行流程,即驱动程序自己不会从头执行到尾,它主要的工作是向操作系统注册调用接口,然后等待操作系统调用,WINDOWS内核驱动程序结构如图3-3:图 8 WINDOWS NT 内核驱动程序如下是驱动程序框架的伪代码:NTSTATUS DriverEntry(

23、 PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)PDEVICE_OBJECT Devicobj = IoCreateDevice();IoCreateSymbolicLink();For( Loop_i = 0 to Max_Dispatch)DriverObject-MajorFunctionLoo_ip = DispatchRoutine;Return NTSTATUS_SUCCESS;从上面的伪代码中可以看出驱动程序对象DriverObject,设备对象DEVICE_OBJECT,I/O请求包IRP是驱动程序的重要数据

24、结构,下面是对它们的详细描述。3.4.1.1.1 驱动程序对象DriverObject是I/O管理器管理驱动程序使用的数据结构, DriverObject代表着一个驱动程序,它记录了驱动的设备指针,分派例程指针,加载地址和大小以及名称等信息。DriverObject 是未公开的数据结构,MicroSoft只提供了一些API来访问其局部域,逆向得到的DriverObject结构如图3-4:图 9 驱动程序对象DeviceObject记录了驱动创立的第一个设备,它链接了驱动创立的所有设备。FastIoDispatch记录了驱动FsatIo处理指针,FsatIo是独立于IRP模式的另外一组处理指针,

25、它使用Cache Manager来处理数据。MajorFunction记录了驱动的分配例程指针,几乎所有的功能都在这里面实现。3.4.1.1.2 设备对象DeviceObject代表了驱动程序创立的设备,驱动功能通过设备对象对外展示。设备对象也是一个为公开的数据结构,逆向得到的结构如图3-5:图 10 设备对象DriverObject记录了该设备对象的驱动程序对象,设备对象要调用驱动的功能时需要使用该域。NextDevice记录了由相同驱动程序的创立的其他设备对象,驱动使用设备对象的这个域把自己创立的所有设备对象链接在一起。CurrentIrp记录了发往该设备的I/O请求包。DeviceExt

26、ension记录了自定义的设备相关信息。StackSize记录了如果要给该设备发一个IRP,需要在IRP中创立的堆栈单元数目。1. I/O请求包IRP是设备对象要处理的数据,返回结果也存储在IRP结构中,逆向得到的IRP数据结构如图3-6:图 11 I/O请求包IoStatus 记录了操作的结果状态,包含操作失败或者成功,以及操作的数据总量的信息。RequestorMode记录了I/O请求的原始的来源,分UserMode和KernelMod。CancelRotinue记录了IRP取消操作的处理指针。UserBuffer记录了METHOD_NEITHER模式下的用户态缓冲区的虚拟地址。3.4.1

27、.2 驱动加载技术常用的驱动加载方法有两类,一是微软推荐的利用WINDOWS效劳加载,一是使用未文档化的WINDOWS API。a) 通过效劳加载驱动WINDOWS的效劳控制管理器不仅仅可以启动WINDOWS效劳程序,还可以加载启动驱动程序。通过效劳来加载驱动需要调用的关键API有CreateService,StartService,执行步骤如下:i. 调用OpenSCManager翻开效劳管理控制器。ii. 调用CreateService创立一个新的效劳,类型为SERVICE_KERNEL_DRIVER。iii. 调用StartService启动效劳,完成驱动加载。iv. 调用CloseSe

28、rverHandle关闭效劳管理控制器或效劳句柄。通过这种标准的方法加载的驱动在内存中是非分页的,即一旦加载就一致存在内存中,不会被交换到磁盘上,因此不用担忧驱动运行时访问的代码不在内存。b) 通过未文档化的方法加载驱动逆向效劳加载驱动方法得到其加载驱动的关键过程如下:i. 调用NtCreateKeyEx创立一个包含驱动信息的注册键。ii. 调用NtLoadDriver加载驱动。这种方法和通过效劳加载驱动几乎是一样的效果,不同的是它不需要经过效劳控制管理器的处理,因此无法通过效劳去定位驱动。3.4.2 主机网络数据监控技术该技术是监控子系统中网络监控的核心技术。捕获本机所有网络传输数据包,通过

29、对数据包的源地址和目标地址进行分析,结合可信网络地址列表,对数据包进行过滤。此技术难点在于如何截获所有网络传输的数据包,这是网络数据监控的根底。IM信息过滤功能,通过对用户使用IM软件的聊天内容进行关键词过滤,防止因此产生的泄密。此技术难点在于如何快速准确地过滤掉关键词,这是IM信息过滤的核心问题。该技术的具体实现是通过使用挂载Ws2_32.dll库的方式实现了对网络数据包过滤。首先对Winsock2 SPI技术做一个简单的介绍:Winsock2 SPIService Provider Interface效劳提供者接口建立在WINDOWS开放系统架构WOSAWINDOWS Open Syste

30、m Architecture之上,是Winsock系统组件提供的面向系统底层的编程接口。Winsock系统组件向上面向用户应用程序提供一个标准的API接口;向下在Winsock组件和Winsock效劳提供者比方TCP/IP协议栈之间提供一个标准的SPI接口。各种效劳提供者是WINDOWS支持的DLL,挂靠在Winsock2 的Ws2_32.dll模块下。多数情况下,一个应用程序在调用Winsock2 API函数时,Ws2_32.dll会调用相应的Winsock2 SPI函数,利用特定的效劳提供者执行所请求的效劳。Winsock 2 是一个接口,而不是协议,所以它可以用于发现和使用任意数量的底层

31、传输协议所提供的通信能力,Winsock2不仅提供了一个供给用程序访问网络效劳的windows socket应用程序编程接口API,还包含了由传输效劳提供者和名字解析效劳提供者实现的Winsock效劳提供者接口SPI和ws2_32.dll。以下是winsock2在传输效劳提供者上的WOSAWINDOWS开放效劳结构:图 12 winsock2 SPI 结构图传输效劳提供者把所有的相关信息都存放在WSAPROTCOL_INFOW这个结构中,而应用程序就是通过这个结构的内容来将自己和相应的传输效劳提供者相关联,WINDOWS socket SPI提供三种协议:分层协议,根底协议和协议链。分层协议是

32、在根底协议的上层,依靠底层根底协议实现更高级的通信效劳。根底协议是能够独立,平安地和远程端点实现数据通信的协议,它是相对与分层协议而言的。协议链是将一系列的根底协议和分层协议按特点的顺序连接在一起的链状结构,如下列图:图 13 winsock2 SPI 根底效劳提供者和分层效劳提供者关系Ws2_32.dll数据传输局部的主要功能是在效劳提供者和应用程序之间提供流量管理的功能。每个应用程序通过Ws2_32.dll和相应的效劳提供者进行严格的数据交换。Ws2_32.dll根据应用程序在创立套接字时所提供的参数来选择特定的效劳提供者,然后把应用程序的实现过程转发由所选创立套接字的效劳提供者来管理。也

33、就是说,Ws2_32.dll只是一个中间过程,而应用程序只是一个接口,数据通信的实现却是有效劳提供者来完成的。3.5 主监控程序主监控程序模块负责从用户登陆模块读取当前登陆用户信息,根据该信息加载普通用户界面,或者管理员界面。在管理员登陆后,主监控程序可以控制监控子系统的动态加载或者卸载,即向效劳控制台提供启动、暂停、退出等命令。提供日志信息显示接口。图 14 主监控程序部署图3.5.1 监听移动设备技术该技术需要完成三个任务:实时监测USB移动存储设备的接入和拔出;识别设备类型以决定是否有必要控制;在需要控制的前提下,启动锁机功能。3.5.1.1 设备接入和拔出通知应用程序需要知道何时USB

34、移动存储设备接入到主机或者从主机拔出,才能对当前系统的状态进行控制。由于USB是PnP设备,支持热插拔,所以可以利用消息通知来识别USB设备的动态改变。在WINDOWS操作系统中,消息机制扮演了一个相当重要的角色,可以说系统就是消息驱动的。在系统和应用程序交互的众多消息中,系统发送WM_DEVICECHANGE给应用程序的主窗口消息处理过程,通知设备改变。WM_DEVICECHANGE在winuser.h头文件中定义。在受到WM_DEVICECHANGE消息后,其设备事件类型wParam为DBT_DEVICEARRIVAL那么说明插入USB设备,系统自动播送此事件。如果为DBT_DEVICER

35、EMOVECOMPLETE那么说明USB设备被拔出,同样系统也会自动播送此消息。3.5.1.2 设备类型的识别可以根据在WM_DEVCIECHANGE事件下数据的结构指针lParam来获取当前插入或者拔出的设备类型。其具体操作是,应由DEV_BROADCAST_HDR* dhr = (DEV_BROADCAST_HDR *)lParam变化后获取通用的设备指针dhr,并根据该结构中的dbch_devicetype和dbcv_flags来判断是否是移动存储设备。3.5.1.3 启动锁机功能LockWorkStation函数而实现锁机功能的。1) 用户管理界面用户管理模块提供给管理员创立新增用户及

36、其规那么访问策略集;查看并修改当前存在于系统当中的其他用户信息;管理员向其他设备授权。管理员授权用户分为两个步骤实现:3.5.1.4 USB移动存储设备识别和将逻辑盘符转换成物理驱动盘符移动设备插入系统后需要识别该设备类型后,才能判断能否将数据保存在该移动设备上。由于win32没有直接提供对移动存储设备进行判别的API函数,必须用其他的方式实现对移动设备的识别。磁盘类型检测函数GetDriverType可以检测到removable类型的磁盘设备,但是该函数的特殊之处在于,有的移动存储设备在系统中被识别为可移动设备,返回DRIVER_REMOVABLE类型,有的移动存储设备如移动硬盘,往往被系统

37、识别为硬盘分区,返回值是DRIVER_FIXED。因此,用GetDriverType函数检测USB接口的存储设备时并不能保证得到正确结构。为此,通过借助DeviceIoControl函数来实现对USB接口接入设备进行类型判别。由于写入USB移动存储设备扇区的方式是对其物理扇区的进行直接写入,而不是写入USB移动存储设备的逻辑扇区,所以必须通过该函数实现逻辑盘符和物理驱动盘符的相互转换。判断接入设备类型的流程图:图 15 判断插入设备类型的流程图3.5.1.5 生成证书和私钥该功能是通过使用openssl提供的MakeRoot函数来生成证书和与证书对应的私钥,并将生成好的私钥存入USB移动存储设

38、备中。2) 模块管理界面模块管理提供功能接口给管理员,具体使用的技术是通过与效劳控制台创立命名管道,向效劳发送命令消息的形式来间接暂停,启动,退出监控子系统。这样设计便于监控子系统中各个模块动态加载和对其进行功能扩展。3) 日志显示界面日志显示模块,通过向监控子系统通讯,将获取的信息即时的打印出来。不同的监控模块使用了不同的通讯方式。进过试验结论证明,与网络监控通讯使用命名管道的方式可以到达最正确性能,并且能减小消耗主监控系统所占资源;与文件监控通信使用DeviceIoControl的方式能减小通信的丢包率。4. 系统性能测试4.1 测试环境硬件环境:CPU:Pentium4 以上,RAM:5

39、12MB,硬盘:20GB以上,CD-ROM软件环境:WINDOWS XP SP24.2 测试用例说明4.2.1 文件监控模块功能测试测试需求项测试目标文件过滤驱动加载文件过滤驱动正常加载文件过滤驱动卸载文件过滤驱动正常卸载禁读禁写禁删除禁重命名测试禁读禁写禁删除禁重命名功能正常可读禁写禁删除禁重命名测试可读禁写禁删除禁重命名功能正常可读可写禁删除禁重命名测试可读可写禁删除禁重命名功能正常可读可写可删除禁重命名测试可读可写可删除禁重命名功能正常可读可写可删除可重命名测试可读可写可删除可重命名功能正常可读禁写禁删除可重命名测试可读禁写禁删除可重命名功能正常可读可写禁删除可重命名测试可读可写禁删除可

40、重命名功能正常4.2.2 网络过滤模块测试测试需求项测试目标网络过滤模块加载测试网络过滤模块成功加载网络过滤效劳卸载测试网络过滤效劳成功卸载过滤规那么文件读取测试成功读取过滤规那么文件网址规那么过滤测试测试网址规那么过滤功能正常邮件关键字规那么过滤测试邮件关键字规那么过滤功能正常msn关键字规那么过滤测试msn关键字规那么过滤功能正常IP地址规那么过滤测试IP地址规那么过滤功能正常4.2.3 系统的总体功能测试测试需求项测试目标整个系统各个功能测试整个系统各个功能正常4.3 测试过程描述4.3.1 文件过滤驱动加载测试测试步骤:用加载文件驱动模块加载文件驱动,然后用debugview 4.75

41、查看输出信息,看文件过滤驱动是否加载成功。 测试输入:要加载的文件驱动路径 测试输出: 结果分析:用加载文件驱动模块加载文件驱动后,用debugview 4.75能够正确看到输出信息说明文件驱动加载模块正常。4.3.2 文件过滤驱动卸载测试测试步骤:用卸载文件驱动模块卸载文件驱动,然后用debugview 4.75查看输出信息,看文件驱动是否卸载成功。 测试输入:要卸载的文件驱动路径。 测试输出: Dubugview中无文件驱动相关信息。结果分析:用卸载文件驱动模块卸载载文件驱动后,用debugview 4.75看到输出信息中没有文件驱动的信息说明文件驱动卸载模块正常。4.3.3 禁读禁写禁删

42、除禁重命名测试测试步骤: 将文件过滤规那么中文件名设置为要测试的文件,访问策略设为禁读禁写禁删除禁重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击翻开被测文件显示如图16图 16文件被拒绝访问重命名被测文件显示如图17图 17文件重命名被拒绝用shift+delete键直接删除文件或用右键单击删除显示如图18图 18文件删除被拒绝备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中。结果分析:测试文件翻开和重命名都没有成功,说明禁

43、读禁写禁删除禁重命名功能正常4.3.4 可读禁写禁删除禁重命名测试测试步骤:将文件过滤规那么中文件名设置为要测试的文件,访问策略设为可读禁写禁删除禁重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档2.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击正常翻开被测文件,读出信息正常。写入信息后保存时,显示如图19图 19文件保存被拒绝用shift+delete键直接删除文件或用右键单击删除显示如图20图 20文件删除被拒绝备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中重命名被测

44、文件显示如图21图 21文件重命名被拒绝结果分析:被测试文件能够正常读文件,无法正常写文件,无法正常删除文件,无法正常重命名文件,说明可读禁写禁删除禁重命名功能正常4.3.5 可读可写禁删除禁重命名测试测试步骤:将文件过滤规那么中文件名设置为要测试的文件,访问策略设为可读可写禁删除禁重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档2.txt,也可以是目录路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击正常翻开被测文件,读出信息正常;写入信息后保存时,保存正常;用shift+delete键直接删除文件或用右键单击删除显示如图

45、22图 22文件删除被拒绝备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中重命名被测文件显示如图23图 23文件重命名被拒绝结果分析:被测试文件能够正常读文件,正常写文件,无法正常删除文件,无法正常重命名文件,说明可读可写禁删除禁重命名功能正常4.3.6 可读可写可删除禁重命名测试测试步骤:将文件过滤规那么中文件名设置为要测试的文件,访问策略设为可读可写禁删除禁重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档2.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击正常翻开被测文件

46、,读出信息正常;写入信息后保存时,保存正常;用右键单击删除显示实际上WINDOWS是将其改名到回收站中如图24图 24文件删除被拒绝用shift+delete直接删除,成功将其删除 备注说明:shift+delete为直接删右键单击删除为改名放到回收站中重命名被测文件显示如图25图 25文件重命名被拒绝结果分析:被测试文件能够正常读文件,正常写文件,正常删除文件,无法正常重命名文件,说明可读可写可删除禁重命名功能正常4.3.7 可读可写可删除可重命名测试测试步骤:将文件过滤规那么中文件名设置为要测试的文件,访问策略设为可读可写禁删除禁重命名,然后访问要测试的文件,测试功能是否正常。 测试输入:

47、要测试的文件名路径比方:c:新建 文本文档2.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击正常翻开被测文件,读出信息正常;写入信息后保存时,保存正常;用右键单击删除,成功将其删除实际上是将其改名到回收站下; 用shift+delete直接删除,成功将其删除;备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中重命名文件,成功将文件重命名;结果分析:被测试文件能够正常读文件,正常写文件,正常删除文件,正常重命名文件,说明可读可写可删除可重命名功能正常。4.3.8 可读禁写禁删除可重命名测试测试步骤: 将文件过滤规那么中文件名设置

48、为要测试的文件,访问策略设为可读禁写禁删除可重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击翻开被测文件正常;写文件后保存显示如图26图 26文件保存被拒绝用shift+delete键直接删除文件或用右键单击删除显示如图27图 27文件删除被拒绝备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中重命名文件正常结果分析:被测试文件能够正常读文件,无法正常写文件,无法正常删除文件,可以正常重命名文件,说明可读禁写禁删除可重命名功能正

49、常。4.3.9 可读可写禁删除可重命名测试测试步骤: 将文件过滤规那么中文件名设置为要测试的文件,访问策略设为可读禁写禁删除可重命名,然后访问要测试的文件,测试功能是否正常。测试输入:要测试的文件名路径比方:c:新建 文本文档.txt,也可以是目录,路径中应该含有中文或其他混合字符来测试容错性和兼容性。测试输出:双击翻开被测文件正常;写文件后保存正常;用shift+delete键直接删除文件或用右键单击删除显示如图28图 28文件删除被拒绝备注说明:shift+delete为直接删除右键单击删除为改名放到回收站中重命名被测文件正常。结果分析:被测试文件能够正常读文件,正常写文件,无法正常删除文

50、件,可以正常重命名文件,说明可读可写禁删除可重命名功能正常4.3.10 网络过滤模块加载测试测试步骤:用加载网络过滤模块加载网络过滤SPI,然后用DebugView 4.75查看输出信息,看网络过滤SPI是否卸载成功。测试输入:要加载的网络过滤动态链接库。测试输出:DebugView中显示加载成功的相关信息结果分析:用加载网络过滤模块加载网络过滤SPI后,DebugView 4.75看到输出信息中有加载成功的相关信息说明文件驱动卸载模块正常。4.3.11 网络过滤模块卸载测试测试步骤:用卸载网络过滤模块卸载网络过滤SPI,然后用DebugView 4.75查看输出信息,看驱动是否卸载成功。测试

51、输入:要卸载的网络过滤动态链接库的路径测试输出:DebugView中无网络过滤模块的相关信息。结果分析: 用卸载网络过滤模块卸载载网络过滤SPI后,用DebugView 4.75看到输出信息中没有网络过滤的信息说明网络过滤卸载模块正常。4.3.12 过滤规那么文件读取测试测试步骤:在规那么文件中填写新的网络过滤规那么,然后启动过滤规那么读取模块,用DebugView 4.75查看输出信息,看是否正常加载。测试输入:要测试的规那么文件的路径。测试输出:DebugView中显示了网络过滤模块加载规那么后的相关信息。结果分析:用过滤规那么读取模块读取过滤规那么后,用DebugView 4.75看到输

52、出信息中有网络过滤的规那么信息说明网络过滤读取规那么信息模块正常。4.3.13 网址规那么过滤测试测试步骤:在规那么文件中填写新的网址过滤规那么,然后启动过滤规那么读取模块,访问要测试的网页,看是否被屏蔽。测试输入:、要测试的网址例如 baidu 测试输出:用IE翻开要测试的网址例如 baidu ,显示如图29 图 29被过滤网址无法翻开结果分析:在加载测试文件前能够正常访问要测试的网址,加载测试文件后要测试的网址被屏蔽,说明网址规那么过滤功能正常。4.3.14 邮件关键字规那么过滤测试测试步骤:在规那么文件中填写要过滤的邮件关键字过滤规那么,然后启动过滤规那么读取模块,发送和接收带有关键字的

53、邮件,看是否被屏蔽。测试输入:要测试的关键字应当输入些汉字和字符的混合字符串,验证稳定性测试输出:用outlook发送带有关键字的纯文本邮件,在收件箱中未接收到测试邮件,发送带关键字的邮件,让outlook接收,outlook收不到要测试的邮件。 结果分析:在正常情况下可以发送和接收的邮件,在加载了关键字过滤规那么后未能发送和接收,说明邮件关键字过滤功能正常。4.3.15 MSN关键字规那么过滤测试测试步骤:在规那么文件中填写要过滤的MSN关键字过滤规那么,然后启动过滤规那么读取模块,发送和接受带有关键字的MSN信息,看是否被屏蔽。测试输入:要测试的关键字应当输入些汉字和字符的混合字符串,验证

54、稳定性测试输出: 用MSN发送带有关键字的MSN信息,对方接收不到含有关键字的MSN信息,对方发送带关键字的MSN信息,己方接收不到带关键字的MSN信息。 结果分析:在正常情况下可以发送和接收的MSN信息,在加载了关键字过滤规那么后未能发送和接收,说明MSN关键字过滤功能正常。4.3.16 IP地址规那么过滤测试测试步骤:在规那么文件中填写要过滤的IP地址过滤规那么,然后启动过滤规那么读取模块,访问被过滤的IP地址因为采用了SPI的设计所以只能过滤应用层访问的IP地址,看是否被屏蔽。测试输入:要测试的IP地址例如 过滤80端口测试输出:用IE翻开任意网页显示如图30图 3080端口被过滤网页无

55、法翻开结果分析:在正常情况下可以访问的IP地址,在加载了IP过滤规那么后不能正常访问,说明IP地址过滤功能正常。4.3.17 整个系统各个功能测试测试步骤:翻开主界面,单击【创立用户】,翻开创立用户对话框,如图建立一个普通用户,如图31图 31创立用户对话框单击【下一步】,弹出创立规那么对话框如图32图 32创立文件规那么对话框单击【下一步】,创立网络过滤规那么,如图33图 33创立网络规那么对话框单击【下一步】,创立IP地址规那么,完毕后,单击授权设备如图授权新设备以新建用户的权限。如图 34图 34授权设备对话框单击【生成】,生成证书,假设证书生成成功,那么可拔下有管理员权限的优盘,这时系

56、统会进入锁机界面,插入普通用户授权的U盘,确定那么进入如下主界面图35图 35受限用户的主窗口界面访问受限文件,只能按照权限访问,超越权限时,日志记录如图36图 36日志记录显示访问受限的网络网址和关键字,都无法正常连接任务管理器关闭主程序后,主程序自动重启,受限文件和网络仍无法正常访问。测试输入: 无。测试输出:以测试步骤中遇到的现象为主。结果分析:经过以上操作后,发现系统创立用户,查看用户,添加/删除规那么,授权设备,锁机,切换用户,文件过滤,网络过滤,日志显示各个模块功能都正常说明整个系统功能正常。4.3.18 性能测试4.3.18.1 网络性能测试测试步骤:分别在以下情况下,利用MSN

57、传输文件,然后计算传输时间,填写到结果表中,传输环境如下:未启动程序情况下,利用MSN分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。在10条网络过滤规那么情况下,利用MSN分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。在50条网络过滤规那么情况下,利用MSN分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。在100条网络过滤规那么情况下,利用MSN分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。在100条网络过滤规那么情况下,利用MS

58、N分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。在500条情况下,利用MSN分别传输10MB、20MB、30MB、50MB、80MB、120MB,然后计算传输时间。测试输入:无。测试输出:结果如下表: 规那么数传输文件大小10MB20MB30MB50MB80MB120MB无75s93s112s210s334s420s10条72s94s112s198s346s380s50条80s100s116s213s332s443s100条96s98s126s237s356s460s200条100s127s167s274s470s532s500条123s156s217

59、s367s620s746s网络规那么条数与文件传输时间表SPI网络监控功能对系统延迟的影响如下列图所示:图 37SPI网络监控功能对系统延迟的影响结果分析:从图中可以看出,SPI网络监控功能对不同大小文件的传输延迟影响不大,加载该功能模块,文件传输在500条规那么时,最大延迟为326秒。然而,在测量分析过程中,网络自身的延迟对测量的准确性也有较大影响。因此,这种延时属于用户可以忍受的范围,不影响用户的使用体验。4.3.18.2 计算机系统性能测试测试步骤:分别在以下情况下,利用在本机上复制粘贴文件,然后计算传输时间,填写到结果表中,传输环境如下:未启动程序情况下,重复复制1000次文件大小为1

60、MB的文件,然后计算传输时间。在10条文件过滤规那么情况下,重复复制1000次文件大小为1MB的文件,然后计算传输时间。在50条文件过滤规那么情况下,重复复制1000次文件大小为1MB的文件,然后计算传输时间。在100条文件过滤规那么情况下,重复复制1000次文件大小为1MB的文件,然后计算传输时间。在200条文件过滤规那么情况下,重复复制1000次文件大小为1MB的文件,然后计算传输时间。在500条文件过滤规那么情况下,重复复制1000次文件大小为1MB的文件,然后计算传输时间。测试输入:无。测试输出:结果如下表: 优化前文件规那么数和文件传输时间表如下列图:规那么数传输文件时间第一次第二次

61、第三次无4375ms4468ms4375ms10条4437ms4391ms4422ms50条4437ms4406ms4402ms100条4468ms4422ms4422ms200条4469ms4453ms4431ms500条4500ms4532ms4500ms 优化前文件规那么数和文件传输时间表优化后文件规那么数和文件传输时间表如下列图:规那么数传输文件时间第一次第二次第三次无4313ms4297ms4266ms10条4315ms4296ms4322ms50条4322ms4313ms4343ms100条4316ms4313ms4305ms200条4326ms4318ms4327ms500条4315ms4323ms4316ms优化前文件规那么数和文件传输时间表驱动文件监控功能对系统功能延迟比拟如下列图:图 38驱动文件监控功能对系统功能延迟比拟结果分析: 比拟分析结果显示:使用Hash查找优化算法后,系统的延迟有明显减少,并且规那么数量的增加几乎不影响系统的过滤性能。在测试过程

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!