基于动态污点分析的状态协议实现软件模糊测试方法分析-analysis of software fuzzy test method based on dynamic taint analysis for state protocol implementation.docxVIP

  • 9
  • 0
  • 约4.41万字
  • 约 61页
  • 2018-05-18 发布于上海
  • 举报

基于动态污点分析的状态协议实现软件模糊测试方法分析-analysis of software fuzzy test method based on dynamic taint analysis for state protocol implementation.docx

基于动态污点分析的状态协议实现软件模糊测试方法分析-analysis of software fuzzy test method based on dynamic taint analysis for state protocol implementation

摘要模糊测试(Fuzzing)是目前对软件进行安全测试和漏洞发掘的最有效方法之一,如何利用模糊测试技术构建高效、准确和高覆盖率的安全测试系统是相关究领域和业界所关注的关键问题和研究热点。本文针对传统模糊测试方法所存在的测试用例生成盲目性高、测试执行效率较低以及对状态网络协议支持不够等问题,研究如何通过动态污点分析技术使得模糊测试方法可更加高效地应用于状态网络协议实现软件的安全测试中。本文的主要工作包括:首先,基于动态污点分析技术,提出了启发式测试用例生成方法。该方法利用动态污点分析技术跟踪程序对不可信数据的处理,通过监视程序中可疑的错误点来追踪输入网络报文中潜在的攻击点,并以此作为模糊测试用例生成的启发式信息。基于动态污点分析的启发式测试用例生成可在一定程度上降低测试用例生成的盲目性,提高了模糊测试的效率和有效性。其次,针对目前多数安全测试对具有复杂状态网络协议支持的不足,提出面向状态协议的模糊测试框架。该框架使用状态机刻画状态协议,设计并实现了易扩展的状态协议描述脚本语言,能够生成高覆盖的状态协议测试用例。同时,使用基于异常元素库的测试用例变异技术,结合动态污点分析结果,启发式地变异生成畸形测试用例。最后,设计并实现了基于动态污点分析的状态协议模糊测试系统SmartFuzzer,能够有效的发掘出典型商业软件目标程序中潜在的漏洞信息。通过与其他模糊测试器的比较,SmartFuzzer的用例生成更加具有针对性,对软件漏洞的发掘更加准确和高效。主题词:软件安全测试,漏洞发掘,模糊测试,状态协议,动态污点分析ABSTRACTFuzzingiscurrentlyoneofthemostpowerfultestingmethodologieswidelyusedintheareaofsoftwaresecuritytestingandvulnerabilitymining.Buildingefficientandprecisesecuritytestingsystemwithhigh-coverageisthekeypointandhotareaforbothresearchandindustry.However,thetraditionalfuzzingtechniquehastheweaknessofblindgenerationoftestingcases,lowperformanceinexecutionefficiencyandinsufficientsupportforstatefulnetworkprotocols.Aimedataboveissues,thisthesisstudieshowtoapplythetechniqueofdynamictaintanalysistothefuzzingofstatefulnetworkprotocolimplementationsefficiently.Ourworkincludes:Firstly,theapproachofheuristictestcasegeneratingbasedondynamictaintanalysis(DTA)isproposed.DTAisusedtotracehowtheprogramprocessesuntrustworthydata,andthenminethepotentialattackingpointsinthetestcasesbymonitoringpotentialerrorpointsintheprogram.Themethodtreatthepotentialattackingpointsasheuristicinformationinthegenerationoftestingcasesandgreatlyreducetheblindnessintestcasegenerationwithhighertestingperformance.Secondly,wepresentanewfuzzingframeworkorientedtothesecuritytestingofcomplexstatefulprotocolswhichisunsatisfactorilysupportedbymosttesting.Ourframeworkusestatemachinetodescriptstatefulprotocols,andthendesignandimplementeasy-extendeddescriptionscriptlanguageofstatefulprotocols,whichcouldgeneratetestcasesofstatefulprotocolswithhigh-coverage.Combinin

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档