内网一体化安全防护系统中

上传人:hs****ma 文档编号:507347151 上传时间:2023-04-11 格式:DOCX 页数:12 大小:277.61KB
返回 下载 相关 举报
内网一体化安全防护系统中_第1页
第1页 / 共12页
内网一体化安全防护系统中_第2页
第2页 / 共12页
内网一体化安全防护系统中_第3页
第3页 / 共12页
内网一体化安全防护系统中_第4页
第4页 / 共12页
内网一体化安全防护系统中_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《内网一体化安全防护系统中》由会员分享,可在线阅读,更多相关《内网一体化安全防护系统中(12页珍藏版)》请在金锄头文库上搜索。

1、蒲堪峰:内部局域网中USB设备分类监控系统的设计与实现安全与与保密内部局域域网中UUSB设设备分类类监控系统统的设计计与实现现蒲堪峰(电信科科学技术术第十研研究所 陕西.西安 71000611)摘 要要:分析析了Wiindoows 20000 操操作系统统下采用用HOOOK系统统IRPP消息的的方式实实现对UUSB设设备分类类监控,可对用用户的UUSB设设备操作作行为进进行实时时监控。该该系统采采用集中中式管理理,分布布式控制制架构,具具有动态态的USSB设备备变更检检测、类类型检测测、敏感感USBB设备控控制,安安全警报报,日志志审计等等功能。作作为内网网一体化化安全防防护系统统的一个个子系

2、统统,通过过实际使使用表明明,该系系统能够够有效地地控制和和降低 USBB 设备备对内部部网造成成的信息息安全风风险。关键词:USBBIRPPWDMM设备监监控HOOOK 在我国,国国家政府府部门、企企事业单单位已经经越来越越多地使使用计算算机网络络开展日日常工作作和业务务,利用用计算机机网络发发送和处处理大量量的内部部秘密文文件。越越来越庞庞大的计计算机网网络及其其不断更更新的相相关技术术也带来来了不断断增长的的安全隐隐患,网网络安全全已经成成为了一一个国际际化的问问题。防防病毒、防防黑客、物物理隔离离、数据据备份、防防火墙等等是人们们常用的的防止外外部网络络侵害的的信息保保护手段段。然而而

3、更大的的安全隐隐患来源源于网络络内部,据据统计,大大约有880% 的安全全破坏是是在网络络内部发发生的。所所以防范范来自内内部的攻攻击更为为重要、更更为迫切切,一旦旦因为各各种原因因导致内内部涉密密文件泄泄漏,将将对国家家稳定和和社会安安全造成成巨大威威胁。因因此,针针对内部部网络终终端使用用者行为为、移动动存储设设备、用用户身份份认证管管理等开开发的“内网一一体化安安全防护护系统”,将从从技术上上解决这这个问题题,使已已发生的的事件不不再是无无法追查查,并能能够做到到有理有有据。USB接接口是计计算机网网络信息息传输的的一个重重要途径径,同时时也是内内部网病病毒的传传播源,因因此很多多保密单

4、单位都在在物理上上禁用UUSB端端口。但由于于USBB设备种种类众多多且使用用广泛,仅仅仅简单单地禁用用USBB接口会会使无威威胁的外外围设备备如USSB鼠标标、键盘和USBBKEYY等无法法使用,给用户带来很多不便。本文讲述了“内网一体化安全防护系统”中基于微软Windows 2000操作系统下的USB设备监控系统USBMon的实现。该子系统可以根据管理员制定的策略分类管理USB设备,方便管理员对网络中各主机的USB设备进行细粒度的管理。一、USSBMoon监控控系统的的基本原原理1Wiindoows 20000系统统结构Winddowss 20000操操作系统统使用IIRP与与内核模模式驱

5、动动程序(NNT4和和WDMM)通信信1 。图11是以用用户视点点所看到到的Wiindoows 20000操作作系统,该该图描述述了驱动动程序开开发者所所关心的的特征。当当用户模模式程序序需要读读取设备备数据时时,它就就调用WWin332 AAPI函函数,如如ReaadFiile。WWin332子系系统模块块(如KKernnel332.ddll)通通过调用用平台相相关的系系统服务务接口实实现该AAPI,而而平台相相关的系系统服务务将调用用内核模模式支持持例程。在ReaadFiile调调用中,调调用先到到达系统统DLLL(Nttdlll.dlll)中中的一个个入口NNtReeadFFilee函数

