毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
ActiveX漏洞挖掘技术研究+文献综述(3)
Fuzzing测试通常以大小相关的部分、字符串、标志字符串开始或结束的二进制块等为重点,使用边界值附近的值对目标进行测试。Fuzzing技术根据应用对象主要可分为三类,一类是文件格式的Fuzzing,主要针对图像格式、文档格式等,一类是协议的Fuzzing,主要针对RPC协议和HTTP协议等,另一类是用于API测试[4]。
2.2 漏洞分析和利用原理
漏洞分析是指在代码中迅速定位漏洞,弄清攻击原理,准确的估计潜在的漏洞利用方式和风险等级的过程。
图2.1 fuzzing通用测试过程
2.2.1 栈溢出
系统栈的功能是用于动态地存储函数之间的调用关系,以保证被调用函数在返回时恢复到母函数中继续执行[5]。一个典型的函数调用栈如图2.2。
图2.2 栈帧结构
栈溢出是一种比较好利用的缓冲区溢出漏洞。 栈溢出的原理就是利用缓冲区溢出(超过了缓冲区的上边界),即往栈生长方向的相反方向生长,那么就有可能覆盖一些关键指针,比如前栈帧指针或者函数返回地址等。此时,程序的运行就会发生异常,比如返回地址的修改将使程序运行跳转到不可预料的地址(如跳转到恶意程序等)[6]。
2.2.2 shellcode
人们用shellcode这个专用术语来通称缓冲区溢出攻击中植入的代码[7]。这段代码可以是出于恶作剧目的的弹出一个消息框,也可以是出于攻击目的的删改重要文件、窃取数据、上传木马病毒并运行,甚至是出于破坏目的的格式化硬盘等。shellcode往往需要用汇编语言编写,并转换成二进制机器码。其内容和长度经常还会受到很多苛刻的限制,故开发和调试的难度很高。
2.2.3 Heap Spraying
传统缓冲区溢出漏洞利用时要求覆盖的返回地址数值是可控的,当这个数值不可控时,该漏洞将无法利用。但在ActiveX控件漏洞利用中,可以没有这个限制,即使覆盖的返回地址是不可控的,如果该数值位于堆内存范围,通过控制堆内存的数据,依旧可以利用该漏洞。
这是通过JavaScript语句申请并填充堆内存空间达到的,所以ActiveX控件漏洞利用技术更加灵活[8]。现在最流行的堆exploit技术是SkyLined为了利用Internet Explorer IFRAME漏洞而开发的堆喷射(heap spraying,本文中采用堆喷射的译法)技术。
图2.3 Heap Spraying前后堆内存变化
Heap Spraying的过程如下:用JavaScript脚本创建了很多个string对象,在string对象中写入一个长长的NOP链以及紧接着NOP链的一小段shellcode。JavaScript runtime会把这些string对象都存储在堆中。在Heap Spraying前后堆内存分布如图2.3所示,由于堆中的数据是不断向内存高地址增长的。在大约分配了200MB的内存给这些string对象之后,在50MB~200MB这段内存中,所用的内存空间都被NOP+shellcode覆盖,如图3所示,Heap Spraying前Call 0x3c0dff7d指令提示Invalid Memory,但Heap Spraying后,0x3c0dff7d指令已经指向NOP链中的一环。执行了Call 0x3c0dff7d后,就能跳到这个NOP链上,最终执行Shellcode[9]。
2.3 本章小结
本章首先介绍了漏洞挖掘原理,然后介绍了漏洞的分析和利用原理,重点说明了栈溢出、shellcode、heap spraying。
3 ActiveX控件漏洞
简述了ActiveX控件及其安全性;介绍了ActiveX控件漏洞挖掘和分析的工具 。
3.1 ActiveX控件及其安全性
ActiveX是微软公司在1996年引进的,它是在组件对象模型(COM)、对象链接和嵌入(OLE)技术的基础上发展而来[10]。COM规范是ActiveX技术的基础,而COM的目的是创建对象和提供接口来实现代码片段的简单复用,而这些接口又能被其他的COM对象或者程序调用,ActiveX就是这项规范与IE的结合。这种结合提供了IE浏览器与第三方软件的接口,使用ActiveX控件可以对IE浏览器进行功能扩展。通过安装相应的ActiveX控件,可以实现在网页上播放Flash动画,在网页上嵌入Excel表格,在网页上提供打印功能,为网络银行的登陆用户名和密码提供安全保护功能等等多种应用。ActiveX控件使IE能够实现许多桌面软件才有的功能。
共4页:
上一页
1
2
3
4
下一页
上一篇:
JAVA电子邮件接收程序的设计与实现
下一篇:
基于移动互联网发展分析的智能手机用户行为特点与手机信息界面研究
Web应用程序漏洞扫描器设计
金融论坛数据挖掘系统的设计与实现
数据挖掘在电子商务中的应用
数据挖掘的主题标绘数据获取技术与实现
数据挖掘技术:企业网络...
大网络环境下的数据挖掘用户的行为挖掘
asp.net+sqlserver数据挖掘的在...
STC89C52单片机NRF24L01的无线病房呼叫系统设计
AES算法GPU协处理下分组加...
浅谈高校行政管理人员的...
上海居民的社会参与研究
压疮高危人群的标准化中...
从政策角度谈黑龙江對俄...
基于Joomla平台的计算机学院网站设计与开发
提高教育质量,构建大學生...
酵母菌发酵生产天然香料...
浅论职工思想政治工作茬...