基于过滤驱动的摄像头保护
一种基于驱动层的文件保护策略

而 平 台 相 关 的 系 统 服 务 将 调 用 内核 模 式 支 持 例 程 。以 Re dFie函 数 为 例 , 在 该 函 数 被 调 用 中, 调 用 首 先 a l
一
种基于驱动层的文件保 护策略
王 全 民 ,王 淞 ,金 华锋 ,张 丽艳
( 京工业 大学 计算 机 学院 ,北京 10 2 ) 北 0 14
摘 要 :针 对提 高文件安 全级别需要较 高安 全成本问题 ,提 出了一 种低 成本高安 全的 Wn w 文件保护方 法。该方法 采用 Wn w io s d io s d
W N u n i,WA G Sn ,J u-fn ,Z A G L—y n A G Q a—mn N og I H a eg N H N j a
(o g fCm u p B0 gUi rt f T hog ,BOg 1 0 ̄ .hT Cl eo op t, em n el o e nly e/ 0 /4 C/) l e e v sy c o n : a
N T驱 动 框 架 ,基 于 文 件 系统 过 滤 驱 动 技 术 实现 对 文 件访 问权 限 的控 制 。通 过 创 建 自己 的 设备 对 象 ,并 将 其 挂接 到 设 备 堆 栈 上 成 为一 个 过 滤 器 ,根 据 不 同 用 户 的 访 问权 限 有 效 地 对 文 件 进 行 保 护 。 分 析 和 应 用表 明 , 该 方 案 在 增 加 较 少 成 本 基 础 上 ,可 有
系统 ,设 计 并 实现 了一个 基 于 文件 过 滤 驱动 技 术 的文 件
p r i i f sr s a h v d b a D v e O jc h t i ce t d a d a t ce t e i sak. A a s a d pla i rsl h w h t h em s o o ues c i e y e i b t a s ra e n ta h d 0 D v e tc sn i e c e t c n l i n a pc t n eu s so ta te ys i o t
基于微过滤驱动网页篡改防御技术

基于微过滤驱动的网页篡改防御技术摘要:随着互联网的广泛应用,web应用平台在网络信息交互过程中的作用也越来越重要。
因此,如何克服web应用平台面临的各种网络威胁,有效地保障web应用平台安全运行已经成为国内外学者研究的一个的热点课题。
本文主要针对网页篡改这类常见的网络攻击方式,通过分析比较现有几种有效防御技术,深入研究了windows操作系统中的文件系统过滤驱动的机制,并完成了有效网页防篡改功能,从而实现了更为安全可靠的防篡改功能。
关键词:网络应用;信息安全;微过滤;网页防篡改中图分类号:tp393.092随着互联网技术的突飞猛进,大量便捷、多样的网络应用服务凭借其及时高效的特征将很多企业的业务模式由c/s模式逐步转为b/s模式。
然而,大量新的信息安全问题也随之而来。
因此,如何确保网络应用服务的信息安全也逐渐成为了国内外学者研究的热点课题。
面向网络应用层的攻击主要是利用网络应用程序自身存在漏洞机制。
这些漏洞指的是那些发布在网络上的应用服务中存在的一些安全隐患,包括网页篡改、代码注入漏洞、跨站点脚本漏洞、以及跨站点请求伪造漏洞等。
网页篡改攻击是指恶意攻击者利用某些攻击手段对网站的页面件进行非法删除、修改等操作。
本文深入研究了现有几种常见的网页防篡改技术,分析比较了它们的优缺点,在此基础上设计并提出了一种基于文件驱动过滤技术的防篡改方法,从而实现了对网站系统的有效防护。
1 文件系统过滤驱动技术微过滤管理器(即“filter manager”)是一个windows下的文件系统过滤驱动程序,每个微过滤器必须具备唯一的标识符,通过该标识符,系统才能确定如何在输入/输出栈加载该微过滤器。
通过将微过滤管理器加载于其它驱动程序之上,可以对原驱动程序进行加强或者修改。
文件系统的微过滤管理器(即“minifilter”)就能够很大程序加强对文件系统的处理功能。
微过滤器模型的具体框架图则如图1所示。
通常情况下,windows的微过滤管理器主要包含以下几项特征。
基于文件系统过滤驱动的内核Rootkit隐藏技术

第31卷 第3期 吉首大学学报(自然科学版)Vol.31 No.3 2010年5月Journ al of Jishou University(Natural Science Edition)M ay2010文章编号:1007 2985(2010)03 0043 04基于文件系统过滤驱动的内核Rootkit隐藏技术*侯春明,刘 林(吉首大学物理科学与信息工程学院,湖南吉首 416000)摘 要:Ro otkit是能够持久或可靠地、无法检测的存在于计算机上的一组程序和代码.研究了基于文件系统过滤驱动技术的内核Ro otkit,阐述了文件系统过滤驱动的工作原理、过滤驱动的实现、基于文件系统过滤驱动的内核Roo tkit对文件隐藏的实现,并讨论了针对Root kit隐藏的检测技术.关键词:文件系统;Roo tkit;过滤驱动;隐藏中图分类号:T P316 文献标志码:A随着信息技术的飞速发展,以窃取计算机控制权和敏感信息为目标的程序迅速增加.Ro otkit是能够持久或可靠地、无法检测的存在于计算机上的一组程序和代码[1].Roo tkit能在目标计算机中长期潜伏,窃取信息而不被察觉,因此在计算机战争、间谍、反计算机犯罪、证据收集等领域得到广泛应用,同时也被计算机病毒、木马、恶意软件等恶意代码使用者用来实现计算机的恶意控制.控制者一旦获得操作系统的控制权限,种植了Rootkit,它就能维护一个后门,允许控制者一直以管理员权限控制系统,并且通过隐藏文件、进程、注册表项、端口等来隐藏攻击行为,从而逃避用户和安全软件的检测[2].隐蔽性是Ro otkit的最大特性,而文件系统是Rootkit应用的重要领域.许多Ro otkit需要在文件系统中存储文件,并且要求这些文件实现隐藏.Rootkit的文件隐藏技术有2种:利用钩子技术实现文件隐藏,这种方法效率低;利用文件系统过滤驱动技术,效率高,可靠性强.利用文件系统过滤驱动技术来实现Ro o tkit的文件隐藏,成为当前Window s操作系统内核信息安全领域的热点.1 文件系统过滤驱动工作原理1.1Windows文件系统驱动文件系统驱动程序是存储管理子系统的一个组件,为用户提供在持久性介质上存储和读取信息的功能,可以创建、修改和删除文件,同时可以安全可控地在用户之间共享和传输信息,并以适当的方式向应用程序提供结构化的文件内容[3].用户应用程序对磁盘上的文件进行的各种操作,如创建、打开、关闭、读数据、写操作等,最终都要借助文件系统驱动才能完成.各种操作调用Kernel32.dll,通过Win32子系统调用Native A PI向内核层传送请求,然后通过系统服务函数将上层的请求传递给I/O管理器,在I/O管理器中,将对磁盘文件的各种操作请求都统一为输入输出请求包IRP,然后向下层传送IRP给文件系统驱动,最终由文件系统驱动调用磁盘及其他存储设备驱动,进而完成对物理存储设备的各种操作.操作完成后,再将处理结果沿着相反路径返回,整体执行过程如图1所示.*收稿日期:2010 04 25基金项目:吉首大学校级科研课题(09JD015)作者简介:侯春明(1979 ),男,湖南桑植人,吉首大学物理科学与信息工程学院讲师,硕士,主要从事计算机应用与信息安全研究.图1 文件系统过滤驱动原理1.2Windows 文件系统过滤驱动Window s NT 操作系统的内核驱动模型WDM(Window s Driver Mo del)采用了分层结构的驱动程序结构[4].I/O 管理器实现1个分层的数据结构,在DEVICE_OBJECT 对象中保存某种关系,自动将请求IRP 发给设备栈中的最高的1个设备,由其决定如何处理,或是自身处理,或是向下传递,从而实现分层.在WDM 模型中,过滤驱动程序可以在应用程序读写数据的过程中,先于操作系统本身的文件系统驱动截获数据处理相关的IRP,进而进行各种相应的操作,比如隐藏文件、修改数据等.从图1可以看出,文件系统过滤驱动位于I/O 管理器和文件系统驱动程序之间.2 基于文件系统过滤驱动的Rootkit隐藏技术2.1文件系统过滤驱动的实现基于文件系统过滤驱动的Ro otkit 本质上就是驱动程序,在将自身载入内核的同时,完成特定的功能.在Window s 操作系统中,对于应用最广泛的FA T32和N TFS 文件系统,主要生成2类设备,一类是文件系统驱动本身生成的控制设备CDO,另外一类是该文件系统的卷设备.驱动程序和应用层程序类似,有1个主函数Dr iv erEntry,是Window s 驱动程序的入口函数.DriverEntry 函数由内核中I/O 管理器负责调用.Driver Entry 的第1个参数是1个指针,指向1个刚被初始化的驱动程序对象,该对象就代表对应的驱动程序,WDM 驱动程序的DriverEntry 例程应完成对这个对象的初始化并返回,其主要工作是把各种函数指针填入驱动程序对象.这些指针为操作系统指明了驱动程序容器中各种子例程的位置[5].针对文件系统过滤驱动的实现,在DriverEntr y 函数中生成1个控制设备,设置分发函数和快速I/O 分发函数和回调函数,再对文件系统的卷设备进行绑定.在DriverEntr y 中调用内核函数Io Cr eateDev ice 生成文件系统控制设备CDO,这是文件系统过滤驱动和应用层程序的通信的主要接口.基于文件系统过滤驱动的Roo tkit 主要利用这个CDO 修改驱动程序的内部配置以及实现挂载和通信.CDO 生成后,需要在DriverEntr y 中针对来自上层驱动的IRP 设置分发函数和快速I/O 分发函数,然后对Rootkit 所要监控的文件系统的卷设备进行绑定操作.首先利用内核函数SfAttachDeviceTo DeviceStack 函数绑定文件系统控制设备,绑定后,Ro otkit 可以获得发送给文件系统控制设备的文件控制请求,之后针对文件系统卷设备进行绑定.在文件系统的底层,采用物理设备对象VPB 来表示卷控制块VCB 和物理磁盘Device Object 的联系(VPB 是一个重要数据结构,用来将实际存储媒介设备对象和文件系统上的卷设备对象联系起来).文件系统过滤驱动程序从IRP 中获取VPB 的指针,进而获取文件系统的卷设备,然后调用SfAttachTo Mo untedDevice 完成卷设备的绑定.文件系统过滤驱动的绑定完成后,基于文件系统过滤驱动的Ro otkit 被载入到内核的驱动程序设备链中,可以针对各种操作进行过滤.2.2Rootkit 隐藏技术的实现Window s 操作系统中,磁盘等存储设备的每一个分区都被抽象成驱动程序中的设备对象(即卷设备).卷设备是由卷管理器生成,而不是文件系统生成,当1个卷使用某种文件系统时,该文件系统会对应的为该设备生成1个设备对象,称为文件系统的卷设备.Window s 操作系统中对文件的各种操作就是通过向这些设备发送IRP 来完成.基于文件系统过滤驱动的Rootkit,首先创建驱动程序,在驱动上生成设备对象,然后去绑定这些卷设备,从而实现文件系统过滤驱动程序,发送给卷设备的IRP,在到达文件系统之44吉首大学学报(自然科学版)第31卷前,被过滤驱动进行过滤,在过滤驱动对应的例程中实现文件的隐藏.(1)Roo tkit 首先创建文件系统过滤驱动程序,在完成对卷设备的绑定后,使用内核函数IoSetCo m pletio nRoutine 为IRP 设置完成例程,以便在下层的文件系统驱动完成IRP 的时候,对返回的结果进行修改,进而把想要的文件隐藏起来.(2)通过内核函数IoCallDr iv er 沿着驱动程序链向下传递IRP,针对文件操作的每个请求最终由通过文件系统驱动完成处理.在IRP 到达文件系统驱动之后,对应的操作处理完毕,IRP 返回.在过滤驱动中对应的完成例程的处理中隐藏文件.(3)在IRP 返回时执行的完成例程中可以实现对特定文件实现隐藏.当用户在操作系统应用层查看文件时,每个文件返回1个FILE_BOTH _DIR_INFORM ATION 的结构,该结构用来描述指定目录的详细信息[6].用户打开的目录中所有文件返回信息形成1个FILE_BOT H _DIR_INFORMA TION 的结构的链表,只要遍历这样的链表,就可以获取当前目录下的所有文件信息,进而显示到用户层供用户查看.只要从链表中删除指定文件对应的节点,指定的文件就会被隐藏.使用链表操作中对指定节点进行删除的算法,删除指定文件对应的节点,则可以实现文件的隐藏.2.3用户层与内核层的通信如果需要指定特定路径下特定文件名的文件被隐藏,可以使用DeviceControl 实现用户层程序与内核层Roo tkit 驱动程序之间的通信.利用工作在用户层的程序,输入需要隐藏的文件和对应的目录路径,用在DeviceContro l 中定义的IOCT L 控制码进行传递,到达文件系统过滤驱动程序,驱动中自行创建的IRP 处理例程检测到对应的路径中的文件名后,相关文件名信息可以传递给IRP 的派遣函数,用来在派遣函数中实现指定文件的隐藏.3 Rootkit 的检测与防范Roo tkit 技术是一种中立技术,在恶意软件和安全软件中都大量使用,从而导致内核级Rootkit 的检测变得非常重要.因此,Rootkit 的检测技术也是Window 操作系统内核信息安全领域的研究热点,Root kit 的检测技术较多,针对Rootkit 隐藏相关的检测技术如下:(1)隐藏进程检测.文件和进程的隐藏是内核Rootkit 的常见功能,大多数内核Roo tkit 都通过各种手段达到进程隐藏的目的.检测进程隐藏的方法中最常见的是挂钩Sw apContex t 方法:nto skrnl.exe 中存在一个Sw apContext 函数,用于将当前运行线程的上下文与重新执行线程的上下文进行交换,在每次线程切换的时候执行.因此,挂钩这个函数可以得到每次线程切换时换出、换入线程的信息,通过收集所有的线程信息,可以进一步得到所有进程的列表.(2)隐藏文件的检测.针对基于文件系统过滤驱动的Roo tkit 的文件隐藏,可以利用直接读取磁盘扇区来分析文件系统进行隐藏文件的检测,或者向建立在卷设备驱动上的文件系统驱动程序发送IRP.首先,利用ObReferenceObjectByName 获取文件系统驱动程序的driver object,然后根据用户层指定的检测路径用DeviceContro l 代码传递给Rootkit 隐藏文件检测驱动程序,用Cr eateFile 函数打开对应的文件夹路径,获取对应文件夹路径的句柄,利用内核函数ObReferenceObjectByName 可以根据对应的文件夹路径的句柄获取文件对象.获取文件对象后,创建IRP,向对应的文件系统驱动程序发送IRP,在返回的信息中检测所有的文件信息,进而获取被隐藏文件.4 结论文件系统过滤驱动技术是近年来操作系统内核信息安全领域研究热点,过滤驱动附着在文件系统上,通过截获文件系统发出的I/O 请求包来对文件系统进行各种控制操作.内核Rootkit 是一种基于Win dow s 内核层的中立技术,它既可以为善意的安全软件、监控软件、取证软件等服务,也可能被病毒、木马等恶意攻击所利用.笔者介绍了Window s 操作系统的文件系统过滤驱动工作原理、基于文件系统过滤驱动的Roo tkit 实现文件隐藏的关键技术以及Rootkit 的检测方法.利用文件系统过滤驱动技术和Roo tkit 隐藏技术,可以提高安全软件的技术性能,并有效地防止其被恶意利用,对Window s 操作系统内核信息安全45第3期 侯春明,等:基于文件系统过滤驱动的内核roo tkit 隐藏技术46吉首大学学报(自然科学版)第31卷技术应用有广泛的参考意义.参考文献:[1] GR EG H OGL U N D,JA M ES BU T L ER.Ro otkit:Window s内核的安全防护[M].北京:清华大学出版社,2007.[2] 杨 平,罗 红,乔向东.Window s R ootkit隐藏技术研究[J].计算机与信息技术,2009(3):73 74.[3] N A GA R R.Window s NT File System Internals[EB/O L].[2007 04 01].htt p://dow nlo /source/168266.[4] 张 帆,史彩成.W indow s驱动开发技术详解[M].北京:电子工业出版社,2008.[5] W AL T ER O N EY.Pro gr amming the M icr osoft Window s Dr iver M o de[EB/O L].[2008 02 15].http://dow nload.cs/so ur ce/353955.Research on Occultation Techniques of Kernel Rootkit Based onFile System Filter DriverH OU Chun ming,LIU Lin(Co llege of Physics Science and Infor matio n Engineer ing,Jishou U niv ersity,Jishou416000,H unan China)Abstract:A Rootkit is a set o f pro grams and code that allo w s a perm anent or consistent,undetectable presence o n a co mputer.Window s ker nel Rootkit based on file system filter driver has been resear ched. The w ork principle of file system filter driver and the realization of filter driver and occultation tech niques o f kernel Ro otkit based on file sy stem filter driver have been introduced.T he techniques of Root kit detection have been discussed.Key words:file system;Rootkit;filter driver;occultation(责任编辑 陈炳权) (上接第28页)Maximum Norm Superapproximation of the Triquadratic Block Finite Element S olution to the Three Dimension Problem with Variable CoefficientsDENG Yi jun(D epar tment o f M athemat ics,H unan Inter nat ional Econom ics Colleg e,Chang sha410205,China)Abstract:For an variable coefficients elliptic equatio n in3D,w eak estimates for the blo ck finite element over rectangular parallelepiped partitions of the dom ain are obtained by using three dim ensional interpo lation operato r of pro jectio n ty pe and interpolating approx im ation proper ties.Fur thermo re,in combina tion w ith three dim ensional discrete Green functions,the author derives the max imum norm superapprox im ation r esults w ith hig h accuracy of the displacement and gr adient for blo ck finite elem ents.Key words:variable coefficients elliptic equation;blo ck finite element;interpolatio n operator of pro jection ty pe;discr ete Green funtions;superapprox imatio n(责任编辑 向阳洁)。
基于微过滤驱动的文件透明加解密系统的研究与实现

关键 词 :微过 滤驱 动;U s b k e y ;进 程控 制 ;透明加解 密
Re s e a r c h a n d I mp l e me n t a t i o n o f Mi n i f i l t e r Dr i v e r F i l e T r a n s p a r e n t En c r y p t i on
a n d De c r y p t i on Sy s t e m
WA N G Q u a n —m i n ,H E M i n g ,M I A O Y u
( C o l l e g e o f C o m p u t e r S c / b # c e .B e u ) n g£ 酾 { V e 征 y o f T e e h  ̄ o l o g y B e o  ̄ n g 1 0 0 1 2 4 .C h : n a )
采 用微过滤驱动模 型 ,在 W i n d o w s 内核层 实现 文件 的透 明加解 密;其次 ,设计 使用 U s b k e y身份认证和 密钥存 储的技 术 ,使 得 密钥 分离存储 更加安 全,系统更加 可靠;最后 ,合 理利用进程访 问控 制 策略有选择地 对文件进行操作 ;比较 全面、合
Ab s t r a c t: Wi t h t h e wi d e a p p l i c a t i o n o f c o mp u t e r a l a r g e n u mb e r o f c l a s s i f i e d d a t a i s s t o r e d o n v a r i o u s s t o r a g e me d i a. t h e s e c u r i t y o f t h e d a t a we h a v e h i g h e r r e q u i r e me n t s , Wi n d o ws k e r n e l l e v e l f i l e e n c r yp t i o n a n d d e c r yp t i o n i s o n e o f t h e mo s t a p p r o p r i a t e t e c h n o l o g y d a t a c o n f i d e n t i a l i t y h a s b e e n a n i mp o r t a n t t o o ] F i r s t, Mi n i f i l t e r d r i v e r mo d e l i s a Mi c r o s o f t s t r o n g l y r e c o mme n d n e w f i l t e r mo d e l , c o mp a r e d S f i l t e r c o n v e n t i o n a l d r i v e mo d e l , w h i c h h a s b e t t e r c o mp a t i b i l i t y, s t a b i l i t y, a n d h a s a mo r e c o m p a c t d e v e l o p m e n t i n t e r f a c v e r mo d e 1 .t h e wi n d o ws k e r n e l l a y e r i mp l e me n t a t i o n f i l e t r a n s p a r e n t e n c r y p t i o n a n d d e c r y p t i o n ;S e c o n d l y, t h e d e s i g n U s b k e y a u t h e n t i c a t i o n a n d k e y s t o r a g e t e c h n o l o gi e s , ma ki n g k e y i s o l a t e d s t o r a g e mo r e s e c u r e , mo r e r e l i a b l e s y s t e m s; Fi n a l l y, t h e r a t i o n a u l s e o f t h e a c c e s s c o n t r o l p r o c e s s s t r a t e g i e s s e l e c t i v e l y ma n i p u l a t e f i l e s : mo r e c o mp r e h e n s i v e a n d r e a s o n a b l e t o a c h i e v e a f i l e e n c r yp t i o n a n d d e c r yp t i o n s ys t e m.
基于写过滤技术的多层磁盘保护系统

最终会 以 I R P ( I / O请求 包 ) 的形式 发送到 目标 设 备对 象驱动 中。
所 谓过 滤 就是 在本 来 已有 的设 备 栈 中加
数 据提 交是 指将 保存 在覆 盖层 空 间 中的
数据 写入 到被 保护分区真实的 目标扇 区中,使 覆盖层空 间中的数据 能够被 保存下来 ,在执行
信 比较 困 难 ,在 本 系 统 中,在 驱 动 中使 用 在 固态磁盘上 , 比正常 的磁盘读 写速度快 5 - 6 I o C r e a t e D e v i c e 创 建一 个设备 专 门用于驱 动层 倍 ,效率较高 ,但覆盖层空 间有 限。非独立硬
与 用 户 层 通 信 ,用户 层 通 过 De v i c e l o C o n t r o l 调用驱动层的功能
2 . 1 磁 盘 过 滤 驱 动
软件后 ,系统 能一 直处于一个稳定不变 的系统
环境 ,长期使用而不会 随着时间的推移而产生 很 多垃圾文件 ,导致 系统变得缓慢 ,甚至让病 毒木 马有机可乘 ,导致系 统瘫 痪或重要机密外
泄 ,由此产生的损失是 无法估 量的 。或者在某
Wi n d o w s 系统 在 内核 里对 设备 对 象 的管
标设备之 前获得 I R P 请求 ,这样我们就有机 会 提交算法 ,提交算法 会 自 动 根据 覆盖层 类型调 用相应的算法进行数据提 交。非独立覆盖层提 交算法因为覆盖层数据就是保存在被保 护分区
若 目标扇 磁 盘过 滤驱 动是 Wi n d o w s 内核 磁盘 层 过 的剩余空间 中,所 以在提交数据 时 , 则必须进行 扇区备 份 , 滤驱动 的框架 ,磁盘保 护系统采用磁盘过滤框 区已经作为覆盖层使用 ,
基于文件过滤驱动的移动存储介质读写控制

