• DocumentCode
    144176
  • Title

    A Framework for Creating Binary Rewriting Tools (Short Paper)

  • Author

    Hiser, Jason D. ; Anh Nguyen-Tuong ; Co, Michele ; Rodes, Benjamin ; Hall, Mathew ; Coleman, Clark L. ; Knight, Jonathan C. ; Davidson, Jack W.

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Virginia, Charlottesville, VA, USA
  • fYear
    2014
  • fDate
    13-16 May 2014
  • Firstpage
    142
  • Lastpage
    145
  • Abstract
    The design of many binary-level rewriting and instrumentation systems is based on specifying and implementing an application-programmer interface (API) to provide the necessary functionality for implementing various instrumentation tools. Users implement instrumentation tools by writing code that uses the functionality provided by the implementation of the API. This paper describes a novel approach for realizing powerful binary level instrumentation systems that is based on a simple, low-level language, called SPRI. SPRI is a simple language for specifying edits to apply to a binary. Its simplicity makes SPRI an ideal target language for binary analysis and instrumentation tools. A SPRI specification can then be applied to a binary statically or dynamically to insert the desired instrumentation. To demonstrate the advantages, flexibility, and power of this approach, the paper presents an exemplar instrumentation system that uses a software dynamic translator to apply SPRI-specified edits to a binary, along with several case studies of how the system has been used.
  • Keywords
    application program interfaces; program interpreters; API; SPRI low-level language; SPRI specification; application program interface; binary rewriting tools; binary-level instrumentation systems; binary-level rewriting systems; software dynamic translator; Databases; Instruments; Layout; Libraries; Optimization; Security; Software; binary rewriting; dynamic translation; spasm;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Dependable Computing Conference (EDCC), 2014 Tenth European
  • Conference_Location
    Newcastle
  • Type

    conf

  • DOI
    10.1109/EDCC.2014.14
  • Filename
    6821099