6、,然然后这个个用户模模式的NNtReeadFFilee函数接接着调用用系统服服务接口口,最后后由系统统服务接接口调用用内核模模式中的的服务例例程,该该例程同同样名为为NtRReaddFille。系系统中还还有许多多与NttReaadFiile相相似的服服务例程程运行在在内核模模式中,为为应用程程序请求求提供服服务,并并以某种种方式与与设备交交互。它它们首先先检查传传递给它它们的参参数,以保护护系统安安全或防防止用户户模式程程序非法法存取数数据,然然后创建建一个称称为“I/OO请求包包(IRRP) ”的数据据结构,并并把这个个数据结结构送到到某个驱驱动程序序的入口口点;NNtReeadFFile

7、e将创建建一个主主功能代代码为IIRP_MJ_REAAD的IIRP,执行IIRP的的设备驱驱动程序序最后可可能会访访问硬件件;驱动动程序完完成一个个I/OO操作后后,通过过调用一一个特殊殊的内核核模式服服务例程程来完成成该IRRP。完完成操作作是处理理IRPP的最后后动作,它它使等待待的应用用程序恢恢复运行行。同样,对对于USSB设备备的所有有操作都都是通过过向USSB设备备发送相相应的IIRP完完成的。UUSBMMon拦拦截所有有发往UUSB设设备的IIRP,并对其其中的内内容进行行分析。如如果发现现USBB设备处处于配置置阶段,说明新新插入UUSB设设备,这这时,USBMoon会通通过发送

8、送相应的的IRPP得到新新插入UUSB设设备的设设备类型型,如存存储类设设备、UUSB集集线器类类设备或或者厂商商自定义义设备等等,再根根据策略略文件来来决定是是否启用用这个设设备。USBMoon中的的关键问问题是IIRP拦拦截、判判断新设设备的加加入以及及对厂商商自定义义类设备备的管理理。2HOOOK 系统的的IRPP消息Winddowss 20000下下,设备和和驱动程程序的有有着明显显的堆栈栈式层次次结构:处于堆堆栈最底底层的设设备对象象称为物物理设备备对象,或或简称为为PDOO,与其其对应的的驱动程程序称为为总线驱驱动程序序;在设备备对象堆堆栈的中中间某处处有一个个对象称称为功能能设备

9、对对象(FDOO),其其对应的的驱动程程序称为为功能驱驱动程序序;在FFDO的的上面和和下面还还会有一一些过滤滤器设备备对象(FiDDO);位于FFDO上上面的过过滤器设设备对象象称为上上层过滤滤器,其其对应的的驱动程程序称为为上层过过滤器驱驱动程序序;位于于FDOO下面(但仍在在PDOO之上)的过滤滤器设备备对象称称为下层层过滤器器,其对对应的驱驱动程序序称为下下层过滤滤器驱动动程序。这这种栈式式结构可可以使II/O请请求过程程更加明明了。每每个影响响到设备备的操作作都使用用IRPP,通常IIRP先先被送到到设备堆堆栈的最最上层驱驱动程序序,然后后逐渐过过滤到下下面的驱驱动程序序。根据据设备

10、以以及该IIRP所所携带的的内容,每一层层驱动程程序都可可以决定定如何处处理IRRP,有有时驱动动程序不不做任何何事,只只是向下下层传递递该IRRP;有时驱驱动程序序直接处处理完该该IRPP不再向向下传递递;有时时驱动程程序既处处理了该该IRPP又把该该IRPP传递下下去。USB设设备驱动动程序在在与硬件件设备进进行通信信时,一一般使用用USBB总线驱驱动程序序接口(UUSBDDI,UUSB Driiverr Innterrfacce),而不直直接使用用HALL函数与与硬件通通信。UUSB驱驱动程序序为了向向其硬件件设备发发送一个个请求,先创建一个USB请求块(URB),再把URB提交到总线驱

11、动程序。例如:为了配置一个USB设备,USB设备的驱动程序需要提交几个URB来读取各种描述符或发送命令,向USBD的调用被转化为带有主功能代码为IRP_MJ_INTERNAL_DEVICE_CONTROL的IRP;然后,这个IRP会被发往由USB集线器驱动为USB设备创建的PDO对象。微软提倡倡的IRRP拦截截方法是是创建一一个上层层过滤设设备对象象,并将将它加到到要拦截截设备所所在的设设备堆栈栈中,其其过程为为:先通通过IooCreeateeDevvicee创建自自己的设设备对象象;然后后获得要要拦截设设备的设设备对象象指针;最后通通过IooAtttachhDevviceeToDDeviic

