skip to main content
research-article

Non-intrusive program tracing and debugging of deployed embedded systems through side-channel analysis

Published:20 June 2013Publication History
Skip Abstract Section

Abstract

One of the hardest aspects of embedded software development is that of debugging, especially when faulty behavior is observed at the production or deployment stage. Non-intrusive observation of the system's behavior is often insufficient to infer the cause of the problem and identify and fix the bug. In this work, we present a novel approach for non-intrusive program tracing aimed at assisting developers in the task of debugging embedded systems at deployment or production stage, where standard debugging tools are usually no longer available. The technique is rooted in cryptography, in particular the area of side-channel attacks. Our proposed technique expands the scope of these cryptographic techniques so that we recover the sequence of operations from power consumption observations (power traces). To this end, we use digital signal processing techniques (in particular, spectral analysis) combined with pattern recognition techniques to determine blocks of source code being executed given the observed power trace. One of the important highlights of our contribution is the fact that the system works on a standard PC, capturing the power traces through the recording input of the sound card. Experimental results are presented and confirm that the approach is viable.

References

  1. Atmel Corporation. AVR 8- andhbox32-bit Microcontrollers, 2012. URL http://www.atmel.com/products/microcontrollers/avr/.Google ScholarGoogle Scholar
  2. S. Chari, J. R. Rao, and P. Rohatgi. Template Attacks. Cryptographic Hardware and Embedded Systems -- CHES 2002, pages 13--28, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Cooling. Software Engineering for Real-Time Systems. Addison-Wesley, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to Algorithms. The MIT Press, Third edition, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Frigo and S. G. Johnson. The design and implementation of FFTW3. phProceedings of the IEEE, 93 (2): 216--231, 2005. Special issue on "Program Generation, Optimization, and Platform Adaptation".Google ScholarGoogle ScholarCross RefCross Ref
  6. M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge, and R. B. Brown. Mibench: A free, commercially representative embedded benchmark suite. In Proceedings of the Workload Characterization, 2001. WWC-4. 2001 IEEE International Workshop, pages 3--14. IEEE Computer Society, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. Hamacher, Z. Vranesic, and S. Zaky. Computer Organization. McGraw-Hill, Fifth edition, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Hankerson, A. Menezes, and S. Vanstone. Guide to Elliptic Curve Cryptography. Springer-Verlag, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. L. Hennessy and D. A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publishers, Fourth edition, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. HT Omega. Claro Plus -- Online specifications. URL http://www.htomega.com/claroplus.html.Google ScholarGoogle Scholar
  11. P. Kocher. Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems. Advances in Cryptology, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Kocher, J. Jaffe, and B. Jun. Differential Power Analysis. Advances in Cryptology -- CRYPTO' 99, pages 388--397, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. Langner. Stuxnet: Dissecting a Cyberwarfare Weapon. IEEE Security & Privacy, 9 (3): 49--51, May-June 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Matt Bishop. Computer Security: Art and Science. Addison-Wesley, 2003.Google ScholarGoogle Scholar
  15. D. Mazzoni. Audacity: Free Audio Editor and Recorder. URL http://audacity.sourceforge.net.Google ScholarGoogle Scholar
  16. A. J. Menezes, P. C. van Oorschot, and S. A. Vanstone. Handbook of Applied Cryptography. CRC Press, 1996. URL http://www.cacr.math.uwaterloo.ca/hac/. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. Moreno. Side-Channel Analysis: Countermeasures and Application to Embedded Systems Debugging, 2013. PhD Thesis (Final version to be submitted May 2013).Google ScholarGoogle Scholar
  18. C. Moreno and M. A. Hasan. SPA-Resistant Binary Exponentiation with Optimal Execution Time. Journal of Cryptographic Engineering, pages 1--13, 2011.Google ScholarGoogle Scholar
  19. J. G. Proakis and D. G. Manolakis. Digital Signal Processing: Principles, Algorithms, and Applications. Prentice Hall, Fourth edition, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Viega and G. McGraw. Building Secure Software. Addison-Wesley, 2002.Google ScholarGoogle Scholar
  21. A. R. Webb and K. D. Copsey. Statistical Pattern Recognition. Wiley, third edition, 2011.Google ScholarGoogle Scholar

Index Terms

  1. Non-intrusive program tracing and debugging of deployed embedded systems through side-channel analysis

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 48, Issue 5
      LCTES '13
      May 2013
      165 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/2499369
      Issue’s Table of Contents
      • cover image ACM Conferences
        LCTES '13: Proceedings of the 14th ACM SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems
        June 2013
        184 pages
        ISBN:9781450320856
        DOI:10.1145/2491899

      Copyright © 2013 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 20 June 2013

      Check for updates

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader