资源预览内容
第1页 / 共75页
第2页 / 共75页
第3页 / 共75页
第4页 / 共75页
第5页 / 共75页
第6页 / 共75页
第7页 / 共75页
第8页 / 共75页
第9页 / 共75页
第10页 / 共75页
亲,该文档总共75页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
硕士学位论文基于错误注入的组件安全性测试研究A Thesis Submitted in Partial Fulfillment of the Requirementsfor the Degree of Master of EngineeringResearch on Security Testing of Software Component Based on Fault InjectionCandidate :Yuan ChanglongMajor :Computer Software and TheorySupervisor :Associate Prof. Xu LipingHuazhong University of Science and TechnologyWuhan 430074, P. R. ChinaJune, 2008独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。保密,在_年解密后适用本授权书。本论文属于不保密。(请在以上方框内打“”)学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日摘 要随着基于组件的软件开发技术的出现,组件特别是第三方组件的使用,大大提高了软件开发的效率。组件技术的基础是存在大量的组件,因此,组件的可靠性和安全性就显得尤为重要。然而有关组件的软件测试技术的研究还相对薄弱,组件的安全性测试更是软件测试理论一个新的研究方向,其理论和技术的研究对于促进组件技术的发展具有重要的理论价值和现实意义。由于不同于传统的软件模块,组件以第三方复用为目的进行开发,多数情况下源代码不可见,对组件尤其是第三方组件只能采用基于“黑盒”的安全性测试方法。在当今黑盒安全性测试领域,错误注入技术作为一种模拟攻击和动态执行分析的有效技术,在软件测评和系统安全性分析方面具有明显的优势。它根据软件代码运行所产生的行为而不是简单地从其结构来研究软件的安全漏洞,这种方法有利于发现那些通过静态结构分析所无法发现的新的潜在安全漏洞来源。SDFI(Static and Dynamic Fault Injection)是一种基于错误注入技术的针对组件特别是第三方组件的安全性测试方法。SDFI建立在安全漏洞分类学研究的基础之上,给出一种组件安全错误注入测试模型FIM(Fault Injection Model)。FIM针对组件运行前和运行时两个不同时机,选择两种不同的错误注入检测方法接口参数错误注入和动态环境错误注入,从而达到有针对性地高效率测试组件安全漏洞的目的。SDFI分别针对接口参数错误注入及动态环境错误注入测试用例“组合爆炸”问题,给出相应的EEC(Exceptional Elements Coverage)和DSW(Division and Sorting by Weight)测试用例约减算法。在研究项目COM组件安全测试系统CSTS(Component Security Testing System)中,设计和实现了自动化错误注入子系统,并使用第三方COM组件进行测试,验证了SDFI的有效性。关键词:组件,错误注入,安全漏洞,接口错误注入,环境错误注入AbstractAlong with the appearance of software development technology based on component, the component, especially the third party component, raised the software development efficiency greatly. Component technology based on massive components, therefore the reliably and security of component are especially significant. However, the component testing is still weak, component security testing is a new research direction of the software testing, its theory and technology will have the important value and practical significance in the promotion of component technologys development.As is different from the traditional software modules, components developed for the third parties reusable purpose, in most cases the source code is not visible, the security testing of component especially the third party component can only be based on the black box methods. In todays black box security testing, fault injection as an effective technology of attack simulation and dynamic analysis has obvious advantages in software evaluation and analysis of system security. From the running behavior rather than simply the structure of software to study security flaws, this approach is conducive to find the new potential security vulnerabilities which cannot be found by static analysis.SDFI (Static and Dynamic Fault Injection) is one kind of component security testing method based on fault injection. On the basis of the research in security vulnerabilities taxonomy, SDFI gave one kind of fault injection model-FIM (Fault Injection Model). Before running and after running, FIM respectively chose different fault injection methods interface parameter fault injection and dynamic environment fault injection, to achieve the purpose of security testing of component vulnerability with high efficiency. For the problem of “Portfolio explosion” caused by interface parameter fault injection and dynamic environment fault injection, SDFI gave the corresponding test-cases reduction algorithms EEC (Exceptional Elements Coverage) and DSW (Division and Sorting by Weight). In the project of COM component security testing system (CSTS), designed and implemented the automated fault injection subsystem, and took the typical third party COM components as testing examples, confirmed the validity of SDFI.Keywords:Component, Fault Injection, Security Vulnerability, Interface Fault Injection, Environment Fault Injection目 录摘 要IAbstractII1绪 论1.1研究背景和意义(1)1.2国内外研究现状(2)1.3研究目标和方法(7)1.4本文的组织结构(7)2组件安全错误注入测试方法2.1组件安全性测试(9)2.2错误注入测试方法(13)2.3基于错误注入的组件安全测试方法(17)2.4本章小结(22)3接口参数错误注入方法3.1接口参数错误注入概念(23)3.2基于Ballista的接口参数错误注入方法(24)3.3本章小结(28)4动态环境错误注入方法4.1动态环境错误注入概念(29)4.2动态环境错误注入关键问题(30)4.3基于EAI模型的动态环境错误注入方法(31)4.4本章小结(40)5CSTS中错误注入子系统实现5.1组件安全测试系统(41)5.2错误注入子系统设计(45)5.3系统实现关键技术(47)5.4本章小结(50)6COM组件测试及效果评估6.1COM组件测试(51)6.2测试效果评估(58)6.3本章小结(60)7结束语7.1本文工作总结(61)7.2后续工作展望(62)致 谢(63)参考文献(64)附录 攻读学位期间参与的科研项目(69)1 绪 论1.1 研究背景和意
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号