12、eOObjeect将将自己的的设备放放到设备备堆栈上上成为一一个过滤滤器。这种方方法是最最可靠,也是最常用用的。但但是,在USBBMonn中使用用这种方方法会有有些问题题。假如如有一个个USBB存储设设备接到到USBB Huub上,UUSB Hubb的驱动动程序会会为这个个USBB存储设设备创建建一个PPDO,然后由由USBB存储设设备的驱驱动程序序(Wiindoows 20000下为为usbbstoor.ssys)创建FFDO对对象并加加到PDDO上。此时如果把过滤设备对象加入设备堆栈,过滤设备将在设备堆栈的最上层,I/O管理器发给USB设备的IRP将先经过过滤设备;而如果先加好了过滤驱动,

13、再插入闪存时就会形成图2所示的设备堆栈结构。绝大多数的IRP都是由USB Hub驱动建立的PDO对象完成,此时根本达不到过滤的效果,因而这种方法只有在USB设备加入后才能拦截IRP,这就使它无法检测到设备的动态插入。如果仅仅是对设备的操作进行记录,而不需要检测设备的动态插入,这到不失为一种理想的方法。USB设备USB设备对应的FDO(由USBHUB驱动建立)过滤设备对象USB Hub设备对象图2 添加过滤设备形成的设备栈USBMMon使使用了HHOOKK驱动设设备对象象派遣函函数的方方法来拦拦截IRRP,对对于发往往设备的的IRPP,I/O管理理器会使使用DeevicceObbjecct中的的

14、DriiverrObjjectt反向指指针来定定位相应应的驱动动程序对对象,然然后根据据IRPP和IRRP堆栈栈中的参参数调用用相应的的驱动程程序例程程。从IIRP处处理过程程可看出出,只要将将驱动程程序例程程指针用用相应的的钩子函函数来代代替就可可达到拦拦截IRRP的目目的。这这种方法法最简单单直接,而而且拦截截IRPP时不会会受到过过滤设备备必须在在设备堆堆栈栈顶顶的限制制。这里里选择了了HOOOK UUSB集集线器驱驱动程序序的分发发例程。通过动态态调试发发现,驱驱动程序序开发中中,经常使使用的IIRPTTracce工具具,通过HHOOKKIoCCalllDriiverr等IRRP处理理

15、过程中中必须使使用的II/O服服务例程程来达到到拦截IIRP的的目的,它它使用的的方法类类似上层层截获AAPI调调用的方方法,直直接改写写ntookrnnl.eexe的的PE头头导出节节。这种种方法可可以截获获到系统统内所有有的IRRP,适适用面很很广,与与上面的的方法相相比,只只是实现现的难度度和系统统开销稍稍微大了了一点。另一种方方法是通通过给UUSB集集线设备备添加过过滤驱动动程序来来拦截IIRP。这这种方法法最保险险且稳定定。3通过过分析IIRP获获取设备备加入通通知USBMMon要要完成的的功能是是根据设设备策略略禁用UUSB设设备,并并不关心心USBB设备的的具体操操作,因因此钩子

16、子函数的的工作仅仅仅是监监控新设设备的加加入并根根据策略略及时对对设备的的启用进进行控制制。所有有新加入入的设备备都要通通过配置置才能使使用,UUSBMMon通通过设备备配置过过程中的的某些特特殊操作作来获得得新设备备加入的的通知,并根据据策略及及时阻止止。以下下是USSB设备备连接时时的总线线列举过过程。(1)UUSB集集线器发发现有UUSB设设备插入入时,会会向主机机报告其其下行端端口上有有USBB设备连连接。主主机接到到该通知知后,会会向集线线器发出出GettPorrtSttatuus请求求,以了解解更多信信息;(2)主主机向该该集线器器发出GGetPPorttStaatuss请求(集线器器设备类类请求),以复复位这个个USBB设备;(3)主主机使用用默认地地址向UUSB设设备发出出GettDesscriiptoor请求求,以取得

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号