(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf_第1页
(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf_第2页
(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf_第3页
(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf_第4页
(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机应用技术专业论文)基于cve知识库的危急漏洞挖掘与分析技术研究.pdf.pdf 免费下载

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

文档简介

哙;l ;渡理t 夫举t 学矮l j 学位论文 基于c v e 知识库的危急漏洞挖掘与分析技术研究 摘要 近年来,信息安全技术及相关产品在很多分支领域都已经取褥突破性发 展,但是软件漏洞研究技术的发展仍然相对被动与滞后。与此同时,随着 w i n d o w s 操作系统在全球范围内的流行,基于该系统的软件漏洞层出不 穷,其中以危急级漏漏造成的影响最为严重。因此,牢霾掌握w i n d o w s 危 急级漏洞研究技术,正逐步进入安全研究者们的视野。 危急级漏洞研究技术包括漏洞挖掘与漏洞分析。漏洞挖掘技术是指对未 知漏洞的探索,应用各种技术和工具,尽可能地找嵩软件中的潜在漏洞;漏 洞分析技术是指对已发现漏洞的细节进行深入分析,为漏洞利用、补救等处 理措施作铺挚。灵活掌握危急级漏洞研究技术,我们就能对这些漏洞采取更 加主动合理的处理方式。 然而,传统漏洞研究技术并未体现出其应有的价值和潜力。针对具体漏 洞的挖掘或分析,安全研究者所进行的工作中存在大量的重复内容,同时在 研究效率、效果上也存在相当的缺陷。本文分析了传统漏洞研究技术的基本 原理及存在的缺陷,有针对性地提出了种新的漏洞挖掘及分析技术,以及 该技术在w i n d o w s 2 0 0 0 ,x p 2 0 0 3 平台上工程实现的设计方案,从而较大地 提高了漏洞研究技术的实际应嫣价值。 本文首先从w i n d o w s 危急级漏洞研究的本质出发,全面分析了传统技 术的基本原理之后,总结出漏洞研究的技术难点及存在的缺陷。然后从研究 效率和效果两方葱出发,分别提出对传统漏洞挖掘及分析技术的拓展方法。 本文一方面分析了t c p i p 网络通信共性以及漏洞挖掘核心技术,深入研究 了基于协议屏蔽的漏洞挖掘技术,并给出了相应的漏洞挖掘器在 w i n d o w s 2 0 0 0 x p 2 0 0 3 平台上设计方案;另一方面分析了w i n d o w sp e 文件 结构,同时将图形化思想与漏洞分析相结合,深入研究了基于模式比较的漏 洞分析技术,同时也给出了相应的漏洞分析器在w i n d o w s 2 0 0 0 x p 2 0 0 3 平 台上的设计方案。基于协议屏蔽的漏洞挖掘和基于模式比较的漏洞分析技术 的提出,使得漏洞研究效率和效果得到较大提高,增强了技术的实际应用价 值。 一一 一 哈尔滨理t 人学t 学硕卜学位论文 本文提出的技术及相应的工程实现设计方案为w i n d o w s 危急级漏洞研 究技术的发展提供了新思路。 关键词 漏洞挖掘;漏洞分析;协议屏蔽;模式比较 哙尔滨理丁夫学t 学磺l :学缎论文 r e s e a r c ho nc r i t i c a lv u l n e r a b i l i t ym i n i n ga n d a n a l y z i n gt e c h n o l o g yb a s e do nc v e a b s t r a c t i nr e c e n t y e a r s ,s o m ei n f o r m a t i o ns e c u r i t yt e c h n o l o g i e sa n dr e l e v a n t p r o d u c t sh a v ea l r e a d yo b t a i n e db r e a k t h r o u g hd e v e l o p m e n t ,b u tr e s e a r c h o f t e c h n o l o g yi ns o f t w a r ev u l n e r a b i l i t i e sr e m a i n sp a s s i v ea n dl a g g a r d 。m e a n w h i l e , w i t ht h eg l o b a lp r e v a i lo fw i n d o w s o p e r a t i o ns y s t e m ( o s ) ,v u l n e r a b i l i t i e sb a s e d o nt h i so sa r e e m e r g i n gi ne n d l e s s l y , a n dt h e e f f e c t c a u s e db yc r i t i c a l v u l n e r a b i l i t i e si st h em o s ts e r i o u s 。t h e r e f o r e ,r e s e a r c h i n g t e c h n o l o g y o f w i n d o w sc r i t i c a lv u l n e r a b i l i t yi s g r a d u a l l yc o m i n gi n t ot h ee y e s h o to ft h e s e c u r i t yr e s e a r c h e r s ac r i t i c a lv u l n e r a b i l i t ym e a n si t se x p l o i t a t i o nc o u l da l l o wt h ep r o p a g a t i o no f a ni n t e r n e tw o r n lw i t h o u tu s e ra c t i o n ,a n di ti sc a u s e dd a t ap r o c e s s i n ge r r o ri na s o f t w a r e 。t h em i c r o s o f ts e v e r i t yr a t i n gs y s t e mp r o v i d e sas i n g l er a t i n gf o ra n y v u l n e r a b i l i t y , a n dt h ew o r d c r i t i c a l d e s c r i b e st h em o s ts e r i o u sr a t i n g i fh a c k e r s m a k eu s eo ft h i sv u l n e r a b i l i t ys u c c e s s f u l l y , t h e yc a nt a k ea na t t a c kw i t h o u tt h e s y s t e mu s e r sa t t e n t i o n ,a n dc o n t r o lt h eo sw i t ht h ec u r r e n tu s e r sp e r m i s s i o n t h er e s e a r c h i n gt e c h n o l o g yo fc r i t i c a lv u l n e r a b i l i t yi n c l u d e sv u l n e r a b i l i t y m i n i n ga n dv u l n e r a b i l i t ya n a l y z i n g v u l n e r a b i l i t ym i n i n gt e c h n o l o g ym e a n s s e e k i n gf o ru n k n o w nv u l n e r a b i l i t i e s ,a p p l y i n gv a r i o u sk i n d so ft e c h n o l o g i e sa n d t o o l sf o rp o t e n t i a lv u l n e r a b i l i t i e si ns o f t w a r e 。v u l n e r a b i l i t ya n a l y z i n gt e c h n o l o g y m e a n sd e e pa n a l y s i so nt h ev u l n e r a b i l i t i e sd i s c o v e r e d ,m a k i n gag o o db a s ef o r t h em a n a g e m e n to ft h ev u l n e r a b i l i t i e s m a s t e r i n gt h er e s e a r c h i n gt e c h n o l o g yo f c r i t i c a lv u l n e r a b i l i t yn e a t l y , w ec a nt a k em o r ea c t i v ea n dr e a s o n a b l em e a s u r e so n t h e s ev u l n e r a b i l i t i e s h o w e v e r , t r a d i t i o n a lv u l n e r a b i l i t yr e s e a r c h i n gt e c h n o l o g i e sh a v e n ts h o w n e n o u g hv a l u ea n dp o t e n t i a l 。a b o u tas i n g l ev u l n e r a b i l i t y , t h ew o r kd o n eb y s e c u r i t yr e s e a r c h e r se x i s tm u c hr e p e a tc o n t e n t ,a n dt h ee f f i c i e n c yo re f f e c ta l s o h a ss o m el i m i t a t i o n s ,t h i st e x ta n a l y z e st h eb a s i cp r i n c i p l e sa n dt h el i m i t a t i o n s i i i - 哙尔滨理下大学下学颂l :学位论文 o ft r a d i t i o n a l v u l n e r a b i l i t yr e s e a r c h i n gt e c h n o l o g i e s ,p u t s f o r w a r dan e w v u l n e r a b i l i t ym i n i n ga n dan e wa n a l y z i n gt e c h n o l o g y , a n d a l s o g i v e st h e d e s i g n i n go ft h et e c h n o l o g i e so nw i n d o w s 2 0 0 0 x p 2 0 0 3p l a t f o r m t h i sh a s g r e a t l yi m p r o v e dt h ea c t u a lu s i n gv a l u eo fv u l n e r a b i l i t yr e s e a r c h i n gt e c h n o l o g i e s t h i st e x ts e t so u tf r o mt h ee s s e n c e o fs t u d y i n gw i n d o w sc r i t i c a l v u l n e r a b i l i t y , a f t e rd e e pa n a l y s i s o ft h eb a s i cp r i n c i p l e so ft r a d i t i o n a l t e c h n o l o g i e s ,h a ss u m m a r i z e dt e c h n o l o g i cd i f f i c u l tp o i n t sa n d l i m i t a t i o ne x i s t i n g i nt h el i n ew i t ht h eq u e s t i o no fp u t t i n gf o r w a r da f t e r w a r d s ,s o l v i n gt h et h i n k i n g o ft h eq u e s t i o n ,h a sr e s p e c t i v e l yp r o p o s e da ne x p a n s i o nm e t h o do ft r a d i t i o n a l v u l n e r a b i l i t ym i n i n ga n da n a l y z i n gt e c h n o l o g y 。o no n e h a n dt h i st e x ta n a l y z e s t h ec o m m o n n e s so fc o m m u n i c a t i o nb a s e do nt c p i eh a sd e e p l yr e s e a r c h e dt h e v u l n e r a b i l i t ym i n i n gt e c h n o l o g yb a s e do np r o t o c o ls h i e l d i n g ,a n dg i v e nt h e d e s i g n i n g o ft h e c o r r e s p o n d i n g v u l n e r a b i l i t ym i n i n ga p p a r a t u s o n w i n d o w s 2 0 0 0 x p 2 0 0 3 s t u d y i n gt h es t r u c t u r eo fw i n d o w sp eo nt h eo t h e rh a n d , c o m b i n e sg r a p h i ct h i n k i n gw i t hv u l n e r a b i l i t ya n a l y s i s ,h a sd e e p l yr e s e a r c h e dt h e v u l n e r a b i l i t ya n a l y z i n gt e c h n o l o g yb a s e do np a t t e r nc o m p a r i n g ,a n da l s og i v e n t h ed e s i g n i n go ft h ec o r r e s p o n d i n gv u l n e r a b i l i t ya n a l y z i n ga p p a r a t u s o n w i n d o w s 2 0 0 0 x p 2 0 0 3 t h et e c h n o l o g i e sp r o p o s e da b o v eh a v eg r e a t l yi m p r o v e d t h ee f f i c i e n c y , e f f e c t ,a n dt h ea c t u a lu s i n gv a l u eo fv u l n e r a b i l i t yr e s e a r c h i n g t e c h n o l o g i e s t h et e c h n o l o g i e sa n dt h ec o r r e s p o n d i n gd e s i g n i n gp r o v i d en e wi d e a s f o f r e s e a f c ho fw i n d o w sc r i t i c a lv u l n e r a b i l i t y t h e ya r eb e e nf u r t h e rr e s e a r c h e da t p r e s e n t ,a n dw i l lp l a yam o r ei m p o r t a n tr o l ei nt h ef u t u r ea p p l i c a t i o n s 。 k e y w o r d sv u l n e r a b i l i t ym i n i n g ,v u l n e r a b i l i t ya n a l y z i n g ,p r o t o c o ls h i e l d i n g , p a t t e r nc o m p a r i n g - 哈尔滨理工大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文面向业务中间件的研究与设 计,是本人在导师指导下,在哈尔滨理工大学攻读硕士学位期间独立进行研究 工作所取得的成果。据本人所知,论文中除已注明部分外不包含他人已发表或撰 写过的研究成果。对本文研究工作做出贡献的个人和集体,均已在文中以明确方 式注明。本声明的法律结果将完全由本人承担。 作者签名:袁讧 r 期:_ t 年易月,如 哈尔滨理工大学硕士学位论文使用授权书 面向业务中间件的研究与设计系本人在哈尔滨理工大学攻读硕士学位期 间在导师指导下完成的硕士学位论文。本论文的研究成果归哈尔滨理工大学所 有,本论文的研究内容不得以其它单位的名义发表。本人完全了解哈尔滨理工大 学关于保存、使用学位论文的规定,同意学校保留并向有关部门提交论文和电子 版本,允许论文被查阅和借阅。本人授权哈尔滨理工大学可以采用影印、缩印或 其他复制手段保存论文,可以公布论文的全部或部分内容。 本学位论文属于 保密 不保密 ( 请在以上相应方框内打) 作者签名: 童 孺莎 导师签名着( 1 a 习 口 在年解密后适用授权书。 口 同期沙p r 年弓月,多日 日期: i h l t 年乡月j 日 哈尔滨理t 人学t 学坝i 。学化论义 1 1 引言 第1 章绪论 近些年以来随着网络应用的持续增多,网络蠕虫逐渐成为人们在计算机网 络安全领域中的热门话题,它意味着计算机安全的一大威胁。蠕虫就是能在网 络中自我复制传播,利用操作系统及其支持的软件中存在的各种漏洞,植入计 算机并执行的程序i l l 。近几年针对w i n d o w s 系统的蠕虫层出不穷,造成的影响 十分严重,其中的典型代表是2 0 0 3 年8 月爆发的两次“冲击波 蠕虫,以及 2 0 0 4 年5 月爆发的“震荡波”蠕虫。其中,“冲击波”蠕虫在高峰时期每小时 可感染3 万多个w i n d o w s 系统,估计全球有上百力台计算机受到感染,导致 了巨大的经济损失。类似的蠕虫攻击事件几乎每天都会发生,只是造成的影响 程度有轻重之分。 蠕虫盛行的主要原因在于软件漏洞被黑客所利用。根据美国c e r t 的统 计,从2 0 0 0 年到2 0 0 6 年,每年都新增大量的漏洞报告。2 0 0 3 年漏洞报告总数 为3 7 8 4 ,2 0 0 4 年为3 7 8 0 ,2 0 0 5 年为5 9 9 0 ,而2 0 0 6 年第1 季度也己经达到了 1 5 9 7 1 2 1 。在国内,绿盟科技维护着国内最大、最全面的安全漏洞库,几乎每天 都更新着最近的8 0 0 0 多条漏洞信息。黑客往往在极短时间内就能成功利用这 些漏洞,当人们意识到应该增强安全意识的时候,由这些漏洞产生的蠕虫及其 变种早已泛滥。蠕虫传播的形式也从原来的主动感染,扩展到兼有网页、电子 邮件的多种被动感染形式。 除了利用已知漏洞,有的黑客也善于挖掘并利用一些尚未公布的漏洞,他 们的目的不是将漏洞信息报告给软件开发商,而是发起一些防不胜防病毒攻 击,或者试图以高额的价格将漏洞资料出售,来满足一定的经济目的。0 6 年初 发现的w m f 漏洞,就是在公众毫不知情的情况下展开攻击的,这个漏洞的资 料据说被卖到了4 0 0 0 美元。甚至像i d e f e n s e 和3 c o m 这样的公司也愿意从这 些黑客手中购买包括q q ,m s n ,i e 等几方面未公开发布的漏洞信息。 相比于黑客,安全研究者们在漏洞研究工作的影响方面显得被动和滞后。 多情况下,我们都通过拦截并分析特定的蠕虫及其变种,进而了解黑客所采用 的漏洞利用技术。因此,我们应该加大对漏洞的研究力度,以便对各类漏洞采 取更为主动合理的处理方式。 哈尔滨理t 人学t 学硕卜学位论文 为此,国家高技术发展计划( 8 6 3 ) 的信息安全技术主题主要研究信息安全核 心、关键和共性技术,以形成自主的信息安全防护能力、隐患发现能力、应急 反映能力以及信息对抗能力,为建立国家信息安全保障体系提供技术支撑。作 为隐患发现技术之一的漏洞研究技术,理应受到重视。其研究的内容包括: 1 漏洞挖掘技术 2 漏洞分析技术 1 2w in d o w s 危急级漏洞介绍 1 2 1 漏洞概念 w i n d o w s 危急级漏洞是指软件中由数据处理引起的、无需用户激活便可引 发蠕虫传播的一类安全漏洞纠( 如图1 1 所示) ,这罩的软件包括w i n d o w s 的系 统组件及该系统支持的非开源应用软件。微软安全公告严重性分级系统为每个 漏洞指定了对应的严重等级,主要包括“低等”、“中等”、“重要”、“危急”等 4 个等级。而“危急”代表最严重级别。如果入侵者成功利用这些漏洞,则可 以在系统用户未察觉的情况下发起攻击,并且以当前登录用户权限控制操作系 统。 , 厂黑r 其他漏洞 图l - l 危急漏洞的产生 f i g 1 - 1p r o d u c eo f c r i t i c a lv u l n e r a b i l i t y 危急级漏洞包括堆栈溢出、堆溢出以及文件数据执行漏洞等3 类。其中, 第一次“冲击波”、“震荡波”等蠕虫病毒都是由堆栈溢出漏洞引起;第二次 “冲击波 是堆溢出漏洞引起的;而去年出现的w m f 漏洞则属于第3 类【4 】。 如不加特别说明,下文中涉及的漏洞,均表示w i n d o w s 危急级漏洞。 阶尔滨理t 大学t 学硕t :学位论文 1 2 2 漏洞研究价值 危急级漏洞由于极广的影响范围而具有很高的研究价值。 1 安全防御价值 漏洞研究最直接的价值就是安全防御。如果挖掘出未知漏洞,则可以及时 通知软件开发商发布相应的补丁;对于己知漏洞,深入分析了漏洞细节,我们 就能对针对该漏洞做出除安装补丁以外更加详细的防御策略,如防火墙的高级 配置、特定的系统设置等。 2 技术积累价值 技术积累价值是针对安全研究者而言的。在具体漏洞研究过程中,可能涉 及到大量操作系统底层技术的分析和掌握,以及各类通信协议、文件格式等知 识的研究。因此,每一个成功的漏洞研究过程,都是安全研究技术上的宝贵积 累。 3 特殊执法价值 在我国,漏洞研究还有一个重要的应用价值,就是将漏洞研究成果与国家 安全部门的网络执法项目相结合,以丰富安全部门的网络执法手段。 1 2 3c v e 及漏洞研究现状 c v e 开始建立是在1 9 9 9 年9 月,起初只有3 2 1 个条目。在2 0 0 0 年1 0 月 1 6 同,c v e 达到了一个重要的罩程碑超过1 0 0 0 个正式条目。截至目前 ( 2 0 0 7 年1 2 月) ,c v e 已经达到了2 1 2 5 2 个条目。目前已经有超过2 8 个漏洞 库和工具声明为c v e 兼容。c v e 是合作的成果,数据库由m i t r e 在 w w w c v e m i t r e o r g 上进行维护。资金也是由美国的几个政府机构提供的。国际 c v e 组织是为了寻求国际间安全企业、组织、机构对c v e 研究成果进行统一 命名与解释而形成的一个网络安全漏洞发布组织,由于实际上所起到的巨大的 沟通与规范作用,在国际安全界享有绝对的权威性。 国内c v e 漏洞的研究主要有绿盟科技公司,以及一些科研机构和高校, 其中哈尔滨理工大学计算机学院对c v e 的研究比较全面和深入。国内对c v e 的研究早期所作的工作主要是c v e 标准和条目的汉化工作。现在国内已经建 立起来比较完善的c v e 兼容漏洞描述标准,进一步利用c v e 标准对网络安全 产品漏洞描述部分进行统一和标准化是现阶段研究的一个主要内容。目前绿盟 科技公司维护着最大的中文c v e 漏洞库,并在网上通过w w w n s f o c u s t o m 发 哈尔滨理t 大学t 学硕f :学位论文 布。据统计,绿盟科技2 0 0 7 年共发布c v e 漏洞8 个,累计发布c v e 漏洞达 到3 6 个,其中绝大部分属于严重的安全漏洞,几乎所有的条目都已被厂商确 认漏洞存在并提供了修复方案,使广大用户可以避免受到黑客攻击的危害,用 户能够在c v e 网站上检索到相应的描述及索引信息。绿盟科技作为国内安全 业界发布确切漏洞信息最多的安全企业,在漏洞研究领域做出了自己的成绩。 漏洞的研究分为挖掘与分析两部分。漏洞挖掘技术是指对未知漏洞的探 索,综合应用各种技术和工具,尽可能地找出软件中的潜在漏洞【5 1 1 4 5 ;漏洞分 析技术是指对已发现漏洞的细节深入分析,为漏洞利用、补救等处理措施作铺 垫【5 】2 8 2 。灵活掌握危急级漏洞研究技术,我们就能对这些漏洞采取更加主动、 合理的处理方式。 除了黑客以外,国内外多个安全组织及个人也都从事漏洞的研究。国外 e e y e ,l s d ,w o o w 0 0 等组织对最新的漏洞进行及时跟踪分析,并给出相应的 漏洞解决方案。绿盟科技、启明星辰等单位是国内安全研究组织的代表。绿盟 科技是发布自主研究安全漏洞最多的国内安全公司,己经完成对r p c ,s m b ,i i s 等多类漏洞的研究,并取得了不错的成绩。 然而,从现有的资料上可以看出,这些组织公布的都是一些传统的漏洞研 究技术,而这些技术并没有体现出应有的价值和潜力。针对具体漏洞,安全研 究者进行的工作往往存在大量的重复内容,研究效率和效果上也有相当的局限 性。因此,研究高效、实用的漏洞挖掘与分析技术是本文的重点。 1 3c v e 及知识库介绍 1 3 1c v e 概念 1 c v e 的产生背景最近些年来在全球范围的黑客入侵不断猖獗,信息安 全问题越来越严重。在对抗黑客入侵的安全技术中,实时入侵检测和漏洞扫描 评估( i d n a i n t r u s i o nd e t e c t i o na n da s s e s s m e n t ) 的技术和产品已经开始占 据越来越重要的位置。目前实时入侵检测和漏洞扫描评估基于的主要方法还是 已知入侵手法检测和已知漏洞扫描,换句话说就是基于知识库的技术。可见, 决定一个i d n a 技术和产品的重要标志就是能够检测的入侵种类和漏洞数量。 1 9 9 9 年2 月8 同的i n f o w o r l d 在比较当时i s s 的i n t e m e ts c a n n e r 5 6 和n a i 的 c y b e r c o p 2 5 时有一段描述,“由于没有针对这些扫描器平台的分类标准,直接 比较他们的数据库非常困难。我们找到在i n t e m e ts c a n n e r 和c y b e r c o p 中同一 哈尔滨理t 人学t 学硕i j 学位论文 个漏洞采用了不同的名称 各个厂家在阐述自己产品的水平时,都会声称自己的扫描漏洞数最多,你 说有1 0 0 0 种,我说有5 0 0 0 。我们的用户如何辨别? 不同的厂家在入侵手法和 漏洞这方面的知识库各有千秋,用户如何最大限度地获得所有安全信息? c v e 就是在这样的环境下应运而生的。 2 c v e 概念c v e 的英文全称是“c o m m o nv u l n e r a b i l i t i e s & e x p o s u r e s 公共漏洞和暴露。c v e 和一个字典表很相似,为广泛认同的信息安全漏洞或者 已经暴露出来的弱点给出一个公共的名称。使用一个共同的名字,可以帮助用 户在各自独立的各种漏洞数据库中和漏洞评估工具中共享数据,虽然这些工具 很难整合在一起。这样就使得c v e 成为了安全信息共享的“关键字 。如果在 一个漏洞报告中指明的一个漏洞,如果有c v e 名称,你就可以快速地在任何 其它c v e 兼容的数据库中找到相应修补的信息,解决安全问题。c v e 是合作 的成果,数据库由m i t r e 在w w w c v e m i t r e o r g 上进行维护。资金也是由美国 的几个政府机构提供的。 1 3 2c v e 知识库介绍 目前我们的安全体系的构成,在给定网络的边界上,可能有各种各样的硬 件和软件设备,它们都提供安全服务,并且需要相互协同工作。其中可能的情 况是,路由器由一个厂商提供,防火墙由另外一个厂家提供,而i d s 由第三家 厂家提供。问题是,各个安全构件解释签名的方法会有很大的不同。他们也许 都能够处理相同的已知攻击,但是却赋予攻击不同的名称,并且以不同的方法 来描述攻击的特征。c v e 标准使这些安全设备可以共享关于攻击签名和其他薄 弱点的信息,以方便它们可以一起工作。这罩我们就可以看出制定c v e 标准 的必要性。c v e 使支持他的硬件和安全设备可以从同样的薄弱点数据库提取数 据,这些数据库按照相同的标准格式提供。例如,支持c v e 的扫描器将编译 一份报告。列出系统的薄弱点。同样支持c v e 的i d s 发出警报时,就可以比 较攻击签名和当前薄弱点的报告,查看攻击是否已实际发生( 见下图1 - 2 ) 。 新漏洞挖掘出来之后需要一个描述标准,和一个合理快捷的发布方式。 c v e 知识库能起到描述标准和发布途径的功能。在分析一个已知漏洞的时候需 要关于该漏洞的大量信息,c v e 知识库能够提供丰富的信息在分析漏洞的时候 使用。知识库在分析漏洞的时候起到一个信息源的作用,从而提高漏洞分析的 效率。 哈尔滨理下人学t 学硕i :学位论义 图1 - 2c v e 知识库应用系统结构 f i g 1 - 2a r c h i t e c t u r eo fc v ek n o w l e d g eb a s e 1 4 本文研究内容 研究高效、实用的漏洞挖掘与分析技术是本文的核心内容。本文的主要研 究内容可以概括的如下描述。其中,第2 章在简单介绍3 2 位w i n d o w s 体系结 构的基础上,描述了传统漏洞挖掘与分析技术的基本原理,并且就具体的挖掘 与分析技术分别分析了它们的优缺点;第3 章提出了基于协议屏蔽的漏洞挖掘 技术,并且详细地比较了新挖掘技术和传统挖掘技术的异同,同时就新技术的 原理和优点进行了详细的阐述;第4 章提出了基于协议屏蔽的漏洞挖掘器在 w i n d o w s 2 0 0 0 x p 2 0 0 3 平台上的设计方案,以及挖掘器的应用,并且给出了部 分挖掘器实现方法;第5 章提出了基于模式比较的漏洞分析技术,并且相对旧 有的动态和静态分析技术的不足,突出了模式比较漏洞分析技术的长处。第6 章提出了基于模式比较的漏洞分析器在w i n d o w s 2 0 0 0 x p 2 0 0 3 平台上的设计方 案,以及分析器的应用,同时给出了部分关键技术的实现;最后对本文做了总 结,并对未来做了展望。 哈尔滨理t 人学t 学硕 j 学位论文 第2 章漏洞挖掘与分析技术原理 漏洞的成功研究,实际上是依靠一系列基础的漏洞挖掘及分析技术的综合 支持和运用。而新技术的产生,也就是对这些基础技术提出新的要求。在3 2 位w i n d o w s 平台上,非开源软件在软件种类、数量以及漏洞的影响等几方面 都占绝对优势,因此,本文只针对这类软件进行分析,开源软件的漏洞研究技 术将不作讨论。 2 13 2 位w i n d o w s 体系结构 在w i n d o w s 平台上进行漏洞研究,将涉及到大量的操作系统相关知识。 因此,了解w i n d o w s 体系结构是很有必要的。图2 1 显示了 w i n d o w s 2 0 0 0 x p 2 0 0 3 体系结构简图: 服务进稗w i n 3 2 应用程序 i w i n 3 2 子系统动态链接库 ,i w i n 3 2f - 系统动态链接库 1i 内存、进程、线程、i o - 等 管理 核心体设备驱动程序 硬件抽象层( h a l ) 图2 1w i n d o w s 体系结构简图 f i g 2 - 1a r c h i t e c t u r eo fw i n d o w s 由图2 1 可知,保护模式下3 2 位w i n d o w s 体系结构分为用户态与核心 态。其中,用户态的权限级别为最低的r i n 9 3 级,运行着w i n 3 2 子系统、服务 进程以及其它应用程序;核心态权限级别为最高的r i n 9 0 级,操作系统核心层 哈尔滨理t 大学t 学硕i j 学位论文 和设备驱动程序都运行在这里。 我们进行漏洞研究,对象基本针对运行在用户态的服务进程和应用程序。 例如,t e l n e t 服务、i i s 服务,以及o f f i c e 、i e 和杀毒工具等都属于这一范畴。 2 2 漏洞挖掘技术原理 漏洞挖掘技术的主要目的是尽可能地找出软件中潜在的漏洞,以进行下一 步的漏洞分析。传统的漏洞挖掘技术模型如图2 2 所示: r 一1 i 1 世竺竺一譬用竺r 翌翌竺竺i 一一i 一 2 2 1 静态分析 静态分析技术是指在程序非运行情况下,对软件汇编代码进行分析,以发 现一些潜在的漏洞【6 1 。目前主要的静态分析技术包括有向图分析、污点数据传 播分析、i d c 脚本分析和整数限制分析等。这些技术的应用都有一个共同前 提,就是逆向工程。需要通过特定的逆向平台对软件程序进行反汇编,得到相 应的反汇编文本。实际工作中,常用的反汇编工具包括i d ap r o ,w 3 2 d a s , h v i e w 等。其中,i d ap r o 是目前功能最强大的、具有图形交互界面的反汇编 工具,它能自动识别各种处理器和编译器,分析软件的隐藏功能以及识别无符 哈尔滨理t 人学t 学硕卜学位论文 号的库调用。图2 3 显示了i d a p r o 得到的部分反汇编文本。 图2 - 3i d a p r o 反汇编文本 f i g 2 - 3d i s a s s e m b l i n gt e x tf r o mi d a p r o 1 有向图分析 有向图分析是最直接的一种静态分析技术,实现思路是也很简单。利用 i d ap r o 得到软件的反汇编文本,搜索汇编代码中的c a l l ,r e t 指令,即搜索所 有的函数调用与定义。搜索算法既可以采用广度优先搜索算法,也可以采用深 度优先搜索算法。然后,按照软件逻辑流程构造出函数调用关系图,也就是有 向图,图2 4 显示了一个简单的有向图。每个函数调用,包括那些可疑的字符 串操作函数( 如s t r c p y , s p r i n t f 等) ,都作为有向图的一个节点。每个节点记录着 函数入口地址、分配的堆栈大小、局部变量使用情况、调用者传递的参数、返 回地址等信息。 生成有向图后,对于那些容易引发漏洞的函数调用,判断在调用之前是否 进行了参数边界检测。例如,在s t r c p y 调用之前,判断是否调用了s t r l e n 等函 数来检查字符串参数的长度。 有向图分析的难点源于编译器的优化。诸如s t r c p y ,s p r i n t f 等字符串操作 函数的调用在v c 6 0 及以上版本编译器编译的时候都被硬编码到了软件程序 中。要在汇编代码中找到这些函数调用,必须对函数相关指令进行特征匹配。 以s t r c p y 函数为例,对于v c 6 0 编译器编译生成的汇编代码,必须在代码中以 e c x 为核心同时对三条字符串操作指令进行匹配搜索;而v c 7 0 及以上版本 的编译器由于硬编码代码中使用了相对基址变址寻址方式,简单提取s t r c p y 的 固定特征指令比较困难,必须结合指令语义进行分析,构造函数的特征码,进 哈尔滨理t 大学t 学硕f j 学位论文 行深一步的分析。 ,、 、一 s t r y c p y p r i n t f 2 图2 - 4 简单的有向图 f i g 2 4s i m p l ed i g r a p h 2 污点数据传播分析 污点数据传播分析是挖掘漏洞的另一种静态分析技术,来源于p e r l 中的 “t a i n t i n g ”的机制f 7 l 。与有向图法注重检查可疑函数的调用不同,污点数据传 播分析的思想在于监控所谓的“不可信数据”,即污点数据的传播轨迹。污点 数据通常来源于用户输入,包括命令行参数、图形界面交互数据、文件数据、 网络通信数据以及系统环境变量等几种类型。污点数据传播轨迹并非在软件运 行时对动态数据流的监控,而是在i d ap r o 逆向得到的反汇编文本基础上,静 态分析处理用户输入的那部分汇编代码。将污点数据标记为“m i n t e d “m i n t e d 数据通过程序语句进行传播,任何对“t a i n t e d ”数据的操作( 如添 加,合并,插入等) ,其结果值也是“m i n t e d ”。 针对非开源软件,污点数据传播分析又称为双向数据流分析。所谓双向, 一是从污点数据输入开始,自上而下形成一棵传播树( p r o p a g a t i o nt r e e ) ;二是 从反汇编文本中搜索s t r c p y ,s p r i n t f 可疑函数的调用,然后从这些函数调用的 地方丌始向上回溯,找到两者相交的位置( 可能不存在交点) ,从而产生污染流 路径( t a i n t e df l o wp a t h ) 。分析交点处指令,判断是否进行了污点数据的长度检 查,进而判断漏洞是否存在。当然,双向数据流相交的位置可能不止一处,那 么将产生多条污染流路径。双向数据流分析如图2 5 所示: 显然,由于存在字符串操作函数的搜索,污点数据传播分析仍然受到编译 器优化的影响。另一个难点是完整污点数据传播树的构造。从确定污点数据输 入处开始,到理清所有相关处理代码之间的逻辑关系,加上大量的分支指令, 构造传播树是一个相当复杂的过程。多数情况下,需要人工辅助分析的介入。 哈尔滨理t 火学t 学硕l 学位论文 图2 - 5 双向数据流分析 f i g 2 - 5b o t hw a yd a t as t r e a ma n a l y z e 3 i d c 脚本分析 同样是基于i d ap r o 的静态分析技术,i d c 脚本分析在挖掘漏洞,尤其是 缓冲区溢出漏洞方面相比前两种技术更有效f 8 l 。i d ap r o 除了具有极强的反汇 编和图形交互界面外,还提供了i d c 自动化脚本功能,使得用户可以编写特定 目的的自动话脚本对反汇编数据库内的内容进行处理。 i d c 是简单的脚本语言,语法与c 语言类似。i d c 中变量和类型无关,均 使用a u t o 关键字进行定义。变量使用之前必须定义,所有的c 和c + + 关键字 均保留,不能用作变量名。条件判断语句如i f ,循环控制语句如f o r 等也都和 c 语言类似。i d c 内置了很多函数和预定义的宏,编写i d c 脚本的时候通常需 要在文件开始处加上# i n c l u d e 。常用的内置函数有b e g i n e a ( 获取程 序起始地址) 和f i n d t e x t ( 查找文本) 等。可以在反汇编完成之后运行i d c 脚本, 加载i d c 脚本时i d a p r o 会自动从脚本中的m a i n 函数开始运行。 i d c 漏洞挖掘脚本的编写思想并不复杂。通过f i n d t e x t 函数搜索汇编代码 中的数据输入函数( o nr e a d f i l e ,r e c v 等) 调用,在这些代码地址后面一段小范围 内搜索诸如s t r c p y , s p r i n t 等数据操作函数调用。如果找到,则记录调用者地 一同 一 7 _ 数入 蒯输l 多俑 一污据一 弓 一 一 哈尔滨理t 人学t 学倾f j 学位论义 址,并检查在数据输入函数与字符串操作函数调用之间是否进行了数据长度检 测。如果没有则说明可能存在漏洞。 i d c 脚本分析在理论上可以发现不少简单的漏洞。h a l v a rf l a k e 开发了基 于i d c 的漏洞挖掘脚本工具b u g s c a m ,b u g s c a n ,但受到目前反汇编技术的影 响,这些工具只能找出一些简单错误引发的漏洞。一个改进的方法是加入更多 的可以匹配的模式,以及在反汇编技术允许的范围内完善确定缓冲区大小的算 法。h a l v a rf l a k e 认为静态分析如果想更有效的话,需要一个更为强大的逆向 工程平台,现在i d a p r o 是远远不够的。 4 整数限制分析 整数范围限制是另一种静念分析技术,是指将漏洞挖掘抽象为整数范围分 析的问题1 9 l 。针对非丌源软件,整数范围限制的发掘模型包括汇编代码分析和 建立数学模型。首先是对i d ap r o 得到的汇编代码进行分析,产生整数范围限 制,最后对产生的限制进行分析从而筛选出存在安全漏洞的代码。这里的整数 范围,包括数据缓冲区的分配范围和实际数据的长度范围。 定义数据s 的缓冲区分配长度a ( s ) 的范围为 a ,b 】,实际数据的长度范围 l ( s ) 为【c ,d 】。那么就会出现三种可能的情况: ( 1 ) 如果b d ,判断存在溢出漏洞; ( 3 ) 如果两个范围重叠在一起d b c a ,就不能得出肯定的判断,需要进 一步分析。

温馨提示

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

评论

0/150

提交评论