首页> 外文会议>2011 17th IEEE International Conference on Parallel and Distributed Systems >Optimization of an Instrumentation Tool for Stripped Win32/X86 Binaries
【24h】

Optimization of an Instrumentation Tool for Stripped Win32/X86 Binaries

机译:用于剥离Win32 / X86二进制文件的仪器工具的优化

获取原文

摘要

Many software security, instruction set architecture virtualization and performance enhancement techniques require instrumentation of application program binaries either to add run-time checks or to perform dynamic analysis and transformation. Unfortunately, commercially distributed application binaries on the Win32 platform are often stripped of their symbol table, and therefore cannot be easily disassembled, let alone correctly instrumented. BIRD is an instrumentation tool that applies an IA-32 disassembler both statically and dynamically, and successfully guarantees that no instruction in an input binary can be executed without being examined first. Unfortunately, the first version of BIRD has several performance problems. This paper describes our experiences of optimizing the first BIRD prototype to remove these problems. In particular, we develop a novel speculative disassembly technique that successfully reaps most of the performance benefits of static disassembly while ensuring the same level of correctness as dynamic disassembly, a bitmap-based target address check algorithm that reduces the fixed performance overhead associated with every instrumentation, and a comprehensive in-place instrumentation technique that relies mostly on instruction substitution and drastically cuts down the number of debug exceptions (int 3) invoked at run time. Together these performance optimizations reduce the average performance overhead of a set of batch Win32 programs from 23.6% to 8.8%.
机译:许多软件安全性,指令集体系结构虚拟化和性能增强技术都需要对应用程序二进制文件进行检测,以添加运行时检查或执行动态分析和转换。不幸的是,Win32平台上的商业发行的应用程序二进制文件经常被删除了它们的符号表,因此不能轻易地反汇编,更不用说正确地安装了。 BIRD是一种仪表工具,可静态和动态地应用IA-32反汇编程序,并成功保证输入二进制文件中的任何指令都必须先进行检查才能执行。不幸的是,BIRD的第一个版本存在一些性能问题。本文介绍了我们优化第一个BIRD原型以消除这些问题的经验。特别是,我们开发了一种新颖的推测性反汇编技术,该技术可成功利用静态反汇编的大部分性能优势,同时确保与动态反汇编相同的正确性,这是一种基于位图的目标地址检查算法,可减少与每种仪器相关的固定性能开销,以及一种全面的就地检测技术,该技术主要依赖于指令替换,并大大减少了在运行时调用的调试异常(int 3)的数量。这些性能优化将一组批处理Win32程序的平均性能开销从23.6%降低到8.8%。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号