(计算机系统结构专业论文)基于windows操作系统的rootkit检测系统研究.pdf_第1页
(计算机系统结构专业论文)基于windows操作系统的rootkit检测系统研究.pdf_第2页
(计算机系统结构专业论文)基于windows操作系统的rootkit检测系统研究.pdf_第3页
(计算机系统结构专业论文)基于windows操作系统的rootkit检测系统研究.pdf_第4页
(计算机系统结构专业论文)基于windows操作系统的rootkit检测系统研究.pdf_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

可一一 t r ,一1 r 分类号 u d c 注1 密级 王8i 15 学位论文 基于w i n d o w s 操作系统的r o o 憾t 检测系统研究 ( 题名和副题名) 周仕荣 ( 作者姓名) 指导教师姓名 文至虿堕塑 电壬叠撞太堂送都 ( 职务、职称、学位、单位名称及地址) 申请专业学位级别坝士专业名称 1 ,r 计算机系统结构 论文提交日期2 0 1 0 芏论文答辩日期2 q ! q ! 鱼 l 学位授予单位和日期电壬科撞太堂 答辩委员会主席 评阅人 2 0 1o 年 月日 注1 :注明国际十进分类法u d c 的类号。 ,璩饵 二 : 广- 确的说明并表示谢意。 签名:! 虱壁蓥:日期:2 pf 口年石月了日 论文使用授权 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:囝垒蕴- 导师签名:叁翌 日期:加纱年6 月6 日 一 摘要 摘要 r 0 0 t k i t 是能持久的存在于计算机上而难以被检测的一组程序或代码,是恶意 软件用来隐藏自己的踪迹和保留计算机超级用户权限的工具。r o o t k i t 的严重危害 性表现在它拥有目标计算机的超级用户权限,可以在用户不知道的情况下对目标 计算机进行随心所欲的操控。不断发展的r o o t k i t 技术甚至能攻破r o o t k i t 检测 软件,并通过修改r 0 0 t k i t 检测软件的执行逻辑使r 0 0 t k i t 检测软件失效。 本文首先对r 0 0 t k i t 采用的技术和发展趋势进行了分析,对r o o t k i t 检测工 具的现状进行了总结;对与r o o t k i t 紧密相关的w i n d o w s 操作系统进行了研究, 包括访问控制机制、内存分页和寻址方式、进程和线程、可加载内核模块( 驱动) 、 系统服务调度表、中断描述符表、p e 文件的结构和加载方式、操作系统信息查询 函数等。在对r 0 0 t k i t 新技术、r o o t k i t 检测工具缺陷性和w i n d o w s 操作系统脆弱 性三个方面进行分析的基础上,设计了一个自检子系统和r 0 0 t k i t 检测子系统相 互独立的r o o t k i t 检测系统。 本文对r 0 0 t k i t 检测子系统进行了详细设计。对文件完整性检测,提出基于 待检测模块可重复随机组合求取m d 5 信息摘要的检测算法和具体的文件完整性检 测流程;通过对钩子函数采用的不同技术进行分析后,提出基于函数地址可接受 范围和函数起始6 4 字节一致性检测钩子;通过对注册表文件和注册表查询的分析, 提出基于h i v e 文件的隐藏注册表检测;通过对r 0 0 t k i t 隐藏文件技术和磁盘文件 存储方式的研究,提出基于直接磁盘文件读取检测隐藏文件;通过对r o o t k i t 的 系统消息钩子和直接内核对象操作技术研究,提出基于内核对象句柄和线程调度 队列检测隐藏进程。在r o o t k i t 检测子系统自保护方面,隐藏了与r 0 0 t k i t 检测 子系统相关的文件、进程和驱动,并设计了提前启动方式,在降低系统的误检率 方面,通过专门的数据分析模块对各检测模块上报的疑似r o o t k i t 进行再分析。 本文将自检子系统和r 0 0 t k i t 检测子系统设计成没有直接依赖和调用关系的 两个独立子系统,并详细研究了两个子系统之间的通信、认证过程和自检子系统 对r 0 0 t k i t 检测子系统的检测、恢复过程。对自检子系统的设计包括密钥的生成 算法、信息的加密和解密过程、保护数据的内容和认证的流程等。 摘要 本文对文件完整性检测算法的可靠性进行了实验分析;还对自检子系统和 r o o t k i t 检测子系统之间的通信、认证过程进行了实验;并从理论上分析了r o o t k i t 检测系统对r o o t k i t 的检测效果。 关键字:r o o t k i t ,r o o t k i t 检测,完整性检测,自检子系统 a b s t r a c t a b s t r a c t r 0 0 t l 【i ti sas c to fp r o 铲锄o rc o d e s 廿1 a tc 锄b ec o n s t a n t l y1 1 i d d e i la n dc a nn o tb e d e t e c t e di nu s e r sc o m p u t e r s i ti sat o o lw h i c hm en a l i c i o u ss o 胁a r ec 锄u s e dt 0l l i d e 廿l e m s e l v e sa n dp r e s e r v em eh i 曲e s ta c c e s s r i g l l t s i ts 甜o u s l ye i l d a i l g e r sm el l i 曲e s t a c c e s s - r i g h t so ft a r g e tc o m p u t e r ,b e i n ga b l et 0c o n t r d l l i n g 也et a r g e tc o m p u t e r 台e e l y w h a t se v e nw o r s ei s t 1 1 a tm ec o n s t a n n y - d e v e l o p e dr o l o t :i ( i tt e c h n o l o g yc 锄b r e a k n l r o u 曲t h er o o t l ( i td e t e c t i o ns o 胁a r ea n dm a k ei t u n a v a i l d b l eb ym o d i 研n gi t s e x e c u t i o n1 0 百c h 1 “st 1 1 e s i s t h ec i 】r r e n ts i t u a t i o no fr o o t l ( i td e t e c _ t i o nt o o l sh a sb e e ns l l m m a d z e d w i n d o w so p 酬i n gs y s t e i l l ,s u c h 雒a c c e s sc o n 仃0 1m e c h a m s m s ,p a g i i l ga i l da d d r e s s i n g m o d e s ,p r o c e s s e sa i l dt l l i 。e a d s ,l o a d a b l ek e n l e lm o d u l e ( “v 哪,n l es y s t e ms e r v i c e d i s p a t c ht a b l e ,t 1 1 ei n t 唧td e s 嘶p t o rt a b l e ,p ef i l e 锄dm ef i m 矾0 n so fs y s t e m i i l f o n n a t i o n ,h a v eb e e ns t u d i e d b 舔e do nn e wt e d m o l o 百e so fr o o t i ( i t ,r o o t b td e t e c t i o n t o o ld e f e c t s 锄d 、i n d o w s0 p e r a t i n gs y s t e i n sv u l n 蹦l b i l i t ) ,ar o o t l ( i td e t e “0 ns y 舳1 w 髂d e s i g n e di i lw l l i c hm e r o o t :i 【i td e t e c t i o ns u b s y s t e ma 1 1 dm es e l f 二c h e c k i n gs u b s y s t 锄 盯em u t l l a l l yi i l d 印胁d e n t h 1t l l er o o t :b t d e t e c t i o n 吼l b s y s t e i n d o c u m _ t sh a v e b e e nr e p e a t e d 瑚d o m l y c 0 m b i i l a t c dt o0 b t 血m d 5d i 西t a ls i 髓a t u r et od e t e c tf i l ei n t e 鲥t ) ,1 1 1 eh o o k sh a v eb e d e t e c t c dt l l r o u 曲m ea d d r e s s sa c c 印t a b l e 础g e 锄d 廿l ef i r s t - 6 4 - b y t e so f 矗m c t i o n ;m e h i d d r e 舀s 仃yi t 锄h a v eb e e i ld e t e c t e db yf c t c h i n gm e v ed o c 啪饥td i r 硎y ;t l l e h i d d 饥f i l e sh a v eb e 锄d e t e c t e db yr e a d i n gf i l e s 舶l md i s l ( sd i r e c u y ;m ek d d 饥 p r o c e s s e sh a v eb e e i ld 吼e c t e db ym ek e m e l0 _ b je c th 锄d l e 锄d 廿l r e a ds c h e d u l m gq u e u e ; h lm ef i e l do ft l l es e l 邱r o t e “0 n ,也er o o t k j td e t c c t 啦s u b s y s t 锄w i l lc 0 n c e a lw i ms e l f r e l e v 锄tp r o c e s s e s ,d o c u m 饥t s ,m o d u l e s a n dad e d i c 砷e dd a t a 觚a l y s i sm o d u l eh 鹤b e 饥 u s e dt 0r e - 锄a l y z em e s u s p e c t e dd a t ar 印o r t e db ym e r o o t k j td e t e c t i o nm o d u l e s t h i ss e l f 二c h e c k i n gs u b s y s t e mw i l lb ed e s i 印e dt l l a tr o o t k i td e t e c t i o ns u b s y s t e mc 弧 n o tb ed i r e c t l yc a l l e d n es e l f c h e d d n gs u b s y s t 锄i sc o m b i n a t c dw i mc e n i f i c “o n m o d u l e ,s e l f d e t e c t i o nm o d u l e ,r e c 0 v e d ,m o d u l e ,a n ds e c r e tk e ym a d d i n gm o d u l e h t h j sm e s i s ,c e n i 6 c a t i o ns t 印h a v eb e e l ls t u d i e di nd e t a i l i a b s t r a c t t h e a l g o n t h i t l s o fd o c u m e n t s i n t e 鲥够 d e t e c t i o nh a v eb e e nt e s tu 曲 e x p 酬西即t ; c o m m 嘶c a t i o l l sb e t 、) l ,e e l l s u b s y s t e m s h a v ea l s ob e e i lt e s t t h r o u 曲 e x p 耐m e n t ;t h ed e t e c t i o na b l i t ) ,o ft l l er o o 衄td e t e c t i o ns y s t e mh a sb e e i la i l a l ) ,z e d t l l e o r e t i c a l l y k e ) w o r d s :r o o 墩i t ,r o o 廿( i td e t e c t i o n ,i n t e 鲥t yt e s t i l l g ,s e l f c h e c k i n gs u b s y s t e m 目录 目录 第一章引言1 1 1 研究背景和意义1 1 2 国内外研究现状2 1 3 论文主要内容和组织结构8 1 3 1 论文主要内容8 1 3 2 论文组织结构9 第二章r t l i t 检测系统整体框架1 1 2 1 需求分析1 1 2 2 设计目标1 2 2 3 设计方案1 2 2 4 本章小结13 第三章与r t “t 检测相关的操作系统机制和对象1 5 3 1h l t e l 访问控制机制15 3 2 内存分页机制和寻址方式15 3 3 、聊n d o w s 操作系统总体框架与设备驱动程序16 3 4 进程和线程19 3 5 系统服务调度表s s d t 2 3 3 6 中断和中断描述符表d t 2 4 3 7 系统信息查询函数2 7 3 8p e 格式文件2 9 3 9 本章小结3 1 第四章r t l 【i t 检测子系统设计3 3 4 1 文件完整性检测3 3 4 2 钩子检测3 6 4 2 1 用户空间钩子3 6 4 2 2 内核空间钩子3 8 4 2 3 钩子函数检测3 9 4 3 隐藏进程和驱动检测4 2 v 目录 4 4 隐藏文件检测4 6 4 5 隐藏注册表检测4 8 4 6r o o 曲t 检测子系统的启动策略51 4 7 用户交互方式的设计5 l 4 8i b o 此t 检测子系统的隐藏5 2 4 8 1r 0 0 t l ( i t 检测子系统相关文件的隐藏5 3 4 8 2r o o 衄t 检测子系统内核模块和进程的隐藏5 3 4 9 本章小结5 4 第五章自检子系统设计5 6 5 1 自检子系统的独立性及其意义5 6 5 2 自检子系统对r o o 蝤t 检测子系统的检测过程5 7 5 3 自检子系统与r o o t l ( i t 检测子系统间的身份认证过程5 7 5 4 自检子系统进入r o o t k j t 检测子系统的方式6 0 5 5 本章小结6 1 第六章r o o t l 【i t 检测系统分析和实验6 2 6 1 实验环境6 2 6 2 文件完整性检测分析与实验6 2 6 3 自检子系统和r o o 倔t 检测子系统之间的认证过程实验6 3 6 4r o o 晒t 检测子系统的r o o t l 【i t 检测分析一6 5 6 5 本章小结6 6 第七章总结6 7 7 1 本文的主要工作6 7 7 2 下一步的工作6 8 致谢6 9 参考文献7 0 v l 图目录 图目录 图2 1r 0 0 t k i t 检测系统设计框架1 3 图3 1 操作系统框架。17 图3 2 过滤驱动程序18 图3 3i r p 设备栈结构18 图3 4 系统调用示意图2 3 图3 5 中断执行过程2 4 图3 6p e 格式文件映射31 图4 1 传统信息摘要模型3 5 图4 2 本论文信息摘要模型3 5 图4 3 内联钩子调用过程3 7 图4 4i r p 钩子调用过程3 9 图4 5 钩子函数检测流程图4 0 图4 6 待隐藏进程结点删除前4 3 图4 7 待隐藏进程结点删除后4 3 图4 8 获取进程链表4 4 图4 9 隐藏文件检测流程4 8 图4 1 0h i v e 文件单元索引4 9 图4 1 l 可疑行为信息表示意图5 2 图5 1 传统r 0 0 t k it 检测和自检子系统关系图5 6 图5 2 自检子系统和r 0 0 t k it 检测子系统的关系图5 6 图5 4 自检子系统发验证信息5 8 图5 5r o o t k it 检测子系统响应验证信息5 9 图5 6r 0 0 t k it 检测子系统发验证信息5 9 图5 7 自检子系统响应验证信息6 0 图6 1m d 5 信息摘要实验6 2 图6 2r o o t k i t 检测子系统等待认证消息6 3 图6 3 自检子系统向r 0 0 t k i t 检测子系统发送认证消息6 3 图6 4r o o t k i t 检测子系统回送认证消息6 4 图6 5 对r o o t k i t 子系统认证通过6 4 v n 图目录 图6 6 没有找到接收源一6 4 图6 7 没有收到回送消息6 5 图6 8 收发消息不一致6 5 表目录 _ _ _ _ _ _ _ _ - _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ l - - _ _ - _ _ - _ - - - - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - - - _ - _ - _ _ i 一 表目录 3 1 地址分段索引16 3 2 页目录项16 3 3 页表项16 3 4e p r o c e s s 结构2 0 3 5k p r o c e s s 结构2 1 3 6 进程环境块p e b 结构2 1 3 7 进程内核变量2 1 3 8 与进程相关函数2 2 3 9 进程性能计数器2 2 3 一1 0 中断服务描述符表2 6 3 1 1p e 文件结构图3 0 6 1r 0 0 t k i t 检测系统能检测的典型r o o t k i t 6 6 i x 表表表表表表表表表表表表 第一章引言 1 1 研究背景和意义 第一章引言 人类进入2 1 世纪以来,计算机和计算机网络得到了突飞猛进的发展,计算机 作为信息处理和存储的系统,在全世界迅速普及,不但广泛应用于国防军队建设、 科学技术研究、企业经营管理,而且成了普通百姓日常生活的必备工具。i n t e r n e t 的迅速发展,使得信息共享和信息传播变得越来越方便快捷。根据有关方面的统 计,截止2 0 0 9 年底,仅中国网民就已经超过了四亿。 另一方面,恶意代码对计算机及计算机网络的恶意破坏、对重要信息的疯狂 窃取也在迅猛发展。在w i n d o w s 操作系统流行的今天,没有安装计算机恶意代码 防护软件的联网计算机已经很难正常工作了,因为这些来自网络的恶意攻击是全 天候,全方位的。甚至在安装了恶意代码防护软件的计算机中,也会有难以检测 和防御的恶意软件存在,真所谓道高一尺,魔高一丈,旧恶意代码不断变异,新 恶意代码不断产生,唯一的办法就是不断的研究出新的恶意代码检测防御工具, 来保护系统不被破坏,信息不被窃取。 本文要研究的r o o t k i t 是能持久可靠、难以检测地存在于计算机上的一组程 序或代码,是恶意软件用来隐藏自己的踪迹和保留计算机超级用户权限( r o o t 访 问权限) 的工具。 r 0 0 t k i t 存在的目的是为了保持被访问计算机超级用户权限( r 0 0 t 权限) 的 控制权,并且不被用户发现。所以r o o t k i t 必须将与自己有关的进程、文件、端 口、注册表项等全部隐藏起来,躲避用户对恶意代码的检测心3 。r o o t k i t 自己不具 备盗取系统“r 0 0 t ”权限的能力,只有恶意代码窃取了用户的“r 0 0 t 权限,并 将r 0 0 t k i t 安装在用户的计算机上以后,r 0 0 t k i t 才具有保持用户机器的“r o o t ” 权限的能力。在r 0 0 t k i t 的帮助下,恶意代码操作者在用户修改用户密码下次开 机后仍然能成功入侵用户的计算机系统。r 0 0 t k i t 在不被用户发现的条件下长期潜 伏在用户的系统中窃取用户信息,或者时机成熟的时候破坏用户的系统。 r o o t k i t 在用户系统中的长期潜伏能力和对系统超级用户权限的保持能力使 得其危害性远高于一般的恶意代码。如果它潜伏到重要部门的电脑上,将会带来 无法估量的损失,所以对r 0 0 t k i t 的检测和防御是计算机安全领域的重要内容旧1 。 电子科技大学硕士学位论文 r o o t k i t 检测防御技术在长期的发展中取得了很大进步,但是总是会有新的 r 0 0 t k i t 突破已有的r o o t k i t 检测防御工具,因为这些新的r o o t k i t 是在对计算机 系统和已有的r 0 0 t k i t 检测工具的双重研究中诞生的;这使得r o o t k i t 检测者不 得不研究新的检测防御方法,推出新的检测防御工具。 1 2 国内外研究现状 r o o t k i t 发展过程大致经历了三个阶段,第一阶段在2 0 世纪8 0 年代,那一时 期出现的r o o t k i t ,主要用来躲避恶意代码检测工具对病毒的扫描,但是对r 0 0 t k i t 的应用是零星的,没有形成系统的理论和技术。第二阶段是2 0 世纪9 0 年代, r o o t k i t 作为合法的技术手段用于保护一些音乐版权,防止未授权用户的非法拷 贝。主要是用户级的r 0 0 t k i t ,通过替换系统原来的p s 、l s 、n e t s t a t 和d f 等程 序,并删除相关的日志内容,使系统管理员无法通过这些工具发现自己的踪迹。 第三阶段就是进入2 1 世纪以后,内核级的r o o t k i t 迅速发展,开始成为r o o t k i t 的主流,由于内核级r o o t k i t 运行在环o 级别,具有超级用户权限,和r 0 0 t k i t 检测防御工具具有同样的权限,所以经常会突破r o o t k i t 检测软件的检测,甚至 使r o o t k i t 检测软件失效。 在r o o t k i t 的发展历程中,一些主要的r o o t k i t 代表了r 0 0 t k i t 的发展方向 和最新技术,这些r 0 0 t k i t 包括: ( 1 ) 灰鸽子 灰鸽子是一款功能强大的r o o t k i t 软件,包括服务器端和客户端,它通过欺 骗手段让用户将服务端软件安装在自己的主机上,然后通过客户端控制用户机上 的r o o t k i t 行为。 “灰鸽子由g s e r v e r e x e 、g - s e r v e r d l1 和g s e r v e r - h o o k d 1 1 三个文件 相互配合组成了灰鸽子服务端。g s e r v e r e x e 是服务模块,能开机自动运行, g - s e r v e r d 1 1 文件是后门程序,与客户端进行通信;g s e r v e r _ h o o k d 1 1 负责隐 藏。 “灰鸽子 作为系统后门程序具有较强的隐藏能力和远程控制能力,它监视 被控制计算机的内存信息,连续捕获计算机电脑屏幕;使用虚拟驱动,监控被控 计算机上的摄像头,具备语音监听和发送功能;同时它隐藏和自保护能力强,不 在进程中现形,还隐藏生成的文件和服务h 3 。 2 第一章引言 “灰鸽子”通过导入地址表钩子对系统a p i 进行了拦截过滤。挂钩的函数主 要有:n t q u e r y d i r e c t o r y f i l e 隐藏文件;n t e n u m e r a t e k e y 隐藏注册表键; n t e n u m e r a t e v a l u e k e y 隐藏注册表值。 由于用户空间要调用系统内核的服务,都要通过n t d l l d l l ,所以灰鸽子勾住 n t d l l d l l 后就可以在系统调用返回的时候对返回的数据进行过滤,达到隐藏自己 的目的。“灰鸽子 将自己的d l l 文件注入另一个进程的地址空间后,就可以完全 控制该进程,例如服务端利用“i e x p l o r e e x e ”进程刺穿防火墙。插入 “i e x p l o r e e x e ”进程有其优点,就是更容易穿透防火墙。 ( 2 ) a g o n y r in 9 0 一r o o t k it a g o n y r i n 9 0 一r o o t k i t 作为内核模式的w i n d o w sr o o t k i t ,可以运行在 w i n d o w s 2 0 0 0 n t x p 环境下,a g o n y r i n 9 0 一r 0 0 t k i t 包括内核驱动程序和可执行程 序两个模块。a g o n y r i n g o r 0 0 t k i t 可以隐藏a g o n y e x e 的程序进程、隐藏以a g o n y 为前缀名的所有文件和文件目录、隐藏文件a g o n y r i n 9 0 一r 0 0 t k i t 自身相关的系 统服务、注册表键和键值、隐藏t c p u d p 网络连接,伪造硬盘空间。 a g o n y r i n 9 0 - r o o t k i t 采用的主要技术手段是挂钩系统的s s d t 表,通过挂钩s s d t 表,过滤由系统信息查询函数z w q u e r y s y s t e m i n f o r 腿t i o n 、z w q u e r y d i r e c t o r y f i l e 和注册表枚举函数z w e n u m e r a t e k e y 、z w e n u m e r a t e v a l u e k e y 以及网络连接函数 n t d e v i c e i o c o n t r 0 1 f i l e 。从而达到隐藏进程、驱动、通信端口和注册表键值的目 的。 ( 3 ) n t r o o t k i t n t r 0 0 t k i t 是由g r e gh 0 9 1 u n d 及一个自由开发小组编写的一款内核模式的 r 0 0 t k i t 。能运行在w i n d o w sn t 2 0 0 0 系统下的内核模式下,源代码已经公开。 n t r o o t k i t 工作在系统内核模式中,它利用挂钩系统服务调度表( s s d t ) 的方法挂 钩了如下的一些系统服务,以实现隐藏进程,文件,目录,服务,注册表项和用 户的功能。 n t r 0 0 t k i t 挂钩的系统服务函数包括n t e n u m e r a t e v a l u e k e y 、n t c r e a t e f i l e 、 n t q u e r y d i r e c t o r y f i1 e 、 n t q u e r y k e y 、 n t q u e r y v a l u e k e y 、 n t o p e n f i1 e n t e n u m e r a t e k e y 、n t s e t v a l u e k e y 、n t o p e n k e y 、n t c r e a t e k e y 悔。 n t r o o t k i t 采用无连接协议,不开端口,有四种可选协议:u s e r d e f i n e d 、i c m p 、 u d p 和t c p 。只使用t c p 数据包进行通讯,不建立t c p 连接,把目标端口设置成任 意一个目标机器上开的端口,就有成功的机会。此外,n t r o o t k i t 有d d o s 功能。 ( 4 ) f u 3 电子科技大学硕士学位论文 f u 一r o o t k i t 是运行在w i n d o w s 2 0 0 0 n t x p 的r i n 9 0 级的r o o t k i t ,由j 锄i e b u t l e r 等人编写,主要采用直接内核修改技术( d c o m ) ) 。f u r o o t k i t 的主程序包 括f u e x e 和m s d i r e c t x s y s 两个部分。m s d i r e c t x s y s 是f u r o o t k i t 的驱动程 序,运行在系统内核。f u e x e 是应用程序旧1 。 f ur o o t k i t 的主要功能包括隐藏某个特定的进程、隐藏指定驱动程序、提升 某个进程权限至s y s t e m 、改变进程令牌和s i d 、列举所有进程和驱动程序、列出 可用的权限名单、甚至还可以删除g u e s t 账户和a d i n i n i s t r a t o r 账户。隐藏进程 的代码如下: d w o r dh id e p r o c ( d w o r dp r o c e s s i d ) d w o r dd b y t e s r e a d : d w o r ds u c c e s s : i f ( ! i n i t i a l i z e d ) r e t u r ne r r o r n o t r e a d y : ) s u c c e s s = d e v i c e i o c o n t r 0 1 ( g d e v i c e , 1 0 c t l r o o t k it h i d e m e , ( v o i d ,i c ) p r o c e s s i d , s iz e o f ( d w o r d ) , n u l l , o , d b y t e s r e a d , n u l l ) : r e t u r ns u c c e s s : ) ( 5 ) h a c k e rd e f e n d e r h a c k e rd e f e n d e r 是一个开源的r o o t k i t ,简称为x d e f 或者“黑客守护 者,由h o l yf a t h e r 编写。当h a c k e rd e f e n d e r 被执行后,在同级目录中查询扩 展名为i n i 的文件并启动它。i n i 文件是用户可配置的,根据用户配置隐藏文件、 进程、注册表项、注册表键值、系统服务、系统驱动程序、开放端口等信息,还 能修改磁盘的空闲空间值。 4 第一章引言 h x d e f 勾住了用户空间的a p i 函数,为隐藏进程和内核已加载模块挂钩了 n t q u e r y s y s t e m i n f o r m a t i o n 函数,根据n t q u e r y s y s t e m i n f o r m a t i o n 的参数 s y s t e m i n f o r m a t i o n c l a s s 的不同,可以过滤隐藏进程、系统已加载模块等。并能 将隐藏进程占用的时间加到空闲进程中。为隐藏文件挂钩了 n t q u e r y d i r e c t o r y f i le 函数,为隐藏注册表项,挂钩了n t e n u m e r a t e k e y 函数和 n t e n u m v a l u e 函数。 在与r 0 0 t k i t 的长期较量中,r o o t k i t 检测工具也得到了长足的发展,r o o t k i t 检测技术也在不断的更新,在这个过程中,不同时期的r 0 0 t k i t 检测工具显示了 r o o t k i t 检测技术的提高过程,一些著名的r o o t k i t 检测工具代表了当前的 r 0 0 t k i t 检测技术,这些检测工具包括: ( 1 ) v i c e v i c e 主要用来检测w i n d w s 挂钩h 1 ,其功能比较强大,能检测s s d t 钩子、i r p 钩子、导入地址表钩子和内联钩子。v i c e 通过可信任地址范围检查系统内核模块 n t o s k r n l e x e ,从而发现s s d t 钩子,通过检查i r p 函数地址表和对应的模块,看 i r p 函数地址表中的所有地址是否在对应的模块之内,判断是否存在i r p 钩子;通 过检查系统模块或者d l l 中的函数起始字节是否存在无条件跳转指令,发现内联 函数钩子。v i c e 也能检测i d t 钩子。在用户态,v i c e 通过检测用户态应用程序的 地址空间,查找应用程序d l l 中的导入地址表,检测到任何挂钩相关的隐蔽行为。 由于v i c e 能报告系统的所有挂钩函数,而实际上有些挂钩函数并非r 0 0 t k i t , w i n d o w s 自身也在系统中使用了钩子函数,所以v i c e 的误报率较高,对于普通用 户,即使发现了系统中存在挂钩,也难以确定是否该清除掉。 ( 2 ) p a t c h f i n d e r p a t c h f i n d e r 是一款基于执行路径分析的r o o t k i t 检测软件阳1 。如果某个函数 被r 0 0 t k i t 挂钩,从调用挂钩函数和挂钩函数调用原函数的过程中,执行的指令 数将增加,根据这一原理,可以在调用函数执行的过程中进行指令计数旧3 ,根据函 数执行的指令数是否在正常范围内,从而判断是否被挂钩。p a t c h f i n d e r 在进行指 令计数的时候需要处理器单步执行,处理器每执行一条指令,就调用一个支持单 步执行的中断处理例程n 训,该例程会将指令计数加1 。由于函数在执行过程中会有 分支,也就是说一个函数的执行路径不止一条,另一方面,同一个函数在不同的 情况下的指令数也会有变化,这导致指令数的可信任范围很难确定。如果指令数 的可信任范围设置的太小,对于正常的执行过程,可能判断为r o o t k i t 。反之,就 会存在漏检的情况。所以最终只能用一个统计值进行比较,难免发生误判。 5 电子科技大学硕士学位论文 ( 3 ) u n h a c k m e u n h a c k m e 是g r e a t i s 公司的一款专用的r 0 0 t k i t 清理工具,可以清理大部分 简单的r o o t k i t 以及部分顽固的r o o t k i t ,u n h a c k m e 可以设置为后台运行。 u n h a c k m e 由三个独立程序组成的:u n h a c k m e 4 用于检测隐藏的注册表项,进程, 服务,以及驱动程序。采用u n h a c k m e d r v s y s 内核驱动。p a r t i z a n 监视w i n d o w s 启 动进程。r e a n i m a t o r 通过g r e a t is 程序和特征库检测和删除木马、间谍软件、广 告软件。 ( 4 ) i c e s w o r d i c e s w o r d 中文名字叫冰刃,是u s t c 的p j f 开发的一款r 0 0 t k i t 检测清除软件。 相比其他r o o t k i t 检测工具,i c e s w o r d 的功能更加全面,能有效的检测出多种 r o o t k i t 。i c e s w o r d 能查询进程的文件地址、检测隐藏的进程、查询进程的优先级; 结束任意进程、查看进程中的线程、模块信息,结束线程等;能显示当前打开的 包括隐藏的本地端口和相应的程序地址、程序名:能查询到所有已经加载到内核 的各种驱动。包括隐藏的驱动文件;能显示系统中隐藏和没有隐藏的服务,并用 红色显示隐藏的服务。能对服务进行启动,停止,禁用操作。能检测s s d t 表, 查出系统服务是否被挂钩;i c e s w o r d 还能监视线程的创建和终止,将线程创建调 用记录在循环缓冲里,“监视进程终止”记录一个进程被其它进程t e r m i n a t e 的 情况。能检测所有隐藏的注册表键和键值。 ( 5 ) k 1 i s t e r k 1 is t e r 也是一款采用交叉试图的r o o t k it 检测软件3 ,开发者是j o a n n a r u t k o w s k a 。k 1 i s t e r 主要用来检测d k o m 技术隐藏进程和隐藏驱动。对f u 一类的 r o o t k i t 特别有效。k l i s t e r 从线程分派队列中获取真实的进程列表信息,从活动 进程列表或者上层用户调用中获取可能被过滤的进程列表信息,然后对两者加以 比较,如果某个进程在线程分派队列中获取到了,但是在活动进程列表中却没有, 那么这个进程就是被隐藏的进程。 ( 6 ) s d t r e s t o r e s d t r e s t o r e 是一款运行在用户态的专门检查系统服务调度表s s d t 挂钩的 r o o t k i t 检测软件,是由t a nc h e wk o e n g

温馨提示

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

评论

0/150

提交评论