(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf_第1页
(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf_第2页
(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf_第3页
(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf_第4页
(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf_第5页
已阅读5页,还剩79页未读 继续免费阅读

(计算机应用技术专业论文)rootkit的分类方法和检测技术研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着计算机在各行各业应用的深入和普及,各类社会、经济、政治、国防等 重要信息大量的在计算机中存储和网络中传输,围绕系统安全的研究也成为最热 门的研究方向之一。由于现在的因特网以及操作系统存在很多的安全漏洞,连接 在因特网上的计算机很容易受到各种各样的攻击,其中被广泛使用的一种技术就 是r o o t e r 。当前r o o t 】【i t 检测方法和技术只能判断系统中是否安装某类已知 r o o t l 【i t ,而无法检测其它修改后的已知r o o t e r 和未知r 0 0 t l 【i t 。 本课题研究目标是提出一种检测和分类所有类型r o o t 垴t 的方法。首先深入研 究和分析r o o s t 的攻击原理,对当前r o o t 虹t 进行纵向分类,并提出一个分类和 描述r o o s t 特征的数学模型;然后基于该数学模型,提出一个新型和完善的r o o t e r 检测和分类方法。通过大量实验证明该方法的可行性,并与当前流行的r o o t 虹t 检 测方法进行分析比较,供计算机安全研究人员检测和分析r o o s t 漏洞利用特征。 本论文详细描述检测分析步骤,主要分为文件完整性检测、内核完整性检测及内 核代码段比较等,通过这些步骤可分析出r o o t e r 的漏洞利用特征及类型。本文还 提出如何运用蜜网系统捕获r o o t h t 及攻击行为,分析攻击者编写的各类r o o t l ( i t 的漏洞利用特征,并将特征加入当前的己知r o o t l 【i t 检测工具。本课题研究的技术 路线是使用开源的g p l 工具和其他开源工具软件进行研究,使该方法具有很高的 灵活性和适应性。研究中分析的目标r o o s t 是由蜜网系统捕获的,蜜网系统具有 数据捕获、数据控制和数据分析的特点,可用于记录攻击者安装r o o t 虹t 的信息及 r o o t l ( i t 副本。 本文分为3 个部分,第一部分概述本课题研究中涉及到的基本原理,包括i j n u x 系统的调用机制、可加载内核模块l k m 机制及r o o s t 的攻击原理,并分析当前 r 0 0 t 虹t 检测方法和防御技术的特点。当前方法包括检测r o o t h t 的g p l i 具及维护系 统完整性的g p l 程序和作为潜在方法的黑盒分析技术。第二部分是本文的主体部 分,介绍描述r o o s t 的数学模型,之后详细阐述基于该数学模型的新检测方法细 节,它是我们检测和分类r o o s t 的核心,然后提出使用蜜网系统捕获和检测新型 未知r o o t k i t 方法。本文的结论部分对全文的工作进行了总结,并给出下一步研究 方向。 关键词:r o o t t ,蜜网,系统调用,漏洞利用 a b s t ra c t w i t ht h ed e v e l o p m e n to fc o m p u t e rt e c h n o l o g yw i d e l ya p p l i e di ne v e r yw a l ko f l i f e , a nk i n d so fi m p o r t a n ti n f o r m a t i o n 舡es t o r e di nc o m p u t e ra n dt r a n s p o r t e dt h r o u g h i n t e r a c t s or e s e a r c ho nc o m p u t e rs e c u d t yi so n eo ft h ep o p e , s tf i e l d s a st h e r ea r es o m a n yv u l n e r a b i l i t i e se x i s ti nm o d e r nc o m p u t e ro p e r a t i n gs y s t e ma n dh t e r n e t , t h e c o m p u t e r sc o n n e c t e dt oi n t e r a c ta l ep r o n et ob ea t t a c k e db ym a n yt e c h n i q u e s o n eo f t h em o s tp o p u h ra t t a c kt e c h n i q u e si sr o o t l 【i t t h eo b j f e c t i v eo fo u rr e s e a r c hw a st od e v e l o pam e t h o d o l o g yf o rd e t e c t i n ga n d c l a s s i f y i n gr o o t k i te x p l o i t s t h e r ei s 1 3 0s t a n d a r d i z e dm e t h o d o l o g ya t p r e s e n t t o c h a r a c t e r i z er o o t k i t s t h a tc o m p r o m i s et h es e c u r i t yo fc o m p u t e rs y s t e m s f i r s t ,w e l u c u b r a t e da n da n a l y z e dt h ef u n d a m e n t a la r a c kp r i n c i p l e so fr o o t k i ta n dc l a s s i f i e d r o o t k i t s l e n g t h w a y s t h e n w e p r e s e n t e d am a t h e m a t i c a lf r a m e w o r kt od e f i n e r o o t k i t s b a s e do nt h i sf r a m e w o r kw ep r e s e n t e daf o r m a lm e t h o d o l o g yt od e t e c ta n d c h a r a c t e r i z er o o t k i te x p l o i t s t h r o u g hm a n y e x p e r i m e n t s ,w ev a l i d a t e dt h ef e a s i b i l i t yo f t h i sm e t h o d w ec o m p a r e dt h ee r a r e n td e t e c t i o nm e t h o dt oo u rm e t h o di no r d e rt or e v e a l t h ea d v a n t a g eo fo r rm e t h o d t h eg o a lo fo u rm e t h o d o l o g yw a st op r o v i d en e t w o r k s y s t e ma d m i n i s t r a t o r s ,n e t w o r ks e c u r i t yp e r s o n n e l ,a n ds e c u r i t yr e s e a r c h e r s w i t h t e c h n i q u e st od e t e r m i n ei far o o t k i th a sb e e ni n s t a l l e do nt h e i rs y s t e m sa n dt ob ea b l et o c l a s s i f yt h e s er o o t k i t sa se x i s t i n g , m o d i f i c a t i o nt oe x i s t i n g ,o re n t i r e l yn e w t h i sp a p e r i n t r o d u c e dt h es t e p so fo u rm e t h o di nd e t a i l s ,i n c l u d i n gf i l ei n t e g r i t yc h e c k , k e r n e l i n t e g r i t yc h e c k , k e r n e lt e x tc o m p a r e ,e t e t h i sr e s e a r c ha l s op r e s e n tu s i n gb o n e y n e tt o c a p t u r ec o p yo fr o o t k i t sw h i c ht h ea t t a c k e ri n s t a l l e do nt h et a r g e ts y s t e m t h r o u g ht h e i n f o r m a t i o na b o u tt h ea t t a c k e r sa c t i v i t i e st h a th o n e y n e tc a p t u r e d ,i tc o u l dh e l pu st o a n a l y s et h es i g n a t u r eo fr o o t l d t s ,t h e na d dt h e s es i g n a t u r et ok n o w nr o o t l d t sd e t e c t i o n p r o g r a m s t h et e c l m o - p a t ho ft h i sr e s e a r c hi su s i n gg p lt o o l sw h i c ha l eo p e ns o u r c e a n di m p r o v et h ef l e x i b i l i t ya n da d a p t a b i l i t yo fo u rm e t h o d t h er e s e a r c ht a r g e tr o o t k i t s a r ec a p t u r e db yh o n e y n e tt h r o u g hi t sc h a r a c t e r i s t i cw h i c ha r ed a t a - c a p t u r e ,d a t a - c o n t r o l a n dd a m - a n a l y s i s t h i st h e s i sc o n t a i n st h r e ep a r t s t h ef i r s to n es u m m a r i z e dt h ef u n d a m e n t a l p r i n c i p l e si n v o l v e di nr o o t k i t , s u c ha ss y s t e m c a l lm e c h a n i s mo fl i n u x ,l o a d a b l ek e r n e l m o d u l em e c h a n i s ma n dd e m e n t so fr o o t k i t s d e e pa n a l y z i n gt h ec u r r e n tr o o t l 【i t d e t e c t i o nm e t h o d o l o g y , i n d u d i n gc h e c k i n gr o o t k i t su s i n ge x i s t i n gg p l t o o l s ,c h e c k i n g r o o t l d t su s i n gb l a c k b o xa n a l y s i se t c s e c o n dp a r ti st h ep r i n c i p a lp a r to ft h i st h e s i s 舷p a r tp r e s e n t e dt h e m a t h e m a t i c a lf r a m e w o r kt h a td e f i n i n gr o o t k i t s t h e ni t i n t r o d u c e do u rm e t h o l o g yi nd e t a i l sw h i c hi st h ek e r n e lo fo u rr e s e a r c h f i n a l l yw e p r e s e n t e du s i gh o n e y n e tt oc a p t u r er o o t k i t sa n dc h a r a c t e r i z e di t se x p l o i ts i g n a t u r e i nt h ec o n c l u s i o ns e c t i o n , t h ea u t h o rs u m m a r i z e st h ec o n t r i b u t i o ni nt h i st h e s i sa n d p o i n to u tt h a tt h ed e v e l o p m e n to ft h i sr e s e a r c ha c h i e v e st h ea n t i c i p a t i v eg o a la n dp u t s f o r w a r d st h ed i r e c t i o no ff u t u r er e s e a r c h k e yw o r d s :r o o t k i t ,h o n e y n e t , s y s t e mc a l l ,e x p l o i t 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:牛日期:2 。7 年岁月3 1 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:律导师签名:銮塞l 醐咄1 耵月;1 日 第一章引言 1 1r 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 检测技术和检测方法只能判断系统中是否安装某类已知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 和修改后的已知 r o o t k i t 。本课题还包括通过搭建蜜网系统来检测r 0 0 t l ( i t ,分析攻击者编写的各类 r o o t k i t 的漏洞利用特征,其目的是提供给计算机安全人员一种识别和分析r o o k i t 类型的方法。 1 2r o o t k i t 的定义 r o o t k i t 是计算机安全领域的一个术语,来自r o o t 和妞两个单词的组合,其 中r o o t 是u n i x 系统中超级用户的名称,拥有系统的最高权限;k i t 则是工具套件 的意思。目前r o o k i t 还没有权威的中文翻译,因此在本论文中,为了信息的准确 性,使用英文r o o t k i t 。维基百科( w i k i p e d i a ) 中关于r o o t k i t 的定义如下【1 l :“r o o t k i t 是攻击者在入侵系统后用来保持对系统的超级用户访问权限,创建后门和隐藏攻 击痕迹等常采用的一种技术。r o o t k i t 存在于l i n u x 、s o l a r i s 和w i n d o w s 等各种操 作系统上。” 电子科技大学硕士学位论文 1 3r o o t k i t 的发展历史 文献记载的最早的r o o t k i t 出现在1 9 9 4 年,主要攻击u n i x 操作系统,特别是 s u n o s4 x 【2 j 。那时的r o o t k i t 主要替换i o 凼等系统工具,方便用户再次登陆系统。 记录最早的l i n u xr o o t k i t 出现在1 9 9 4 年1 0 月1 2 】。它主要替换l o g i n , p s 和n e t s t a t 等系统 工具,可以隐藏网络连接和进程。l i n u x 上的内核级r o o t k i t 最早出现在1 9 9 7 年【3 l , 从那以后,内核级r o o t k i t 常用的方法是用可加载内核模块来替换系统调用。一个 已知的w i n d o w s 平台上的r o o t k i t 是w w w r o o t k i t c o m 网站的创始人g r e g h o g l u n d 在 1 9 9 9 年发布的n t r o o t k i t l 4 ,它可以隐藏注册表项和重定向可执行程序。现在,几 乎所有的操作系统( 包括l i n u x ,h i u ) ( ,b s d ,s o l a r i s ,和a i x 等) 都受至l j r o o t k i t 的攻击。由于l i n u x 的开源和广泛使用,使得它成为r o o t k i t 攻击的主要目标。r o o t k i t 的攻击方法也越来越高明,从刚开始的替换系统库和系统工具文件,深入到攻击 操作系统内核。本文的研究主要针对l i n u x 系统,但是很多成果也可以应用到其它 的系统上。表1 1 是一些已知r o o t k i t 的列表。 表1 - 1 已知r o o t l d t 歹l j 表 0 1 i i n n xr o o tk i tn r k ) 0 2 s o l a r i sr o o t k i t 0 3 f r e e b s dr o o t k i t 0 4 t o m ( a n dv a r i a n t s ) 0 5 a m b i e n t sr o o t k i t 0 6 r a h l e nw o r m 0 7 r h 6 7 1 - s h a p e r 0 8 r s h a 0 9 r o m a n i a nr o o t k i t 1 0 r k l 71 1 u o nw o l l n1 2 a d o r ew j r m 1 3 l p dw o r m 1 4 k e n n v - r k 1 5 a d o r el k m 1 6 s h i t cw o m 1 7 o m e g aw o r m 1 8 w j i m k i tw b m 1 9 m a n i a c - r k2 0 d s c r o o t k i t2 1 d u c o c ir o o t k i t 2 2 x cw e i i t i i2 3 r s t bt r o j a n 2 4 d u a r a w k z 2 5 k n a r kl 团2 6 m o n k i t 2 7 h i d r o o t k i t 2 8 b o b k i t2 9 p i z d a k i t3 0 t o mv 8 0 3 1 s h o w t e e 3 2 o p t i c k i t 3 3 t r k 3 4 m i t h r a sr o o t k i t 3 5 g e o r g e 3 6 s u c k l t 3 7 s c a l p e r3 8 s l a p p e r a 。b ca n dd3 9 o p e n b s dr kv 1 4 0 i l l o g i cr o o t k i t 4 1 s kr o o t k i t4 2 s e b e kl k m 4 3 r o m a n i a nr o o t k i t4 4 l o cr o o t k i t4 5 s h y 4r o o t k i t 4 6 a q u m i c ar o o t k i t 4 7 z kr o o t k i t 4 8 5 5 8 0 8 a w o n i l 4 9 t c 2w o r m5 0 v o l cr o o t k i t 5 1 g o l d 2r o o t k i t 1 4r o o t k i t 的功能 r o o t l d 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 口令、打补丁、改变系统配置等,攻击者也能通过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 来隐藏自己。 为攻击者进行其它非法活动提供跳板,例如利用被控主机向网络上的其它 机器传播病毒,发送垃圾邮件,进行分布式拒绝服务攻击等。 1 5r o o t k i t 的类型 r o o t k i t 可以被看作为“木马”被植入操作系统中,根据佣的描述,共分为4 类:简单伪装、直接伪装、相似伪装和环境伪装。简单伪装类不伪装为现有程序, 而是伪装为系统中可能存在的程序,它不更改系统中任何文件,应用程序级r o o t k i t 属于这一类;直接伪装类直接将自身伪装成正常程序,系统工具级r o o t m 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 通过修改或替换系统现有的二 进制程序和系统工具,不但能够使系统存在后门连接并且隐藏攻击者在系统中的 存在【6 】,内核级r o o t k i t 修改系统底层核心来隐藏与r o o t k i t 相关的文件、进程等 信息。 1 5 1 应用程序级r o o t k i t 电子科技大学硕士学位论文 应用程序级r o o t k i t 是指入侵到操作系统应用程序层的r o o k i t ,通常是指攻击者 安装于目标系统的额外恶意程序,提供黑客再次以超级用户权限访问系统的功能。 应用程序级r o o t l d t 可通过多种途径安装于目标系统,攻击者可试图欺骗用户 安装应用程序级r o o t k i t ,但它不能提供给攻击者系统管理员权限,它只能使攻击 者获得安装该应用程序级r o o t k i t 的用户权限,而不一定是超级用户权限。攻击者 可先通过安装具有超级用户权限的后门程序,之后再安装一个应用程序级r o o t k i t 。 这个后门程序通常在系统后台以超级用户的权限或系统权限运行【6 加】,它不替换 目标机器上现有的任何程序,而只是额外安装在目标机器上的程序。如果攻击者 只在目标机器上安装额外程序,那么与它相关的输出则是系统管理员唯一不能信 任的部分,而目标机器上的所有其他程序及其输出都可以被管理员所信任。然而, 最初能够被攻击者利用安装后门的漏洞仍然存在于目标机器上。一些攻击者为防 止其他攻击者侵入目标机器,为该系统打补丁程序。图1 - 1 是感染应用程序级r o o t k i t 的系统可信任级别。 图1 1 感染应用程序级r o o t k i t 的系统可信任级别 图1 - 1 说明应用程序级r o o t k i t 是目标系统唯一不能够被信任的部分,这类程序 能够被安装于操作系统中的多数系统工具检测,包括监视系统进程,卸u d p 端口、 c p u 利用率的监视工具。典型程序包括微软操作系统中的w i n d o w s 任务管理器,及 l i n u x 操作系统中的用于列出文件目录m ) 、进程0 s ) 和c p u 利用率( t o p ) 的工具。 需要注意的是首先必须能够确保信任这些系统工具集及通过系统内核来检测 应用程序级r o o t l d t 的系统工具程序。如果系统工具或内核已被修改来隐藏应用程 序级r o o t k i t ,那么必须采取其他检测方法。例如b a c ko f f i c e 2 0 0 0 ( b 0 2 k ) 和s u b 7 属 于这种类型,它们能够影响微软w i n d o w s 操作系统。另一个实例是b l a s t e r ,它能攻 击目标操作系统,在端1 3 4 4 4 4 建立t c p 连接,提供系统管理员权限给任何一个对 第一章引言 t c p 端n 4 4 4 4 的连接用户。任何一个通过后f - 】t c p u d p 连接恶意程序,都可被看 作为一个应用程序级r o o t l d t 。即使在本文中讨论的操作系统是l i n u x ,但这也同样 适用于微软的w i n d o w s 操作系统。 1 5 2 系统工具级r o o t k i t 系统工具级r o o t k i t 是公认的传统r o o t k i t ,是指入侵到操作系统工具层的 r o o k i t ,它通常替换或修改一些系统工具,比如b i n l o g i n ,b i n p s 等,它们通常用来 从系统中提取信息,比如运行的进程,文件系统的内容,网络连接状态等。r o o t k i t 替换这些系统工具主要有两个目的:重新获得超级用户访问权限和隐藏攻击痕迹。 常见的替换对象和相应的功能如下: i s ,f i n d ,d u , l o c a t e ,s y n c , l s o f :隐藏文件和目录 p s ,p s t r c c ,t o p ,k i l l a u , p i d o f :隐藏进程 n e t s t a t ,t c p d ,r o u t e , a l p :隐藏网络连接 i f c o n f i g :隐藏网卡的p r o m i s c 状态( 表示网络处于被监控状态) l o g i n :提供后门供攻击者再次以超级用户访问权限进入系统 s s h d , t e l n e t d , 卸d ,s m b d ,r p c m o u n t d :为各种网络连接提供后门 s y s l o g d :过滤系统日志 系统工具级r o o t i d t 还可能包括一些其它的工具和信息收集程序来执行攻击 任务。比如安装网络嗅探器( s n i f f e r ) 来获取一些敏感信息。攻击者为修改这些系统 工具,需要获得这些系统工具的源文件,而对于开源系统( 例如l i n u x ,o p e n b s d , o p e n s o l a r i s 和f r c e b s d 等) 来说,它们是可免费获得的。 由于系统工具级r o o t l d t 修改或替换系统工具,因此这些系统工具输出的结果 不再可信,管理员不能用系统工具输出的信息来检测系统工具级r o o t l d t 。当前检 测系统工具级r o o t k i t 的方法主要是文件完整性检测方法:在安装系统后,初始化 系统文件的各种信息( 比如校验和,最后修改时间,签名( s i g n a t u r e ) 等) ,检测时把 文件的当前信息跟这些保存的基准信息进行比较,若不匹配则表示相应的文件被 修改。常见的文件完整性检查工具有t r i 州h 【7 ,8 1 和a i d e 9 1 等。编程经验丰富的攻 击者能针对开源的操作系统编写系统工具级r o o t k i t ,实现比较容易,但攻击者必 须拥有对系统标准二进制文件的访问权限来修改系统应用程序。图1 2 是感染系统 工具级r o o t m t 的系统可信任级别。 电子科技大学硕士学位论文 黢鬟瀚 不可信因素 图1 - 2 感染系统工具级r o o t k i t 的系统可信任级别 图1 2 说明系统工具级r o o t k i t 能够使系统中所有系统工具都不可信,而且不可 被系统工具所检测,因为其文件可能被攻击者的r o o t k i t 所替换。比如监视系统进 程、t c p u d p 端口、c p u 占有率的系统工具会提供错误或误导性的信息。因此需 要采用其他方法检测。当前检测这类r o o t k i t 的方法包括密码校验分析和利用一个 装有干净系统的启动硬盘检测,这些方法能帮助我们分析系统是否被某类系统工 具级r o o t k i t 所感染。然而多数情况下,它们都不能指出目标系统究竟感染了哪类 系统应用程序级r o o t l d t 。典型的系统工具级r o o t k i t 是l i n u xr o o t k i t ( k k ) 4 ,5 ,6 、t o m r o o t k i t 、l i o n 蠕虫,而针对这类r o o t k i t 的检测方法十分有限,因为攻击者可通过非 默认安装逃避它们。 1 5 3 内核级r o o t k i t 内核级r o o t l d t 是计算机系统安全领域最近出现的一种攻击方法。操作系统内 核处在整个操作系统的最底层,被认为是目前多数操作系统中最基本的部分【1 l 】, 文件系统、进程调度、存储管理和系统调用等都是在操作系统内核中实现。内核 级r o o t k i t 是指入侵到操作系统内核层的r o o t l d t ,与传统的修改关键系统工具的 r o o t k i t 不同的是,内核级r o o t k i t 通常会修改最底层的操作系统内核,比如中断处 理函数,系统调用,文件系统等。由于操作系统内核在操作系统的最底层,如果 内核受至l j r o o t k i t 攻击,应用层的程序从内核获得的信息将不可信。虽然内核级 r o o t k i t 可以不修改系统工具,但是系统工具都需要通过系统调用从内核获取信息, 而内核提供的信息不可靠,因此系统工具( 比如l s ,p s ,n o t s t a 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 的破坏性更大,而且它能逃避任何应 用层的检测,预防和检测的难度更大,是本文的研究重点。图1 - 3 是感染内核级 r o o t k i t 系统的可信任级别。 图1 3 感染内核级r o o t k i t 系统可信任级别 图1 3 说明内核级r o o t k i t 程序能够使所有来自内核输出都不可信赖,因此无法 通过系统工具检测。此外,由于无法信任来自目标操作系统的内核数据,所以需 要另一种方法来检测这类r o o t k i t 。内核级r o o t k i t 的各种类型将在第二章中详细介 绍。 1 6r o o t k i t 的攻击过程 为对r o o t m t 的攻击有个更清晰的了解, 1 2 l 中详细讲述攻击者攻击系统的全过 程。 收集目标系统信息 攻击者在攻击某个系统之前,需要知道目标系统有哪些漏洞,使用什么操作 系统,有哪些帐号等。 获得超级用户访问权限 攻击者在收集了目标系统的足够信息,检测到了目标系统的漏洞后,就会对 目标系统发起攻击。在这一阶段,攻击者需要获得目标系统的超级用户访问权限。 他可能先获得普通用户访问权限,然后再利用目标系统的本地漏洞提高到超级用 户访问权限。另一种更好的方式是直接利用f 印矛i j t e i n e t 等网络服务的漏洞获得超级 用户访问权限。 电子科技大学硕士学位论文 在目标系统上安装r o o t k i t 攻击者在获得超级用户访问权限后,攻击者就可以在目标系统上安装r o o t k i t , 来隐藏攻击行为,创建各种后门。 控制目标系统 攻击者在目标系统上安装r o o t k i t 后,就可以持久的控制目标系统,对其进行 各种攻击,而且不被目标系统的管理员察觉。例如:利用目标系统攻击其它系统, 使目标系统拒绝提供某些服务等等。 1 7 本文的组织 第一章引言主要叙述r o o t l d t 检测研究的相关背景。 第二章概述本研究中涉及的基本原理,包括l i m l x 系统的调用机制、可加载内 核模块l k m 机制及r o o t k i t 的攻击原理。 第三章是对r o o t k i t 现有检测方法和防御技术的概述。我们测试了检测r o o t k i t 的g p l i 具及维护系统完整性的g p 曜序和作为潜在方法的黑盒分析技术。 第四章详细阐述新检测方法的细节,它是检测和分类r o o t k i t 的核心。这里包 含了一个对r o o t l 【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 进行分析,得到特征可用于检测基于该 类的一系列r o o t l d t 。 第七章整个论文进行总结,并给出了下一步研究主题。 第二章r o o t l d t 相关原理分析 第二章r o o t k i t 相关原理分析 本章重点阐述和分析l i n u x i 匈核中跟r o o t k i t 相关的基本原理,主要包括l i n u x 的系统调用机制、可加载内核模块l k m 机制及r o o t 虹t 的攻击原理。 2 1l i n u x 系统调用机制 2 1 1 什么是系统调用 系统调用是操作系统内核向应用程序提供的操作硬件设备、请求内核服务的 接口。系统调用接口位于用户态与核心态之间,应用程序通过系统调用向操作系 统内核请求服务,操作系统内核完成服务后将结果返回给应用程序。 2 1 2 系统调用的作用 系统调用在l i n u x 系统中发挥着巨大的作用,如果没有系统调用,那么应用程 序就失去了内核的支持。我们在编程时用到的很多函数,如f o r k 、o p e n 等这些函数 最终都是在系统调用里实现的,比如有这样一个程序: # i n c l u d e # i n c l u d e i n tm a i n 0 f o r k o ; e x i t ( o ) ; ) 这里用到了两个函数,即f o r k 和e x i t ,这两个函数都是曲b c 中的库函数,但是 如果跟踪函数的执行过程,看看出i b c 对f o r k 和c x i t 函数的实现就可以发现在g l i b c 的 实现代码里都是采用软中断的方式陷入到内核中再通过系统调用函数实现的。 由此可见,系统调用提供了一种访问核心的机制,这种机制提高了系统的安 全性,保证了应用程序的可移植性【1 3 l 。 电子科技大学硕士学位论文 2 1 3 系统调用的实现机制 在详细讲述系统调用实现机制之前先介绍一下l i n u x 系统的一些保护机制。 x 8 6 c p u 在保护模式下提供了四个特权级别,目前l i n u x 只用到了其中的两个 特权级别,分别为“特权级0 ”和“特权级3 ”,特权级0 也就是通常所讲的内核 模式,特权级3 也就是通常所讲的用户模式。划分这两个级别主要是对系统提供 保护。内核模式可以执行一些特权指令和进入用户模式,而用户模式则不能。 这里特别提出的是,内核模式与用户模式分别使用自己的堆栈,当发生模式 切换的时候同时要进行堆栈的切换。 每个进程都有自己的地址空间( 也称为进程空间) ,进程的地址空间也分为两 部分:用户空间和系统空间,在用户模式下只能访问进程的用户空间,在内核模 式下则可以访问进程的全部地址空间,这个地址空间里的地址是一个逻辑地址, 通过系统段页式的管理机制,访问的实际内存要傲二级地址转换,即:逻辑地址 一线性地址一物理地址。 系统调用对于内核来说就相当于执行函数,处理系统调用的关键问题是从用 户模式到内核模式的转换、堆栈的切换以及参数的传递。 在l i n u x 2 6 中,有两种实现系统调用的方式:中断方式和 s y s e n r e r s y s e x l t 指令方式。下面分别对这两种实现方式进行分析: 2 1 3 1 中断方式实现系统调用 l i n u x 操作系统可以利用软中断机制实现系统调用,对于x 8 6 结构,与系统调用 对应的中断号为0 】【8 0 ,用户程序通过调用i n to x 8 0 中断指令陷入核心,操作系统核 心执行中断服务例程,调用用户请求的系统调用处理函数,并将结果返回给用户 程序。下面将结合l i n u x2 6 1 5 内核的源代码对这个实现机制迸行分析。 2 1 3 1 1 系统调用宏 用户空间的函数陋常为库函数g l i b c ) 使用系统调用宏,进行系统调用的格式转 换和参数传递,系统调用宏在i n c l u d e a s m i 3 8 6 u n i s t d h 中定义,形式为: _ s y s c a l l n ( t y p e ,n a l l l e ,x ) n 是系统调用所需的参数数目,取值范围为0 到6 。s y s e a l l n 0 第一个参数说明响 应函数返回值的类型,第二个参数为系统调用的名称( 即n a m e ) ,其余的参数依 次为系统调用参数的类型和名称。 例如,带一个参数的系统调用宏为: 第二章r o o t l d t 相关原理分析 # d e f i n e _ s y s c a l l l ( t y p e ,n a m e ,t y p e l ,a r 9 1 ) t y p en a m e ( t y p e la r 9 1 ) | l o n g _ _ r e s ;| a 锄v o l a t i l ec i n t $ 0 】【8 0 ”、 :”- - a ”l j 髓) :”0 ”( n r # # n a m e ) , b ”( ( 1 0 n g ) ( a r 9 1 ) ) :”m e m o r y ”) ; _ _ s y s c a l l _ r e t u r n ( t y p e , r e s ) ;| 系统调用宏通过i n t0 】【8 0 软中断触发系统调用。当发生调用时,函数中的n a m e 会被系统调用号所代替。 函数的参数压栈顺序如下: 参数参数在堆栈的位置传递参数的寄存器 a r g l0 0 ( e s p ) e b x a r 9 20 4 ( e s p ) e c x a r 9 30 8 ( e s p ) e d x a r 9 40 c ( e

温馨提示

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

评论

0/150

提交评论