skip to main content
10.1145/2491899.2465570acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article

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

Published: 20 June 2013 Publication History

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/.
[2]
S. Chari, J. R. Rao, and P. Rohatgi. Template Attacks. Cryptographic Hardware and Embedded Systems -- CHES 2002, pages 13--28, 2003.
[3]
J. Cooling. Software Engineering for Real-Time Systems. Addison-Wesley, 2003.
[4]
T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to Algorithms. The MIT Press, Third edition, 2009.
[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".
[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.
[7]
C. Hamacher, Z. Vranesic, and S. Zaky. Computer Organization. McGraw-Hill, Fifth edition, 2002.
[8]
D. Hankerson, A. Menezes, and S. Vanstone. Guide to Elliptic Curve Cryptography. Springer-Verlag, 2004.
[9]
J. L. Hennessy and D. A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publishers, Fourth edition, 2007.
[10]
HT Omega. Claro Plus -- Online specifications. URL http://www.htomega.com/claroplus.html.
[11]
P. Kocher. Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems. Advances in Cryptology, 1996.
[12]
P. Kocher, J. Jaffe, and B. Jun. Differential Power Analysis. Advances in Cryptology -- CRYPTO' 99, pages 388--397, 1999.
[13]
R. Langner. Stuxnet: Dissecting a Cyberwarfare Weapon. IEEE Security & Privacy, 9 (3): 49--51, May-June 2011.
[14]
Matt Bishop. Computer Security: Art and Science. Addison-Wesley, 2003.
[15]
D. Mazzoni. Audacity: Free Audio Editor and Recorder. URL http://audacity.sourceforge.net.
[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/.
[17]
C. Moreno. Side-Channel Analysis: Countermeasures and Application to Embedded Systems Debugging, 2013. PhD Thesis (Final version to be submitted May 2013).
[18]
C. Moreno and M. A. Hasan. SPA-Resistant Binary Exponentiation with Optimal Execution Time. Journal of Cryptographic Engineering, pages 1--13, 2011.
[19]
J. G. Proakis and D. G. Manolakis. Digital Signal Processing: Principles, Algorithms, and Applications. Prentice Hall, Fourth edition, 2006.
[20]
J. Viega and G. McGraw. Building Secure Software. Addison-Wesley, 2002.
[21]
A. R. Webb and K. D. Copsey. Statistical Pattern Recognition. Wiley, third edition, 2011.

Cited By

View all
  • (2025)Side-Channel Based Runtime Intrusion Detection for Network EquipmentMachine Learning and Principles and Practice of Knowledge Discovery in Databases10.1007/978-3-031-74643-7_20(261-276)Online publication date: 1-Jan-2025
  • (2018)Non-intrusive program tracing of non-preemptive multitasking systems using power consumption2018 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE.2018.8342184(1147-1150)Online publication date: Mar-2018
  • (2018)Non-intrusive runtime monitoring through power consumption to enforce safety and security properties in embedded systemsFormal Methods in System Design10.1007/s10703-017-0298-353:1(113-137)Online publication date: 1-Aug-2018
  • Show More Cited By

Index Terms

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

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    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
    • 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
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 20 June 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. debugging
    2. embedded systems
    3. side-channel analysis
    4. simple power analysis
    5. tracing

    Qualifiers

    • Research-article

    Conference

    LCTES '13

    Acceptance Rates

    LCTES '13 Paper Acceptance Rate 16 of 60 submissions, 27%;
    Overall Acceptance Rate 116 of 438 submissions, 26%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)2
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 20 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2025)Side-Channel Based Runtime Intrusion Detection for Network EquipmentMachine Learning and Principles and Practice of Knowledge Discovery in Databases10.1007/978-3-031-74643-7_20(261-276)Online publication date: 1-Jan-2025
    • (2018)Non-intrusive program tracing of non-preemptive multitasking systems using power consumption2018 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE.2018.8342184(1147-1150)Online publication date: Mar-2018
    • (2018)Non-intrusive runtime monitoring through power consumption to enforce safety and security properties in embedded systemsFormal Methods in System Design10.1007/s10703-017-0298-353:1(113-137)Online publication date: 1-Aug-2018
    • (2016)Efficient program tracing and monitoring through power consumptionProceedings of the 2016 Conference on Design, Automation & Test in Europe10.5555/2971808.2972172(1556-1561)Online publication date: 14-Mar-2016
    • (2016)Static Transformation of Power Consumption for Software Attestation2016 IEEE 22nd International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA)10.1109/RTCSA.2016.45(188-194)Online publication date: Aug-2016
    • (2016)Non-intrusive Runtime Monitoring Through Power Consumption: A Signals and System Analysis Approach to Reconstruct the TraceRuntime Verification10.1007/978-3-319-46982-9_17(268-284)Online publication date: 20-Sep-2016
    • (2014)Dynamic Analysis of Embedded Software Using Execution ReplayProceedings of the 2014 IEEE 17th International Symposium on Object/Component-Oriented Real-Time Distributed Computing10.1109/ISORC.2014.16(166-173)Online publication date: 10-Jun-2014
    • (2018)Gray-Box Software Integrity Checking via Side-ChannelsSecurity and Privacy in Communication Networks10.1007/978-3-319-78813-5_1(3-23)Online publication date: 11-Apr-2018

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media