已阅读5页,还剩77页未读, 继续免费阅读
(计算机应用技术专业论文)主机型文件行为监控与内容保护系统设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着信息技术的发展,全球范围i n t e m e t 应用的普及,计算机网络越来越多的 服务于人们的生产和生活,同时也给信息行业带来很多新的挑战。在众多的网络 攻击事件中,由内部人员发起的攻击或者由内部人员滥用网络资源造成的攻击占 据网络攻击事件中相当大的比例,因此内部网络和主机安全对于企事业单位的信 息安全至关重要。由于计算机中的数据都是以电子文档的形式存储,文件系统安 全就成为主机安全里的一个关键部分。主机文件安全监控系统就是保障企业信息 安全的优秀产品。 目前,基于网络攻击的信息安全存储技术发展比较成熟,如防火墙技术、i d s 等,而基于主机安全的信息安全存储技术发展还远未达到市场的要求。本文通过 分析现有的信息安全存储领域的技术缺陷,设计了一种基于主机的终端文件安全 监控技术,并在该技术基础上给出了主机文件安全监控防护系统的总体设计方案。 本文重点给出了文件安全监控防护系统核心模块( 文件访问监控模块和文件 内容保护模块) 的实现机制。本系统的运行环境是w i n d o w s2 0 0 0 及以上版本操作 系统。文件安全监控核心模块根据此类操作系统的结构特点,使用了用户层监控 和内核层监控相结合的双层监控机制。双层监控机制保证了文件安全监控防护系 统能够稳定、高效、全面地实施监控功能。本文还对系统的自我保护机制等功能 进行了阐述。 本文详细地介绍了文件访问监控与内容保护关键技术,并给出了用户层监控 模块和内核层监控模块的设计和实现,其中包括如何在操作系统用户层实现系统 剪贴板监控、文件内容保护、目录监控、文件打印阻断和截屏监控等,如何在内 核层实现文件访问过滤及权限控制等功能。本系统综合运用了a p ih o o k 、网络通 信、w i n d o w s 消息监控和内核模式驱动等技术来实现上述功能。 最后,本文给出了系统的监控测试数据,并根据实验数据分析了系统中使用 的基于主机的文件安全监控技术的优缺点和今后需要进一步完善的地方。实验证 明,主机文件安全监控系统所使用的文件访问监控和内容保护技术在监控的全面 性、有效性方面都达到了较好的效果。 关键词:文件安全监控,剪贴板监控,文件权限控制 a b s t r a c t a b s t r a c t a st h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g ya n dw i d eu s eo fi n t e r n e ti nt h e w o r l d ,c o m p u t e rb e c o m em o r ea n dm o r ei m p o r t a n tt oe v e r y o n e sl i f ea n dw o r k a tt h e s a m et i m e ,m o r ec h a l l e n g ei ni n f o r m a t i o nf i e l da p p e a r e d t h ea t t a c k sl a u n c h e db yt h e i n n e rp e o p l eo ra b u s eo fr e s o u r c e sh o l dal a r g ep r o p o r t i o no fa l lt h ea t t a c k s t h e r e f o r e , t h es e c u r i t yo fi n t r a n e ta n dh o s t si se s s e n t i a lt om a n yc o m p a n i e sa n dg o v e r n m e n t d e p a r t m e n t s t h ed a t ai nt h ec o m p u t e rs t o r e da se l e c t r o n i cd o c u m e n t s ,t h e r e f o r e ,f i l e s y s t e ms e c u r i t yi sak e yi nt h es e c u r i t yo fh o s t t h eh o s tf i l es e c u r i t ym o n i t o r i n gs y s t e m i sa no u t s t a n d i n gp r o d u c ta s s u r i n gt h es e c u r i t yo fc o m p a n yi n f o r m a t i o n a tp r e s e n t ,t h e r ea r ea l r e a d ys o m em a t u r et e c h n o l o g i e so fi n f o r m a t i o ns t o r a g e s e c u r i t ya i m i n ga tn e t w o r ka t t a c k , s u c ha sf i r e w a l la n di d s ,w h i l et h ed e v e l o p m e n to f h o s t b a s e di n f o r m a t i o ns t o r a g es e c u r i t yt e c h n o l o g yi sl a ga n dc a r ln o ts a t i s f yt h e m a r k e t sr e q u i r e m e n t a c c o r d i n gt ot h el i m i t a t i o no ft h et e c h n o l o g y , t h ea r t i c l ed e s i g n sa h o s t - b a s e df i l es e c u r i t ym o n i t o rt e c h n o l o g y , t h e nd e s c r i b e st h ed e s i g np r o j e c to ff i l e s e c u r i t ym o n i t o rp r o t e c t i o ns y s t e mo nt h ef o u n d a t i o no ft h et e c h n o l o g y t h ea r t i c l el a i e sas t r o n ge m p h a s i so nd e s c r i p t i o no ft h ep r o t e c t i o nm e c h a n i s m w h i c hi su s e di nt h ef i l e s e c u r i t ym o n i t o rc o r em o d u l e t h ef i l es e c u r i t ym o n i t o r p r o t e c t i o ns y s t e mr u n so nw i n d o w s 2 0 0 0o ro t h e rh i g h e rv e r s i o np l a t f o r m s a c c o r d i n g t ot h es t r u c t u r ea n dc h a r a c t e r i s t i co ft h e s es y s t e m s ,d o u b l e - l e v e lm o n i t o rm e c h a n i s mi s u s e di nt h ef i l es e c u r i t ym o n i t o rm o d u l e t h ed o u b l e - l e v e lm o n i t o rm e c h a n i s me n s u r e s t h em o n i t o rf u n c t i o n ss t a b i l i z a t i o na n dg r e a te f f i c i e n c yo ft h ep r o t e c t i o ns y s t e m t h i s a r t i c l ea l s oe x p a t i a t e st h es e l f - p r o t e c t i o nm e c h a n i s ma n ds oo n t h e nt h ea r t i c l ei n t r o d u c e st h ed e s i g na n dr e a l i z a t i o no fu s e rl e v e lm o n i t o rm o d u l e a n dk e m e ll e v e lm o n i t o rm o d u l ed e t a i l e d l y , i n c l u d i n gh o wt or e a l i z et h es y s t e m c l i p b o a r dm o n i t o r , t h ef i l e c o n t e n t s p r o t e c t i o n ,d i r e c t o r ym o n i t o r , f i l ep r i n tj o b i n t e r d i c t i o n ,a n dt h es c r e e ni n t e r c e p t i o nm o n i t o ri ns y s t e m su s e rl e v e l ,h o wt or e a l i z e t h ef i l ea c c e s s i n gf i l t e r , t h ea c c e s sp r i v i l e g ec o n t r o li ns y s t e m sk e r n e ll e v e l m a k i n g g o o du s eo ft h ek n o w l e d g ea n ds k i l l so fa p ih o o k ,n e t w o r kc o m m u n i c a t i o n ,w i n d o w s m e s s a g em o n i t o ra n dk e r n e lm o d ed r i v e r , t h es y s t e mr e a l i z et h ec o r r e s p o n d i n g 1 1 a b s t r a c t f u n c t i o n a lm o d u l e s f i n a l l y , t h ea r t i c l es u m m a r i z e st h em e r i ta n dl i m i t a t i o no ft h eh o s t b a s e df i l e s e c u r i t ym o n i t o rt e c h n o l o g ya n dp r o p o s e ss o m eu s e f u ls u g g e s t i o n st oi m p r o v ei t f r o m as e r i e so fe x p e r i m e n t sa n dt e s t s ,i ti sp r o v e dt h a tt h eh o s t - b a s e df i l es e c u r i t ym o n i t o r p r o t e c t i o nt e c h n o l o g yi sw e l le f f i c i e n ta n da d v a n c e d k e y w o r d s :f i l es e c u r i t ym o n i t o r ,s y s t e mc l i p b o a r dm o n i t o r ,f i l ep r i v i l e g ec o n t r o l i i i 图目录 图目录 图2 1 双层监控机制8 图2 2a p i 函数替换原理图1 0 图2 3 钩子运行原理图1 1 图2 4n o t e p a d e x ep e 头格式1 3 图2 5n t 系统组件1 7 图2 - 6 系统调用过程1 8 图2 7s s d t 结构图1 8 图2 8 服务分发图1 9 图2 - 9c r o 寄存器2 0 图2 1 0m d l 内存映射流程图2 1 图2 1 li d th o o k 基本流程图2 3 图2 1 2s y s e n t e rh o o k 流程图2 4 图3 1 文件安全监控系统逻辑结构图2 7 图3 2 用户层监控模块逻辑图2 8 图3 3 用户层监控器逻辑图3 0 图3 4 用户层规则管理逻辑图3 1 图3 5 用户层日志查看逻辑图3 2 图3 - 6 内核层监控模块逻辑图3 4 图3 7d r i v e r e n t r y 例程逻辑图3 5 图3 8d r i v e r d i s p a t c h 例程逻辑图3 6 图3 - 9 实时监控模块设计图4 1 图3 1 0 通信模块原理图4 4 图3 1 1 文件实时监控模块启动流程4 5 图4 1 用户层监控模块结构图4 7 图4 2 文件监控规则4 9 图4 3i o 控制代码的3 2 位组成5 0 图4 4w hk e y b o a r dl l 工作流程图5 1 图4 5 截屏监控实现机制5 5 v i i 图目录 图4 6 文件打印监控功能实现机制5 7 图4 7 剪贴板监控功能实现流程图5 8 图4 8 内核层监控功能模块结构图5 9 图4 9 阻断类型产生机制图6 0 图4 1 0 驱动程序初始化流程6 1 图4 1 1 文件权限控制处理机制6 3 v i l l 表目录 表目录 表2 1 钩子的具体类别及功能1 1 表3 1 缓冲策略4 3 表3 2l p o u t b u f f e r 的值4 4 表3 3m d 5 算法相关函数说明4 6 表4 1 系统中监控的剪贴板a p i 函数5 6 表4 2 主要过滤的剪贴板数据格式5 6 表5 1 文件访问监控测试结果6 6 表5 2 指定目录监控测试结果6 7 表5 3 文件打印监控测试结果6 7 表5 4 剪贴板监控测试结果6 8 i x 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明 确的说明并表示谢意。 签名:鲞叁 日期:年月日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:煎叁导师签名:邋 日期:年 月日 第一章引言 1 1 课题背景和意义 第一章引言 随着信息系统应用的逐步增加,企业的核心竞争力将更多地来自于技术发明、 专利、创新等。如今,随着计算机的普遍应用,越来越多技术发明、创新等依赖 计算机技术,因此,很多核心的机密文档以电子化形式存储在计算机上,甚至绝 大多数的企业核心技术文档本身就是设计图纸、程序源代码等的电子文档【啦】。 然而,网络、笔记本电脑、各种移动存储工具的普及在给人们带来高效和方 便的同时又增加了信息被侦听、截获及非法拷贝的危险【3 】。 据调研机构i tp o l i c yc o m p l i a n c 调查结果显示 4 1 ,6 8 的企业每年发生6 起敏 感数据丢失事件;2 0 的企业每年发生2 2 起,甚至更多敏感数据丢失事件,而7 5 的敏感数据丢失源自内部雇员所为。在f o r t u n e 排名前1 0 0 0 家的公司中,每次电 子文件泄露所造成的损失平均是5 0 万美元。 当前许多企业在各地建立了研发机构,在同一个项目的研发上经常需要数十 甚至数百位员工协作研发,由于工作需要涉及高密文档的环节以及人员众多,给 知识产权的保护带来了管理上的困难。在以往的商业机密案例中,由于在知识产 权损失的取证和赔偿方面的鉴定技术要求较高,以及我国现有知识产权保护法律 尚有许多需要完善的地方,企业的损失往往是巨大而无法挽回的。在这种现状下, 企业通过各种途径对自有知识产权进行严密保护,是必然的选择。 虽然公司可以制订针规章制度对各种机密图纸的流转以及保密工作进行加强 管理,但是由于传统的措施和电子文档管理以及传统安全产品仍然无法杜绝重要 知识产权信息( 例如重要产品设计图纸、程序源代码,公司预研方向阶段性成果 等等) 泄漏的安全隐患,同时不可避免因为安全的原因,而导致工作效率的下降 以及公司资源的浪费( 例如对重要文档进行借阅申请、复印,并且销毁) ,也不利 于公司内部研发部门之间进行协同工作和沟通【4 5 】。 因此,对于主机文件进行访问监控和内容保护是文件安全监控的重要环节。 本文提出的基于主机的文件访问监控与内容保护双层监控技术是一套比较完善的 应用于w i n d o w s2 0 0 0 及以上操作系统版本环境下的文件安全监控技术,可以较好 地防范用户恶意的终端文件操作,保障终端系统内文件信息安全【6 - 8 1 。 电子科技大学硕士学位论文 1 2 文件安全监控的发展现状 随着办公自动化的普及,越来越多的用户将自己的重要文献资料存放于p c 终 端中,从而取代了纸质文档的保存,并且计算机已经大量装备到党政军的要害部 门,各种秘密信息都会送入计算机进行加工、存储和传递。为保证这些秘密信息 不被剽窃、篡改、复制,设计了庞大的网络安全设备和机制,但却忽视了计算机 放在办公桌上的安全性问题。据c e r t 统计,计算机犯罪的7 0 是由内部人员通 过非法终端操作造成的,真正通过i n t e m e t 的来自外部的威胁只有3 。为了保证 这些终端文件资料的安全,不仅要阻断来自网络黑客的攻击,更要防止非法用户 以合理身份登录终端,通过非法操作窃取或者恶意破坏机密文件【9 , 1 0 。因此,文件 安全监控显得越来越重要。 为了保障敏感信息的安全性,各个企业都采取了一定的措施。但仅仅通过完 善文档、源程序、设计资料等的保密制度,利用法律、法规保护自己的知识产权 还是不够的,一定要寻找技术的手段从根本上防止泄密事件的发生】。很多涉密 企业采用的方法是将员工使用的涉密电脑的网络隔离、拆除所有软盘、光盘驱动 器,有些甚至连u s b 端口同时封死。这些方法能够起到一定的作用,防止员工拷 贝机密文档,然而这种安全保障是在牺牲设备提供给用户应用便利性的基础之上 的,并不是最终的解决办、法【1 2 , 1 3 】。 由于应用环境的复杂性及攻击手段的多样性,使得这一领域产品功能还很难 达到保密领域的安全要求,因此要使文件安全监控技术真正走向成熟还有很长的 一段路要走。 1 3 论文主要工作、创新性和实现目标 本文综合目前市场上文件安全监控产品的技术缺陷( 如缺乏智能监控即多重 级别监控、监控功能不完善,存在监控漏洞、系统自身的安全性不能得到很好的 保障等) 设计了一套较完善的w i n d o w s2 0 0 0 及以上操作系统版本环境下的终端文 件安全保障系统。本系统通过用户控制台制定规则命令并通过通信模块与监控模 块交互实现多级别智能监控,通过双层( 用户层和内核层) 监控技术弥补监控漏 洞,并且有一套较完善的系统保护措施。 本文重点对系统所采用的基于主机的终端文件安全监控技术进行了论证。该 项技术根据w i n d o w s2 0 0 0 及以上版本操作系统结构特点提出了双层监控思想,本 2 第一章引言 文根据系统双层监控机制详细描述了如何在操作系统用户层和内核层捕捉由于终 端用户非授权文件操作而引起的系统行为并对该非法文件操作进行审计和阻断, 其中包括如何在用户层实现系统剪贴板使用监控、文件移动控制、目录监控、文 件打印阻断和截屏监控等,如何在操作系统内核层实现文件访问监控和权限控制 等功能。 在本文中使用了系统剪贴板监控机制,剪贴板监控功能在已有的文件安全保 护产品中较少涉及,而终端用户操作中剪贴板的使用也是泄露文件内容的重要途 径,因此,剪贴板监控技术的实现可以有效地加强文件的安全性保护。 本文强调了基于主机的文件安全监控技术功能实现的有效性、监控的全面性 及系统本身的稳定性并给出了相应的测试数据。 1 4 论文内容组织 本文共分为六章。 第一章引言主要描述了目前市场对主机文件安全保障的需求以及必要性, 论文主要工作、创新性和实现目标,并简要介绍了文件安全监控的发展现状。 第二章文件安全监控相关技术分析首先对文件安全监控技术进行了介绍, 通过描述现有的文件安全监控技术方法和分析传统方法的局限性,介绍了双层监 控机制及使用的一些技术方法。 第三章系统整体分析与设计本章主要阐述了系统整体总体设计方案,其中 简要介绍了系统需求、运行环境及框架设计部分,详细描述了实时监控模块、通 信模块和自我保护机制的实现。 第四章系统详细设计与实现本章主要由用户层监控模块和内核层监控模块 两部分组成。用户层监控模块部分详细描述了各子模块的功能实现,包括如何在 用户层通过监控进程a p i 函数的调用以及w i n d o w s 消息来实现用户文件移动控制、 系统剪贴板使用的监控和审计以及保护区内文件打印阻断等。内核层监控模块部 分详细描述了如何通过s y s t e ms e r v i c ed e s c r i p t i o nt a b l e ( s s d t ) 截获用户文件操 作请求来实现文件访问监控和权限控制等功能。 第五章系统测试及技术分析本章给出了系统运行的测试数据,并对实验数 据进行了分析。 第六章总结和展望对本文的主要研究工作进行了总结,同时描述了今后需 要进一步完善的地方。 电子科技大学硕士学位论文 1 5 本章小结 本章主要从整体角度概要性地对全文进行了介绍,包括本课题的背景资料和 研究意义,论文的主要工作以及内容组织方式等。后续章节将对这些内容进行逐 步展开细化。 4 第二章文件安全监控相关技术分析 第二章文件安全监控相关技术分析 2 1 文件安全监控技术简介 文件安全监控技术是指保护电子文档信息不被修改、盗窃和删除等操作的一 些技术手段,主要有防火墙技术、存取权限控制、数据加密法【1 4 】、数字水印法和 数字时间印章法等。文件安全监控技术对于维护电子文档的原始性、真实性具有 十分重要的作用。 2 2 传统的文件安全监控技术方法 目前国内外电子文档安全监控技术主要有如下几种f 1 5 】: ( 1 ) 签署技术 对电子文件进行签署的目的在于证实该份文件确实出自作者,其内容没有被 他人进行任何改动。电子文件的签署技术一般包括证书式数字签名和手写式数字 签名。 ( 2 ) 加密技术 采用加密技术可以确保电子文件内容的非公开性。电子文件的加密方法有很 多种。在传输过程中通常采用“双密钥码”进行加密。网络中的每一个加密通信 者拥有一对密钥:一个是可以公开的加密密钥,一个是严格保密的解密密钥,发 方使用收方的公开密钥发文,收方只用自己知道的解密密钥解密。 ( 3 ) 身份验证技术 为了防止无关人员进入系统对文件或数据进行访问,有些系统需要对用户进 行身份验证,如银行系统使用用户密码验证,文件管理系统使用管理员代码验证 在占 守o ( 4 ) 防火墙技术 这是一种访问控制1 6 , 1 7 1 技术。防火墙的安全保障能力仅限于网络边界,它通 过网络通信【1 8 ,1 9 】监控系统检测2 0 】所有通过防火墙的数据流,凡符合事先制定的网 络安全规定的信息允许通过,不符合的就拒之墙外,使被保护网络的信息和结构 不受侵犯。 电子科技大学硕士学位论文 ( 5 ) 防写措施 目前在许多软件中可以将文件设置为“只读状态,在这种状态下,用户只 能从计算机上读取信息而不能对其做任何修改,这种保护方式可以有效地防止用 户更改电子文件内容,保持电子文件的原始性和真实性。 ( 6 ) 数字证书 它又叫c a 证书,包括个人、机构( 企业) 及设备三种类型,就好像一张网络 上的“身份证”,进行网上交流的双方可以通过它来检验和确认对方身份。 ( 7 ) 智能卡【2 l 】 智能卡是信息技术世界的一个新成员,智能卡的卡体上嵌有一个微处理器或 存储器芯片,用以存储程序和电子数据,有很高的存取安全性。常见智能卡是以 信用卡大小的塑料卡片出现的,随着使用场所不同,智能卡也被做成不同的形状 ( 例如钥匙) ,并支持不同的接口。 智能卡分为两大类:一类是存储器卡,另一类是微处理器卡。存储器卡可以 被看作是一种附加了安全性的微型软盘,它仅仅被用于存储数据。而微处理器卡 则有操作和运算的功能,它就像一架超微型电脑,有自己的输入输出端口、硬盘 和操作系统,同时它还内置了一些安全特性。数缘密印采用的就是微处理器卡。 ( 8 ) 双因素安全【2 l 】 为识别、认证一个授权系统用户,双因素是完全有必要的。其中一个因素是 只有用户本身知道的密码,它可以是个默记的个人认证号( p ) 或口令;另一个 因素是只有该用户拥有的东西电子令牌。 2 3 传统方法的局限性 上述技术措施对于证实电子文件内容的真实、可靠,保证电子文件在存储、 传输过程中的安全、保密,防范对电子文件的非法访问和随意改动,都具有一定 的效果。但随着计算机技术的普及和发展,文件信息安全领域面临着更多的新的 挑战,因此传统的文件信息安全措施还存在着种种不足之处: ( 1 ) 文件信息存储安全技术相对发展比较缓慢:信息安全包括传输安全、系 统安全和存储安全。现在信息安全的热点集中在传输安全和系统安全,上述技术 措施绝大多数是针对信息传输安全的,而存储媒介是安全事件的高发区,应引起 高度重视。 ( 2 ) 针对文件信息存储安全的内控技术匮乏:现在针对文件信息存储安全的 6 第二章文件安全监控相关技术分析 策略和技术大多是针对外部威胁,而很少涉及内部监控,缺乏完善的内控安全保 障措施,而7 0 的泄密犯罪来自于内部,因此增加终端文件的内控安全,是文件 信息安全存储领域急需完善的技术。 ( 3 ) 市场上已有一些文件内控安全产品出现,但由于知识产权及市场竞争的 原因缺少该领域内的技术交流并且这方面的技术资料极度匮乏。而且大多数已有 的文件内控安全产品存在以下缺陷:缺乏一套完善的监控策略,监控功能单一、 存在监控漏洞,没有形成事前侦测、分析处理、事后责任分析的一套防范体系, 并且大部分产品不能很好地实现监控系统【2 2 】的自我保护从而可以被窃密分子通过 某种手段恶意地破坏监控系统。 ( 4 ) w i n d o w s 操作系统本身也提供了一些文件保护功能,如从w i n d o w s2 0 0 0 开始,系统就提供了一种文件保护机制功能w f p ( w i l l d o w sf i l e p r o t e c t i o n ,w i n d o w s 文件保护) 。该功能可以有效地保护w i n d o w s 中某些重要的系统文件,如d l l 、 o c x 、s y s 、c p l 等后缀的文件。并且w i n d o w s2 0 0 0 还提供了加密文件系统e f s , 为除系统文件以外的其他文件和目录提供加密服务。但w i n d o w s2 0 0 0 及以上版本 操作系统的w f p 只用于保护系统文件,保护功能单一,并且e f s 由于文件系统版 本限制( 只能在n t f s 文件系统上使用) 在实际应用上有着一定的局限性【1 7 2 3 1 。 2 。4 现有的文件安全监控技术研究 2 4 1 双层监控机制 本文提出的双层监控机制指的是用户层和内核层双层监控。本文实现的文件 安全监控防护系统运行在w i n d o w s2 0 0 0 及以上版本的操作系统中,提供了两种处 理机运行模式【2 啦9 1 ,一种是用户态( 运行用户程序) ,另一种是核心态( 运行系统 服务) 。当用户进程使用系统调用【3 0 】以请求系统提供服务时,先将用户态切换到核 心态,进行系统服务调用。系统调用结束后,再由核心态切换为用户态,控制返 回到用户程序。为了实现对保护区文件操作的全面监控,根据这种操作系统运行 模式并结合系统稳定性和监控功能的有效性及全面性的综合考虑,在本文实现的 文件监控防护系统模块中实行了双层监控机制,即运用了用户层和内核层双层监 控( 如图2 1 ) 。 7 电子科技大学硕士学位论文 图2 1 双层监控机制 用户层监控模块主要通过a p i 函数截获技术、w i n d o w s 消息机制【2 8 2 9 1 实现了 以下保护区内文件保护功能:保护区内文件剪贴板操作监控、保护区内目录监控、 文件位置移动控制( 不允许保护区内文件移到受控区域外) 、保护区内文件打印阻 断和截屏监控等。 考虑到用户层文件访问的多样性( 如一文件操作功能可能会由复杂的a p i 函 数组合来实现) ,在用户层没有实现用户进程权限控制,由于所有用户层文件操作 在内核层都体现为对相应文件对象的i r p 请求,通过在保护区所在的卷设备对象 上挂接文件过滤驱动则可以截获所有对保护区文件操作所产生的i r p 请求,并在 文件过滤驱动中根据截获到的i r p 包类型调用相应的处理例程,在例程中根据监 控规则实现保护区内文件访问过滤、权限控制等功能,这些都是在用户层很难实 现的。 双层监控遵循以下原则:由于内核层驱动的稳定性非常重要,稍不慎很可能 造成操作系统蓝屏甚至崩溃,因此,尽可能在用户层实现保护区内文件内容保护, 如剪贴板监控、文件打印阻断和截屏监控等。但由于文件访问形式的多样性,如 果在用户层进行文件权限控制势必会造成监控漏洞,并且在用户层很难实现文件 内容的保护功能,因此这些文件安全控制都是在内核层完成。双层监控机制保证 了系统能够稳定、高效、全面地实施监控功能。 根据这种双层监控体制,本系统通过用户态截获和核心态截获实现了终端保 第二章文件安全监控相关技术分析 护区内文件的实时监控,主要采用了a p i 拦截【2 7 】和内核模式驱动技术【3 l 】,下面将 对相关技术做出详细地分析。 2 4 2 用户模式h o o k 1 w i n d o w s 钩子技术【3 2 1 w i n d o w s 系统是一个基于消息的多任务操作系统,所有的窗口程序都是基于 事件驱动的,以一套庞大的a p i 作为系统的基础。在计算机监控系统中如何拦截 这些a p i 的调用是系统的核,已, 3 3 - 3 s 。a p i 拦截3 6 1 是w i n d o w s 系统所特有的一项技 术,它通过拦截被程序调用的a p i 函数来实现改变和扩充现有程序功能。a p i 拦 截的方法有很多,比如向注册表注册、安装w i n d o w s 系统钩子、通过 c r e a t e r e m o t e t l l r e a d 函数来注册驱动程序d l l 、通过引入地址表拦截、通过b h o 来实现对i n t e r n e te x p l o r e 调用的拦截、跟踪进程启动和结束。不同的拦截方法有 其不同的应用场合,根据需要模块采用安装全局钩子的方法来实现对不同程序运 行时间的跟踪。 钩子是w i n d o w s 系统中非常重要的系统接口。本质是一个消息截取器,用它 可截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功甜”】。 钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处 理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生, 完成特定的功能,比如截获键盘、鼠标的输入,屏幕取词,日志监视等。可见, 利用钩子可以实现许多特殊而有用的功能。 2 技术原理例 实施a p i 函数截获的过程【2 8 2 9 】是:进程a 为了某种目的对进程b 所调用的某 个a p i 函数进行拦截,截获该函数的参数和返回值。为了描述上的方便,本文将进 程a 和进程b 分别称为发起进程和目标进程,将要截获的a p i 函数称为目标函数。 在源代码级,函数是以函数名加参数的形式被调用的,但经过编译以后,函数调用 过程将展开为:先将参数压进堆栈,然后开始函数实体调用。调用语句保存了一个 指向该函数的函数指针。a p i 函数截获技术正是利用这种调用的特点,通过动态修 改指向目标函数的指针来实现拦截,其原理可以描述如下:首先,定义一个中间函 数( 伪函数) ,使它与目标函数有着一样的参数个数、参数类型和返回值类型,这 样经过编译以后,该函数将会与目标函数有着完全一样的参数堆栈,然后在目标进 程中找到针对目标函数的调用点,并修改调用语句中函数指针的值,用指向伪函数 9 电子科技大学硕士学位论文 的指针替换指向目标函数的指针。这样,当目标进程再次调用目标函数时,实际调 用的却是伪函数,这样就实现了对目标函数的拦截。当需要恢复目标进程对目标函 数的调用时采用同样的方法,将调用语句中指向伪函数的指针替换回指向目标函 数的指针即可。图2 2 描述了替换前后的函数调用顺序。 图2 - 2a p i 函数替换原理图 在伪函数内部可以先对截获到的参数进行预处理,然后根据需要判断是否调 用目标函数完成系统功能调用:也可以先调用目标函数,再对目标函数的返回结果 做进一步的处理,具体使用哪种方法取决于截获的目的和所调用系统功能的性质。 3 w i n d o w s 钩子分类【3 2 j 钩子按照作用域可以分为局部钩子和全局钩子【3 8 1 。前者只截获本进程内的消 息,应用程序只需要在进程内提供一个回调函数即可;后者要将回调函数封装到 动态链接库内,封装在动态库中的钩子的可供系统调用,进而钩子被纳入系统的 消息传递的链条中。当指定的钩子事件被触发后,局部钩子只需要调用进程中的 钩子函数来预处理事件,全局钩子则需要把动态链接库内的处理函数插入到其他 进程的地址空间,这个过程是由操作系统来实现的【3 9 1 。但有两个是例外,就是日 志钩子和日志回放钩子,它是一种比较特殊的钩子,它可以挂载到系统范围内的 任何进程中,而且不需要另外编写一个d l l 来映射到其他进程的内存空间之中。 钩子从功能上可以划分为以下几种类型: ( 1 ) 键盘钩子和低级键盘钩子可以监视各种键盘消息; ( 2 ) 鼠标钩子和低级鼠标钩子可以监视各种鼠标消息; ( 3 ) 外壳钩子可以监视各种s h e l l 事件消息,比如启动和关闭应用程序; ( 4 ) 日志钩子可以记录从系统消息队列中取出的各种事件消息; ( 5 ) 窗口过程钩子监视所有从系统消息队列发往目标窗口的消息。 w i n d o w s 总计提供了以下1 5 种钩子,各个钩子的具体功能如表2 - 1 所示。 应用程序安装了一个全局钩子之后,当系统发生了该种钩子所能够拦截消息 的时候,系统会强制地将带有钩子的d l l 映射到目标进程内【”】,并且调用其提供 的回调函数,此时回调函数先于目标进程得到消息,回调函数可以首先处理消息, l o 第二章文件安全监控相关技术分析 然后再向下传递消息,甚至可以终止消息的传递。钩子的安装程序也可以通过回 调函数,得到其感兴趣的东西,达到了安装钩子的目的。钩子的运行原理如图2 3 所示: 表2 - 1 钩子的具体类别及功能 w h _ c a l l w r d p r o c监视传递给目标窗口例程之前的消息 硼a l l w n d p r 0 c 髓t监视已被目标窗口例程处理的消息 硼l c b t接受与计算机训练有关的消息详细信息 w h _ d e h u g调试其他钩子例程 岍i _ f o e e g r o u i k r d i d l e 用于当应用程序前台线程空闲对被调用,这个钩子对于在 系统空闲对运行一些低优先权的任务特别有用 w h _ g e t e s s a g e 监视加入到消息队列中的消息 w i j o f , n a l p l a f l j a c k 投递先前被帽_ i o u m o 也r e c o f d ) 钩子记录的消息 w 耳j o i 珉n 鱼i r e c 0 r d记录投递系统消息队列的输入消息,这个 好对书己录宏 特别有用 糟_ k e m o a m 监视键盘击打消息 w h _ k e y b o a e d _ l l监视低级别的键盘输入事件 w l i - 。u s e监视鼠标消息 w h j i j s e l l监视低级别的鼠标输入事件 w 丑s 伍i l i e r 监矾由对诂;r 至渭思框莱早或有禳明条输八事件严生即渭 息 w i _ s h e l l接q 螺移h 壳应用程序有用的通知消息 1 | | | r h _ s y 辄s g f i l l 陬监视由对话框消息框菜单或者滚动条输入时间产生的消 息 钩子月民务器程序 应用程序l 应用程序2 unuf n lu 代码 共享数据段 钩子马区动程序d u 。钩子马区动程序d l l 钩子马区动程序d u l 数据吝5 分 数据吉b 分数据吝b 分 u l w h d 。w s 操作系统 4 函数替换方法 ( 1 ) p e 文件格式 2 3 , 4 0 图2 - 3 钩子运行原理图 电子科技大学硕士学位论文 寻找针对目标函数的调用点时,必须知道目标进程空间中进程内容的排列方 式。在w i n 3 2 操作系统中,进程空间中的内容及其排列方式由与该进程对应的e x e 文件决定。e x e 文件不但包含了进程的可执行代码和数据,同时也详细记录了进程 所引用到的所有d l l 和外部函数的信息。所以可以根据e x e 文件的格式来寻找针 对目标函数的调用点。w i n 3 2 操作系统中的e x e 文件和d l l 文件都属于p e 文件。 p e 文件格式定义了若干个数据结构,分别用于保存文件的代码、数据和输入输出函 数等信息,利用这些结构可以很容易地对p e 文件进行操作。p e t 4 1 】文件的结构主要 包括:p e 文件头、节表和文件节。p e 文件的主体是若干个文件节,其中有一个称 为i d a t a 的节,专门用于保存e x e 文件从d l l 中引入的所有外部函数的信息,包括 调用点的信息,所以可以根据这个节的格式并结合a p i 函数的调用方式来寻找并 替换针对目标函数的调用点。 ( 2 ) d a t a 节剖析【2 3 舯】 i d a t a 节又称为引入函数描述表,它详细地记录了每一个引入函数的信息,包 括该函数的名称( 输出序号) 、所在d l l 的名称和函数的地址。i d a t a 节包含一个 i m a g ei m p o r td e s c r i p t o r 类型的结构体数组,数组的元素与程序所引用到 的d l l 一一对应,若程序引用了n 个d l l 模块,则数组中便会有n + 1 个结构体, 多出来的一个结构体位于数组末尾,其所有的域均为零,用作数组的结束标 志。i d a t a 节的核心则是若干个被称为i a t 的函数指针数组,它们保存了所有引入 函数的地址。i a t 也与d l l 相对应,有一个d l l 被引用,便会有一个i a t ,它们 通过i m a g ei m p o r td e s c r i p t o r 结构体的f i r s t t h u n k 域发生联系。结构体的 另一个域o r i g i n a l f i r s t t h u n k 指向了一个保存引入函数的名称和序号信息的数组。 该数组与i a t 有着严格的对应关系,前者指定引入函数的名称,后者指定地址。 为了形象地说明i d a t a 节的结构,以w i n d o w s2 0 0 0 中记事本程序( n o t e p a d e x e ) 为例,给出其i d a t a 节中与g d l 3 2 d l l 模块相对应的那部分的大致结构图( 如图 2 4 所示) 。 ( 3 ) a p i 函数替换方式 寻找针对目标函数的调用点时,首先根据函数所在d l l 的名称从i d a t a 节的结 构体数组中找到与该d l l 对应的结构
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南京鼓楼医院集团宿迁医院康复治疗师招聘备考题库及一套参考答案详解
- 2026年广州市天河区灵秀小学招聘英语教师(学校自筹经费)备考题库及答案详解一套
- 2026年中能化备考题库与发展战略研究中心招聘备考题库及1套参考答案详解
- 2026年中国建设科技集团股份有限公司招聘备考题库及答案详解参考
- 2026年乐山市沙湾区医疗集团嘉农镇中心卫生院招聘备考题库附答案详解
- 2026年成方金融备考题库技术服务有限公司校园招聘5人备考题库有答案详解
- 2026年北京师范大学贵阳附属学校(小学部)临聘教师招聘备考题库及一套答案详解
- 2026年北京邮电大学网络空间安全学院招聘备考题库及一套完整答案详解
- 2026年中山大学孙逸仙纪念医院深汕中心医院公开招聘事业单位工作人员骨干人才第一批备考题库及答案详解一套
- 2026年中煤江南建设发展集团有限公司特种工程分公司招聘备考题库带答案详解
- T/CSPSTC 17-2018企业安全生产双重预防机制建设规范
- 遥感图像处理技术在城市更新中的应用
- 智慧产业园仓储项目可行性研究报告-商业计划书
- 四川省森林资源规划设计调查技术细则
- 广东省建筑装饰装修工程质量评价标准
- 楼板回顶施工方案
- DB13T 5885-2024地表基质调查规范(1∶50 000)
- 2025年度演出合同知识产权保护范本
- 区块链智能合约开发实战教程
- 2025年校长考试题库及答案
- 《煤矿开采基本概念》课件
评论
0/150
提交评论