Javascript must be enabled to continue!
Talk: Debugging the Un-Debuggable: Advanced Debugging Techniques for Microarchitectural Security Tooling
View through CrossRef
System security research often involves the development of custom code for building program analysis tools or implementation of side-channel leakage mitigations. In various cases, those specialized contexts also render the usage of conventional debugging tools, such as GDB or integrated IDE debuggers, unusable. Examples for this are the development of code that runs on specialized hardware platforms, such as the Proteus RISC-V core, where debugging must be conducted by analyzing low-level hardware signal traces rather than using interactive support, or when custom binary instrumentation or hardware protection like Intel SGX interferes with the debugger's operation. Therefore, the aforementioned cases demand new debugging strategies.
In this talk, we present various ways to trace programs at runtime and collect data in a unified format. We furthermore discuss how this data can be used for offline analysis to restore debugging functionality that was lost, or use it to check the security and conformance of programs. While we focus on the examples used throughout our projects in this talk, they represent only a fraction of possible solutions. This talk is intended to also spark further discussion about other tools and techniques, from small self-written scripts to best practices for leveraging larger, mature analysis frameworks. All proposed tooling is collected in a publicly available GitHub repository at https://github.com/syssec-debugging-tools/catalog.
Universitatsbibliothek der Ruhr-Universitat Bochum
Title: Talk: Debugging the Un-Debuggable: Advanced Debugging Techniques for Microarchitectural Security Tooling
Description:
System security research often involves the development of custom code for building program analysis tools or implementation of side-channel leakage mitigations.
In various cases, those specialized contexts also render the usage of conventional debugging tools, such as GDB or integrated IDE debuggers, unusable.
Examples for this are the development of code that runs on specialized hardware platforms, such as the Proteus RISC-V core, where debugging must be conducted by analyzing low-level hardware signal traces rather than using interactive support, or when custom binary instrumentation or hardware protection like Intel SGX interferes with the debugger's operation.
Therefore, the aforementioned cases demand new debugging strategies.
In this talk, we present various ways to trace programs at runtime and collect data in a unified format.
We furthermore discuss how this data can be used for offline analysis to restore debugging functionality that was lost, or use it to check the security and conformance of programs.
While we focus on the examples used throughout our projects in this talk, they represent only a fraction of possible solutions.
This talk is intended to also spark further discussion about other tools and techniques, from small self-written scripts to best practices for leveraging larger, mature analysis frameworks.
All proposed tooling is collected in a publicly available GitHub repository at https://github.
com/syssec-debugging-tools/catalog.
Related Results
Debugging Parallel DEVS
Debugging Parallel DEVS
To this day, debugging support for the DEVS formalism has been provided, at best, in an ad-hoc way. The intricacies of dealing with the interplay of different notions of (simulated...
Information Security in Artificial Intelligence: A Study of the possible intersection
Information Security in Artificial Intelligence: A Study of the possible intersection
1. IntroductionArtificial Intelligence or A.I attempts to understand intelligent entities, and strives to build ones. And it is obvious that computers with human-level intelligence...
WeMu: Effective and Scalable Emulation of Microarchitectural Weird Machines
WeMu: Effective and Scalable Emulation of Microarchitectural Weird Machines
Recent research on Microarchitectural Weird Machines (µWMs) has shown that microarchitectural optimization features, originally exploited for data exfiltration, can also facilitate...
7
th
International Symposium on Enabling Technologies for Life Sciences (ETP)
7
th
International Symposium on Enabling Technologies for Life Sciences (ETP)
The seventh in the series of ETP Symposia (see
Rapid Communications in Mass Spectrometry
2012,
26
, ...
How developers debug
How developers debug
Debugging software is an inevitable chore, often difficult and more time-consuming than expected, giving it the nickname the “ dirty little secret of computer science.” Surprisingl...
Programming Self-Efficacy and Perceived Debugging Performance among First-Year Computer Science Students
Programming Self-Efficacy and Perceived Debugging Performance among First-Year Computer Science Students
This study examined the relationship and level of programming self-efficacy and perceived debugging performance among first-year Computer Science students at Surigao del Norte Stat...
Aircraft Tooling Collaborative Design Based on Multi-agent and PDM
Aircraft Tooling Collaborative Design Based on Multi-agent and PDM
In airplane research and development, tooling design is desired to be undertaken with airplane product design concurrently together with the considerations of downstream processes ...
Development Tasks of AI-based Security Industry
Development Tasks of AI-based Security Industry
Recently, the government's interest in industries utilizing AI has been amplified, with initiatives such as announcing a roadmap aiming to achieve the goal of becoming the world's ...

