• DocumentCode
    2360709
  • Title

    Enabling sophisticated analyses of ×86 binaries with RevGen

  • Author

    Chipounov, Vitaly ; Candea, George

  • Author_Institution
    Sch. of Comput. & Commun. Sci., Ecole Polytech. Fed. de Lausanne (EPFL), Lausanne, Switzerland
  • fYear
    2011
  • fDate
    27-30 June 2011
  • Firstpage
    211
  • Lastpage
    216
  • Abstract
    Current state-of-the-art static analysis tools for binary software operate on ad-hoc intermediate representations (IR) of the machine code. Therefore, even though IRs facilitate program analysis by abstracting away the source language, it is hard to reuse existing implementations of analysis tools in new endeavors. Recently, a new compiler framework - LLVM - has emerged, together with many analysis tools that use its IR. However, these tools rely on a compiler to generate the IR from source code. We propose RevGen, a tool that automatically converts existing binary programs to the standard LLVM IR, making an increasingly large number of static and dynamic analysis frameworks, as well as run-time instrumentation tools, applicable to legacy software. We show the potential of RevGen by converting several programs and device drivers to LLVM and checking the resulting code with off-the-shelf analysis tools.
  • Keywords
    device drivers; program compilers; program diagnostics; software maintenance; source coding; ×86 binaries; LLVM; RevGen; ad-hoc intermediate representations; analysis frameworks; binary software; compiler framework; device drivers; legacy software; machine code; program analysis; run-time instrumentation tools; source code; source language; static analysis tools; Assembly; Driver circuits; Instruction sets; Libraries; Registers; Transforms;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Dependable Systems and Networks Workshops (DSN-W), 2011 IEEE/IFIP 41st International Conference on
  • Conference_Location
    Hong Kong
  • Print_ISBN
    978-1-4577-0374-4
  • Electronic_ISBN
    978-1-4577-0373-7
  • Type

    conf

  • DOI
    10.1109/DSNW.2011.5958815
  • Filename
    5958815