二进制程序安全缺陷静态分析方法的研究综述.docxVIP

二进制程序安全缺陷静态分析方法的研究综述.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第36卷第7期 第36卷第7期 计算机科学 V01.36 No.7 2009年7月 Computer Science JulY 2009 二进制程序安全缺陷静态分析方法的研究综述 田硕梁洪亮 (中国科学院软件研究所 北京100190) 摘要对现有二进制程序安全缺陷静态分析方法进行了综述和分析,提出了整个程序分析过程中的关键问题以及 二进制程序安全分析的主要研究方向。通过对二进制程序缺陷静态分析流程的总结,发现二进制程序信息恢复是整 个分析过程的关键,构造内容丰富的、通用的中间表示是二进制程序缺陷分析的重要研究方向。 关键词二进制程序,静态分析,安全缺陷,中间表示,反汇编 中图法分类号TP312 文献标识码A Survey of Static Analysis Methods for Binary Code Vulnerability TIAN Shuo LIANG Hong-liang (Institution of Software,Chinese Academy of Sciences,Beijiag 100190,China) Abstract A of static analysis methods for binary code vulnerabilities was provided.Based summing up exis— ting static detect methods for vulnerabilities,the general procedural of binary static analysis was modeled,and transfor— ming program information into expressive and generic intermediate representation was regarded the key component of the analysis and important research direction. Keywords Binary code,Static analysis,Security vulnerability,Intermediate representation,Disassemble 益增长的程序安全性需求。 1 简介 针对二进制程序易执行的特点,很多二进制程序安全分 目前,在市场作用力下,大部分的商业软件以二进制程序 析方法使用动态分析技术[6‘7]。动态分析基于程序监控,发 的形式发布,很多软件产品根据客户需求进行外包开发。很 现程序执行中的不安全行为。与之相对,静态分析方法并不 多没有源码的应用程序被部署到计算机系统,即使在开源系 实际执行程序,而是遍历程序代码分析程序的属性。相比之 统中也不可避免地要用到二进制程序。如何确定这些二进制 下静态分析方法具有以下三点优势[83: 程序中是否存在安全缺陷是急需解决的一个问题。 1.静态技术可进行全面分析。静态分析方法能够保证程 程序安全性是指程序执行的指令动作不会违背系统的安 序的所有执行路径得到检测,而不局限于特定的执行路径。 全策略。源程序经过编译、优化等处理得到可执行程序,源程 2.静态分析可以在执行之前验证程序的安全性,进而在 序的语义可能与程序的实际执行动作不同[1]。因此,源程序 运行程序前检验程序安全性、修补程序安全漏洞。 缺陷检测并不能保证程序的安全性。可执行程序以0/1二进 3.静态分析无需实际执行被检测程序,不会产生程序运 制字节流表示机器指令,直接表示程序的执行动作。 行开销。 目前市场上的二进制程序安全检查工具主要有两种: 本文主要介绍二进制程序静态分析方法的研究现状,第 HBGary公司的BugScan[2]和@Stake公司(被赛门铁克收购) 2节简单说明二进制程序的特点以及程序安全性分析的过 的SmartRisk Analyze一“。BugScan是一种跨平台的硬件软 程,第3节介绍目前主要的分析方法,最后是总结研究现状并 件结合的二进制程序缺陷检测工具,其检测过程对用户是完 展望二进制程序安全分析的研究方向。 全透明的。SmartRisk Amalyzer是Windows平台下的静态二 2二进制程序安全分析简介 进制程序分析工具,除了检测二进制程序,它还监控程序载入 内存时调用的动态链接库和配置环境,检测第三方插件的安 2.1 二进制程序的结构和特点 全性。虽然这两种工具能够对程序进行“深度静态分析”,但 可执行程序生成过程如图l(a)所示,高级语言程序(或 是由于SmartRisk Analyzer价格昂贵,中小型公司机构难以 者汇编程序)经过编译(汇编)处理生

文档评论(0)

yurixiang1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档