5 0
大
连 民 族 学 院 学
报
第 1卷 3
请求 变成 I P发 给 文件 系统 设 备栈 , R 文件 系统 驱 动 程序把 文件系 统操作 转换 为 响应 的存储 设备 驱
第l 3卷
第 1期
大 连 民 族 学 院 学 报
J u n lo ain Nain l isUnv ri o r a fD l t ai e ies y a o t t
Vo.1 No 1 3, .1
21 0 1年 1月
J n a 2 1 a u ̄ 0 1
文 章 编 号 :0 9—35 2 1 ) 1 0 4 0 10 1X(0 1 0 — 09— 3
收稿 日期 :00— 6— 7 最后 修 回 日期 :0 0— 9— 6 21 0 0; 2 1 0 1
图 1 文件 系统 工 作 原 理
文 件 过 滤 驱 动 程 序 是 针 对 文 件 系 统 驱 动 而 言 。当应用 程 序 读 写 文 件 时 , O 管 理 器 将 这 些 I /
作者 简介 : 米守防 (9 8一) 男 , 17 , 回族 , 山东邹城人 , 工程师 , 主要从 事计算机应用技术研究 。
K e o ds: l y tm l rd rv r rm o a l t r g d a;s c rt yw r i f e s se f t e i e ; e v be so a e me i i e e u iy
近年 来 , 信息 安 全 问题成 为人 们关 注 的焦 点 。 权威 机构 做 的调查 结果显 示 : 超过 8 5% 的安全 威 胁来 自单 位 内部 。而作 为新 一代 取 代软 盘 的移 动 存储设 备 ( U盘 、 动 硬盘 、 动 光 驱 等 ) 因为 如 移 移 , 其使用 灵 活 、 便 , 它在企 业 信息 化 的过 程 中迅 方 使 速得 到普及 , 来 越 多的敏 感 信息 、 密数 据和 档 越 秘 案资料 被存 贮 在 移 动 存 储 介 质里 , 给 企业 信 息 这 资源带 来相 当大 的安 全 隐患 。鉴 于上 述 的安 全 风
基于文件系统过滤驱动的目录安全控制系统设计
De in o ie t r e u i o to y tm a e n f es se fl rd i e s f r co y s c rt c n r l se b s do l y tm t rv r g d y s i i e
HU n - i , YAO e g HE Ch n ・ n Ho gy n Fn , e g wa
drco e u t o to y tm a rtc l fe t ey f lkn so m e oya do eaee sl. i tr sc ry c nrl se c np oe t ee ci l, i al id f m r n p rt ai e y i s i f v t y
moersac es r ee rh r.Af rh l eu i o to to saea ay e ,t edr coys c r o to tae ywhc ae nu e rdt t ef esc r yc nr l h d n tz d h ietr eu i c nrl r tg ihb sdo sr e i et i t me r y t s c lv l n ie tr e ui v ls rsne n ep n il f l ytm l rdie to u e rt .T ek re o to d l e e ddrco s c rt l e ee tda dt r cpeo f es se f t r r s nrd c df sl a y y e ip h i i i e v ii i y h e l n l n c r mo ue n o t l r tr s tn d l r ic se t e in o r tr s c r c n o se a dtec n o i co et gmo u eaeds u sdi ed sg f i co e ui o t l y tm.T ee p r n h wsta e h r de y i nh de y y t r s h x e me t o th i s h t
一种基于文件过滤驱动的Windows文件安全保护方案
收稿日期:2008-07-10;修回日期:2008-09-16。
基金项目:国家自然科学基金资助项目(60873024);湖北省教育厅重点研究项目(D2*******)。
作者简介:胡宏银(1972-),男,湖北大悟人,讲师,硕士,主要研究方向:软件工程、信息安全; 姚峰(1976-),男,山西大同人,讲师,硕士,主要研究方向:软件工程; 何成万(1967-),男,湖北荆门人,副教授,博士,主要研究方向:软件工程。
文章编号:1001-9081(2009)01-0168-04一种基于文件过滤驱动的W indo ws 文件安全保护方案胡宏银,姚 峰,何成万(武汉工程大学计算机科学与工程学院,武汉430073)(huhongyin@hot m ail .com )摘 要:针对提高文件安全级别需要较高安全成本问题,提出了一种低成本高安全的W indows 文件保护方法。
该方法采用W indows NT 驱动框架,基于文件系统过滤驱动技术实现对文件进行透明加解密。
文件内容用快速的对称算法加密,并且一文件一密钥。
文件密钥用安全性更高的非对称算法加密,加密密钥保存于专用密钥文件中,用户私钥存放在密钥U 盘里。
在此基础上,提出了一种文件安全共享的方法。
分析和应用表明,该方案在增加较少硬件成本基础上,可有效保护存储设备遗失或被盗、管理员密码被破解、文件共享时的文件安全。
关键词:文件系统过滤驱动;对称加密算法;非对称加密算法;密钥文件;加密文件共享中图分类号:TP309 文献标志码:ASoluti on of W i n dows f iles secur ity protecti on ba sed on f ile system f ilter dr i verHU Hong 2yin,Y AO Feng,HE Cheng 2wan(School of Co m puter Science and Engineering,W uhan Institute of Technology,W uhan Hubei 430073,China )Abstract:I n order t o s olve the p r oble m that enhancing files security needs high cost,a s oluti on t o W indows files security p r otecti on with l ow cost was p r oposed .It was based on W indows NT driver and file system filter driver t o encryp t and decryp t the files .File content was encryp ted with fast sy mmetrical encryp ti on algorith m,and every file had one encryp ti on key .File encryp ti on key was encryp ted with safer asy mmetrical encryp ti on algorith m,and encryp ted encryp ti on key was saved in the encryp ti on key file .Thr ough st oring the p rivate key in the U disk,the syste m security was enhanced .Additi onally,a method of encryp ted file share was intr oduced int o this paper .Analysis and app licati on results show that when the me mory is l ost,ad m inistrat or pass word is cracked and files are shared,and the s oluti on can enhance file security with l ow cost .Key words:file syste m filter driver;sy mmetrical encryp ti on algorith m;asy mmetrical encryp ti on algorith m;encryp ti on key file;encryp ted file share0 引言计算机和网络的普及使得计算机中文件的安全性成为关注的焦点和研究的热点。
基于文件过滤驱动的病毒防范方法的实现
( 1 . De p . o f N e t w o r k , E l e c t r o n i c E n g i n e e r i n g I n s t i t u t e o f He f e i , He f e i 2 3 0 0 3 7 , C h i n a ;
基 于文件 过滤驱 动 的文件 型病毒 防 护方法 。分 析 了文件 过滤 驱 动 原理 , 通 过 在文 件 系统 驱 动上 层 附加 一 层 过滤 驱 动 , 来 截 获上层 应用 对文件 的各 种操 作 , 阻 止可 疑应用 程序 对 可执 行 文件 的写操 作 , 达 到 主动 防 御文 件 型病 毒 的 目的。文 章从
陈建 熊 , 揭 摄 , 张 鑫
( I . 合肥 电子 工程 学 院 网络 系 , 安徽 合肥 2 3 0 0 3 7 ;
2 . 武警合 肥指挥 学院 院务部 , 安徽 舍 肥 2 3 0 0 3 1 )
摘 要: 计 算机 病毒 给 当今 社会 造成 了较 大危 害 , 为 了有 效 防止 病 毒蔓 延 , 针 对 当前 防病 毒 软件 存 在 的不 足 , 给 出 了一种
2 . D e p .o f L o g i s t i c s , He f e i C o mma n d C o l l e g e o f A r me d P o l i c e , He f e i 2 3 0 0 3 1 , C h i n a )
Ab s t r a c t : Co mp u t e r v i r u s i s h a r mf ul t O s o c i e t y. I n v i e w o f t h e d e f e c t o f t h e v i r u s d e t e c t i o n me ho t d e x i s t i n g, a n e w me t h o d o f v i us r p r e - v e n t i o n ba s e d o n il f e s y s t e m i f l er t d r i v e r i s b r o u g h t f o r wa r d O t p r e v e n t c o mp u t e r v i r u s p r o p a g a io t n. An a l y z e he t he t o r y o f il f e s y s t e m il f t e r d r i v e r . Wi h t a t t a c h i n g a il f t e r d r i v e r O t he t il f e s y s t e m d r i v e r O t o b t a i n u p p e r a p p l i c a t i o n o p e r a t i n g o n he t il f e o f he t d i s k, c a n p r e v e n t S U S - p i c i o u s a p p l i c a t i o n p r o g r a m t o wr it e o n e x e c u t a b l e il f e . Th u s i mp l e me n t he t im a o f a c t i v e d e f e n s e o f t h e c o mp u t e r v i r u s . P r e s e n t t h e d e t a i l i mp l e me n at t i o n o f t hi s me t h o d wi t l l o p e n i n g, wr it i n g, c l o s i n g he t e x e c u t a b l e il f e b y v i us r nd a c o mmu t a i t o n b e t we e n a pp l i c a t i on nd a d r i v — e r . Th e es r u l t i n d i c a t e s ha t t hi t s me ho t d C n a p ev r e n t he t c o mp u t e r v i us r s p r e a d i n g e ic f i e n t l y . Ke y wo r d s : il f e s y s t e m il f t e r d i r v e r ; c o mp u er t v i r u s ; a c t i v e d e f e n s e
基于文件系统过滤驱动的信息安全防护技术研究
1引言
随 着计算机 的普及和技 术的不断发 展 , 目 前安全 形势 日益 严峻 , 管敏感部 门内网采用 尽 了理论 上安 全 性最 高 的物理 隔 离 , 但在 现 实 中 , 盘 滥 用 、违 规 上 网、非 法接 入 、木 马 u 泛 滥等 各种安 全事 件时 刻威 胁着各 组织 单位 内部 涉 密信 息 的 安全 。 比如 各种 U 盘 、移 动硬盘 随着应 用得越 来 越广 泛 , 很容 易感 染 上轮 渡 木马 等恶 意软 件, 因此需要对 U B S 移动存储 设备的文件操 作 行 为进 行 监 控 。 从 数据 自身安全性来说 , 府及军队等安 政 全部 门的电子文档需 要严格管理 , 现在缺少 但 有效的技 术手段 , 各种 明文的电子文档很 容易 造 成失泄 密 。因此需 要加 密保 护敏 感 电子 文 档, 以保证这些 电子文档的 阅读 者在没有得 到 授 权的 情况 下 无法 打开 这些 电子文 档 。 另外对数 据 构成 破坏 威胁 的主要 是 文件 型病毒 , 特点是 寄生在 计算 机文 件系统 内 。 其
Байду номын сангаас
义 了如 何进行处理 各种 I O 操作 。整 个 I O / /
子系统是包驱 动的 , 大多数的输 入输 出请求 绝 都 是使用 I 0请求包( O R q et P c e , / I e us ak t / I ) RP 来传递的 。I P在 I O子 系统 的各个部 R / 件 中间 运动 , 请求 传递 到合 适的地 方 把 在 文件系统架 构中 , 最底层的是文件 系统 驱 动程序( S , 它上面有一 系列的文件 系 F D)在 统过滤 驱动程 序( i y tm Fl rD v r, FW S s i e r e) e t i 每 当应 用程序发起一 个对于文件 的操作时 , 通 过一 个陷阱指令 ( E 将处理 器模 式提 I NT 2 H) 升 到 r n 0 从 而完成 从用 户态 进入 内核态 。 ig , I0 / 管理 器检查数据 存取 合法性 之后 , 造一 构 个 I P MJ RE R ~ — AD的 I 0 / 请求 包( P , I )并送 R 到文件 系统驱动程序 的入 口点 , 文件 系统 等各 层驱动程序 传递并处理 I , RP 最后将结果通 过
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于过滤驱动的摄像头保护摘要:通过分析目前网络上存在的各种信息欺诈行为,通过利用WDM驱动设计一种防止个人图像信息泄露的个人电脑防护系统,并期待该类软件可以更好保护个人隐私数据。
关键词:WDM驱动;摄像头;过滤驱动;Api Hook1 影响计算机网络安全的因素分析影响计算机网络安全的因素有很多,其中既包括人为因素,也包括技术因素。
因此,在计算机网络安全受到威胁时,首先要确定导致网络威胁的因素来源,这样才能够有效、有针对性进行破解,从而维护计算机网络信息的完整性、秘密性与可用性。
1.1 人为操作失误导致的安全隐患计算机用户都拥有各自不同的网络使用权限,由于用户安全意识不强经常会给不法分子可乘之机,比如用户密码设置过于简单。
因此,由于合法用户人为保护程度不够而导致的网络安全威胁,是计算机网络安全中常见的隐患之一。
1.2 人为的恶意攻击人为的恶意攻击是目前最为常见同时也是威胁力最大的计算机网络安全隐患,病毒与黑客就是人为恶意攻击的体现。
恶意攻击往往具有很强的针对性,因此破坏程度较大,不仅能够截获、窃取和破译重要信息,同时也能够对信息数据造成破坏性的影响,对其可用性与完整性进行损坏。
1.3 软件本身的漏洞随着计算机应用软件多样化程度的不断提高,软件开发的复杂程度也不断提高,成千上万的代码构成的逻辑指令,再由繁杂的逻辑指令构建成能够实现用户需求的软件功能,其中程序漏洞的存在在所难免,黑客攻击中就成功利用这些漏洞对用户因此数据进行访问。
2 窃取用户图像信息的技术手段分析目前网络上比较流行的窃取用户影像数据的主要手段可以分为以下几种方式:(1)利用用户在网络上不健康的浏览行为将用于窃取用户数据的木马软件下载到本地,并且通过本地木马软件的执行以达到窃取用户信息的目的。
(2)利用计算机系统中已经安装的软件,或者计算机系统本身的软件漏洞向用户电脑中植入木马程序,从而达到获取用户隐私数据的目的。
(3)利用管理上的漏洞,窃取用户的隐私信息等。
通过以上分析我们可以知道,对于用户隐私数据的获取主要是通过木马的或者远程控制类的软件实现的。
目前各类安全软件中,大部分还是使用黑白名单和特征码的方式对该类软件进行查杀,但是随着黑客变成技术的发展,木马软件的代码段的变形能力,代码自修改,或者壳的使用都在一定程度上削弱了对木马的拦截,因此本文设计的影像数据保护软件并非通过该种方式对用户数据进行保护,而是采用了一种对于用户未定义或者不在用户预料之中的对于用户视频采集设备的访问进行主动拦截,从而达到保护用户隐私的目的。
目前,各种木马使用的技术手段主要还是用户层的各种钩子技术,黑客程序记录或者改变用户期望的程序行为,从而达到不可告人的目的。
由于目前用户层的各种保护措施和用户信息窃取手段的斗争已经相当激烈,因此本文描述的方法避开用户层的技术对抗,而是转入到WINDOWS内核层对设备进行保护,从而达到实现更为强大的保护。
众所周知,现代操作系统为了保证系统的稳定性和健壮性,已经开始采用分层设计的模式,其中内核层主要为用户层提供服务支持,具有控制整个计算机系统并且访问硬件资源的能力,因此将涉及转入内核层,使用内核层拦截,应用层制定规则的模式从而加大对于用户数据的保护强度。
3 驱动的实现目前windows驱动程序设计按照模型的不同进行区分可以分为传统的Nt驱动和加入了对即插即用设备支撑的WDM的驱动程序,现在流行的视频采集设备都是USB接口的,因此我们的驱动设计成为WDM驱动,从而使该过滤驱动获得对于即插即用能力的支持。
3.1 视频采集的工作原理为了获取保护该类型数据的方式,我们首先需要分析视频采集程序的工作原理,为了更为清晰的说明问题,我们决定从内核层和应用层两个方面对软件工作原理进行分析。
应用层的主要工作步骤包括发现USB视频采集设备,查询视频采集设备状态,对视频采集设备进行打开才做,读取视频流,解析视频流等。
而内核层在USB视频采集设备插入USB接口开始,由USB总线创建物理设备PDO,然后由相应的驱动程序创建功能型设备(FD0),然后该种设备挂接到PDO 设备之上,从而形成一种分层接口,每一个层次只完成自己相应比较简单的功能,多个层次结合实现复杂的功能。
3.2 工作原理逆向分析通过编写编写测试程序,并分析该该程序,我们可以得出对于视频流读取过程中底层的函数调用流程,主要流程分析如下:(1)打开测试程序,通过调试工具windbg发现程序对于摄像头设备的打开操作主要是通过WIN32API CreateFile进行打开的,通过分析我们知道CreateFile API在内核层对应的IRP命令为IRP_MJ_CREATE。
(2)当时视频传输过程中,下断点拦截驱动与应用层通信的Win32 API即DeviceIoControl我们得到结果如图1所示:通过分析该栈我们知道,视频传输时发送IRP_MJ_DEVICE_CONTROL其对应的控制码是0x002f007,通过查询我们知道这是一个标准的windows控制码(IOCTL_READ_KS_STREAM)。
因此我们可以通过对这两个控制码的拦截从而实现对摄像头等视频采集设备的保护。
3.3 保护原理由上文分析,我们可以得出何种拦截点可以实现对于视频采集设备的访问控制,现在我们可以分析使用何种技术策略实现该拦截。
目前可以拦截API操作的方式主要包括:SSDTHOOK、INLINE HOOK和使用过滤驱动等几种方式。
对于SSDT HOOK,由于目前很多技术保护手段都采用这种方式,我可以选择该种方式,但是该方式的缺点是容易被解除。
INLINEHOOK 技术由于是微软非官方的技术手段,所以存在着一定的兼容性问题,尤其是针对64位的新一代操作系统时几乎无法使用。
对于最后一种过滤驱动则是微软推荐使用的一种官方手段,因此为了保证软件的兼容性等方面的问题,我们决定采用该种方式对视频采集设备进行保护。
3.4 过滤驱动的实现该保护模块的主要结构包括一个驱动程序对象,及由该驱动程序生成的两个设备对象,分别是一个控制对象,该设备对象用于和应用层进行通信,另一个是过滤设备对象,该设备对象绑定相应的视频采集设备,并对该设备的访问进行相应的拦截控制,其中驱动与应用层通信使用异步的方式进行。
WDM驱动程序对于物理设备的绑定操作与普通的NT驱动不同,该绑定操作在驱动对象结构DRIVER_OBJECT 的DRIVER_EXTENSION结构中的AddDevice例程中完成。
该例程中的主要的绑定操作代码如下:status = IoCreateDevice(DriverObject, sizeof(DEVICE_EXTENSION), NULL, FILE_DEVICE_UNKNOWN, 0,FALSE, &AttDeviceObject);if ( !NT_SUCCESS( status ) )break;FsDevice = IoAttachDeviceToDeviceStack(AttDeviceObject, TargetDevice);If (NULL == FsDevice)Break;对于视频请求的主要拦截操作需要在驱动程序的IRP派发例程中进行,经过上文分析视频采集设备的主要拦截点可以选取两个点,分别是设备的打开操作和设备的视频传输过程,经过实际的实验和分析,我们得出的结论是针对视频的实际传输操作进行拦截。
因为许多程序为了检查摄像头设备是否已经就绪会对设备执行打开操作,所以拦截这一操作会造成大量的误报,因此我们选择第二种方式,关键代码如下:case IRP_MJ_DEVICE_CONTROL:{IoControlCode = CurIoStack->Parameters.DeviceIoControl.IoControlCode;if ( IO_READ_CONTROL == IoControlCode ){uAskResult=AsynAskForPass( ART_Camera,PsGetCurrentProcessId(),PsGetCurrentThreadId());if ( uAskResult == Deny || uAskResult == AlwaysDeny ){return DenyToCallLowerDriver( Irp );}代码中对视频传输的特殊控制码进行拦截,由于视频传输过程是一个持续过程,因此本文在异步通讯函数中实现了一个简单的缓存机制,该机制以当前进程ID作为键值,缓存用户对于视频传输请求的处理结果,从而该进程对于该设备的访问能够保持用户的选择,而不需要不停询问应用层是否放行。
3.5 设备保护效果驱动程序编写完成以后,笔者进行了简单的测试。
该测试使用一个不同的非病毒文件在后台打开摄像头近视视频读取,目前的安全软件都没有反应。
而我们的保护程序阻止了图像的传输,直到用户做出应有的选择。
该程序向用户层提出的询问如图2所示。
由实验结果可以看出,该程序有效保证了程序每一次对于视频设备的访问都必须获得用户的许可才能正常进行,由于采用的拦截方式是视频的实际传输开始,因此从一定程度上减少了误报率。
4 结束语通过上文的实验结果,我们可以看出对于摄像头访问的拦截控制得到预期的效果,但是由于应用层没有设计比较完善的访问策略,所以造成该软件目前采用的保护方式是将任何对于该类型设备视频流读取的作抛出到用户层,由用户层选择是否允许该操作,因此在一定程度上增加了用户使用电脑的复杂程度,为此在以后的工作中应该完善访问控制策略,从而提高该软件的可用程度。
诚如上文分析的数据丢失的原因,软件保护只是避免数据丢失的一种手段,养成良好的网络使用习惯,提高网络安全意识才是保证信息安全最重要的方式。
参考文献:[1] 孔祥维.信息安全中的信息隐藏理论和方法研究[D].大连:大连理工大学,2003.[2] 张鹏.基于系统内核的HIDS研究[D].西安:西安理工大学,2007.[3] 张建新.Windows2000内核结构的分析及驱动程序的编制[J].计算机工程与应用,2002(10).[4] 李明欣.基于WDM过滤驱动的设备权限控制[D].成都:电子科技大学,2007.。