Skip to main content
Erschienen in: The Journal of Supercomputing 8/2018

11.07.2016

Design and implementation of user-level dynamic binary instrumentation on ARM architecture

verfasst von: Dongwoo Kim, Sangwho Kim, Jaecheol Ryou

Erschienen in: The Journal of Supercomputing | Ausgabe 8/2018

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

We have developed a user-level dynamic binary instrumentation (DBI) tool on ARM architecture to enable applying various analysis techniques such as performance evaluation, profiling, and bug detection. Most of existing DBI tools are based on the x86 architecture. As demands for the similar approaches mainly performed in x86 are getting higher in an embedded device domain as well, DBI environment is strongly required for embedded devices especially ARM architecture which has a majority of market share in embedded systems. Only a few tools are currently available to ARM but they are very limited to a specific purpose. Therefore, we designed and implemented a general-purpose DBI tool on ARM to execute an arbitrary code between instructions of a target process. Our tool supports native execution environment which is required for security analysis. We have conducted some experiments with common UNIX utilities and an Android application to validate our tool by tracing and saving context information of every instruction of a desired thread. As a result, we have confirmed that it works as expected without affecting the original context of the target process.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Lee D, Kim I, Kim J, Jun HK, Kim WT, Lee S, Eom YI (2013) Light-weight kernel instrumentation framework using dynamic binary translation. J Supercomput 66(3):1613–1628CrossRef Lee D, Kim I, Kim J, Jun HK, Kim WT, Lee S, Eom YI (2013) Light-weight kernel instrumentation framework using dynamic binary translation. J Supercomput 66(3):1613–1628CrossRef
2.
Zurück zum Zitat Henderson A, Prakash A, Yan L, Hu X, Wang X, Zhou R, Yin H (2014) Make it work, make it right, make it fast: building a platform-neutral whole-system dynamic binary analysis platform. In: Proceedings of the 2014 International Symposium on Software Testing and Analysis, pp 248–258 Henderson A, Prakash A, Yan L, Hu X, Wang X, Zhou R, Yin H (2014) Make it work, make it right, make it fast: building a platform-neutral whole-system dynamic binary analysis platform. In: Proceedings of the 2014 International Symposium on Software Testing and Analysis, pp 248–258
3.
Zurück zum Zitat Nicholas N (2004) Dynamic binary analysis and instrumentation. Dissertation, University of Cambridge Nicholas N (2004) Dynamic binary analysis and instrumentation. Dissertation, University of Cambridge
4.
Zurück zum Zitat Zaddach J, Bruno L, Francillon A, Balzarotti D (2014) Avatar: a framework to support dynamic security analysis of embedded systems firmwares. In: Proceedings of the 21st Symposium on Network and Distributed System Security Zaddach J, Bruno L, Francillon A, Balzarotti D (2014) Avatar: a framework to support dynamic security analysis of embedded systems firmwares. In: Proceedings of the 21st Symposium on Network and Distributed System Security
5.
Zurück zum Zitat Enck W, Gilbert P, Han S, Tendulkar V, Chun B, Cox L, Jung J, Mcdaniel P, Sheth A (2014) TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones. ACM Trans Comput Syst 32(2):5CrossRef Enck W, Gilbert P, Han S, Tendulkar V, Chun B, Cox L, Jung J, Mcdaniel P, Sheth A (2014) TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones. ACM Trans Comput Syst 32(2):5CrossRef
6.
Zurück zum Zitat Luk CK, Cohn R, Muth R, Patil H, Klauser A, Lowney G, Wallace S, Reddi VJ, Hazelwood K (2005) Pin: building customized program analysis tools with dynamic instrumentation. In: Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation, vol 40, pp 190–200 Luk CK, Cohn R, Muth R, Patil H, Klauser A, Lowney G, Wallace S, Reddi VJ, Hazelwood K (2005) Pin: building customized program analysis tools with dynamic instrumentation. In: Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation, vol 40, pp 190–200
7.
Zurück zum Zitat Uh GR, Cohn R, Yadavalli B, Peri R, Ayyagari R (2006) Analyzing dynamic binary instrumentation overhead. In: WIBA Workshop at ASPLOS Uh GR, Cohn R, Yadavalli B, Peri R, Ayyagari R (2006) Analyzing dynamic binary instrumentation overhead. In: WIBA Workshop at ASPLOS
8.
Zurück zum Zitat Li L, Wang C (2013) Dynamic analysis and debugging of binary code for security applications. In: Proceedings of the 4th International Conference on Runtime Verification, Springer, Berlin Li L, Wang C (2013) Dynamic analysis and debugging of binary code for security applications. In: Proceedings of the 4th International Conference on Runtime Verification, Springer, Berlin
9.
Zurück zum Zitat DullienT, Porst S (2009) REIL: a platform-independent intermediate representation of disassembled code for static code analysis. In: CanSecWest DullienT, Porst S (2009) REIL: a platform-independent intermediate representation of disassembled code for static code analysis. In: CanSecWest
10.
Zurück zum Zitat Mihajlovi B, Zilic Z, Gross WJ (2014) Dynamically instrumenting the QEMU emulator for linux process trace generation with the GDB debugger. ACM Trans Embed Comput Syst 13(5s), article no. 167 Mihajlovi B, Zilic Z, Gross WJ (2014) Dynamically instrumenting the QEMU emulator for linux process trace generation with the GDB debugger. ACM Trans Embed Comput Syst 13(5s), article no. 167
11.
Zurück zum Zitat Liu C, Chen J, Yang W, Hsu W (2014) Dynamically translating binary code for multi-threaded programs using shared code cache. J Electron Sci Technol 04:434–438 Liu C, Chen J, Yang W, Hsu W (2014) Dynamically translating binary code for multi-threaded programs using shared code cache. J Electron Sci Technol 04:434–438
12.
Zurück zum Zitat Hong D, Wu J, Yew P, Hsu W, Hsu C, Liu P, Wang C, Chung Y (2014) Efficient and retargetable dynamic binary translation on multicores. IEEE Trans Parallel Distrib Syst 25(3):622–632CrossRef Hong D, Wu J, Yew P, Hsu W, Hsu C, Liu P, Wang C, Chung Y (2014) Efficient and retargetable dynamic binary translation on multicores. IEEE Trans Parallel Distrib Syst 25(3):622–632CrossRef
13.
Zurück zum Zitat Payer M, Kravina E, Gross T (2013) Lightweight memory tracing. In: USENIX annual technical conference, pp 115–126 Payer M, Kravina E, Gross T (2013) Lightweight memory tracing. In: USENIX annual technical conference, pp 115–126
14.
Zurück zum Zitat Paxson V (1990) A survey of support for implementing debuggers Paxson V (1990) A survey of support for implementing debuggers
15.
Zurück zum Zitat Rodriguez R, Artal J, Merseguer J (2014) Performance evaluation of dynamic binary instrumentation frameworks. IEEE Latin Am Trans 12(8):1572–1580CrossRef Rodriguez R, Artal J, Merseguer J (2014) Performance evaluation of dynamic binary instrumentation frameworks. IEEE Latin Am Trans 12(8):1572–1580CrossRef
17.
Zurück zum Zitat Sun H, Zheng Y, Bulej L, Villazn A, Qi Z, Tma P, Binder W (2015) A programming model and framework for comprehensive dynamic analysis on Android. In: Proceedings of the 14th International Conference on Modularity, ACM, pp 133–145 Sun H, Zheng Y, Bulej L, Villazn A, Qi Z, Tma P, Binder W (2015) A programming model and framework for comprehensive dynamic analysis on Android. In: Proceedings of the 14th International Conference on Modularity, ACM, pp 133–145
19.
Zurück zum Zitat van der Kouwe E, Giuffrida C, Tanenbaum AS (2014) Evaluating distortion in fault injection experiments. In: 2014 IEEE 15th International Symposium on High-Assurance Systems Engineering (HASE), pp 25–32 van der Kouwe E, Giuffrida C, Tanenbaum AS (2014) Evaluating distortion in fault injection experiments. In: 2014 IEEE 15th International Symposium on High-Assurance Systems Engineering (HASE), pp 25–32
21.
Zurück zum Zitat Kim H, Klauser A (2006) A dynamic binary instrumentation engine for the ARM architecture. In: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems Kim H, Klauser A (2006) A dynamic binary instrumentation engine for the ARM architecture. In: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems
22.
Zurück zum Zitat Nicholas N, Seward J (2007) Valgrind: a framework for heavyweight dynamic binary instrumentation. ACM Sigplan Not 42(6):89–100CrossRef Nicholas N, Seward J (2007) Valgrind: a framework for heavyweight dynamic binary instrumentation. ACM Sigplan Not 42(6):89–100CrossRef
Metadaten
Titel
Design and implementation of user-level dynamic binary instrumentation on ARM architecture
verfasst von
Dongwoo Kim
Sangwho Kim
Jaecheol Ryou
Publikationsdatum
11.07.2016
Verlag
Springer US
Erschienen in
The Journal of Supercomputing / Ausgabe 8/2018
Print ISSN: 0920-8542
Elektronische ISSN: 1573-0484
DOI
https://doi.org/10.1007/s11227-016-1777-9

Weitere Artikel der Ausgabe 8/2018

The Journal of Supercomputing 8/2018 Zur Ausgabe

Premium Partner