loading...
BIRD: Binary Interpretation using Runtime Disassembly
New York, New York March 26-March 29
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/CGO.2006.6International Symposium on Code Gener ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Susanta Nanda, SUNY at Stony Brook
Wei Li, SUNY at Stony Brook
Lap-Chung Lam, SUNY at Stony Brook
Tzi-cker Chiueh, SUNY at Stony Brook
The majority of security vulnerabilities published in the literature are due to software bugs. Many researchers have developed program transformation and analysis techniques to automatically detect or eliminate such vulnerabilities. So far, most of them cannot be applied to commercially distributed applications on the Windows/x86 platform, because it is almost impossible to disassemble a binary file with 100% accuracy and coverage on that platform. This paper presents the design, implementation, and evaluation of a binary analysis and instrumentation infrastructure for the Windows/x86 platform called BIRD (Binary Interpretation using Runtime Disassembly), which provides two services to developers of security-enhancing program transformation tools: converting binary code into assembly language instructions for further analysis, and inserting instrumentation code at specific places of a given binary without affecting its execution semantics. Instead of requiring a high-fidelity instruction set architectural emulator, BIRD combines static disassembly with an on-demand dynamic disassembly approach to guarantee that each instruction in a binary file is analyzed or transformed before it is executed. It takes 12 student months to develop the first BIRD prototype, which can successfully work for all applications in Microsoft Office suite as well as Internet Explorer and IIS web server, including all DLLs that they use. Moreover, the additional throughput penalty of the BIRD prototype on production server applications such as Apache, IIS, and BIND is uniformly below 4%.
Citation:
Susanta Nanda, Wei Li, Lap-Chung Lam, Tzi-cker Chiueh, "BIRD: Binary Interpretation using Runtime Disassembly," cgo, pp.358-370, International Symposium on Code Generation and Optimization (CGO'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.