Ninja: towards transparent tracing and debugging on ARM
Zhenyu Ning, Fengwei Zhang
- Read: 01 Jul 2025
- Published: 16 Aug 2017
SEC’17: Proceedings of the 26th USENIX Conference on Security Symposium Pages 33 - 49
https://dl.acm.org/doi/10.5555/3241189.3241193
Q&A (link)
What are the motivations for this work?
- See Introduction.
- Most of the existing mobile malware analysis systems are based on emulation or virtualization technology, a series of anti-emulation and anti-virtualization techniques have been developed to challenge them.
- Although bare-metal based approaches eliminate the detection of the emulator or hypervisor, the artifacts introduced by the analysis tool itself are still detectable by malware.
- Transparency problem still challenges the state-of-the-art malware analysis systems.
What is the proposed solution?
- See Introduction.
- Consider the analysis system as an Environment + an Analyzer:
- The Environment can be operating system, emulator, hypervisor, or sandbox.
- The Analyzer can be instruction analyzer, API tracer, or application debugger.
- Three requirements:
- The Environment must be isolated.
- The Environment exists on an off-the-shelf bare-metal platform without modifying the software or hardware.
- The Analyzer should not leave any detectable footprints to the outside of the Environment.
- Use TrustZone technology, Performance Monitoring Unit (PMU), and Embedded Trace Macrocell (ETM).
What is the work’s evaluation of the proposed solution?
- See Introduction.
- Evaluated the performance of the trace subsystem with several popular benchmarks, and the result shows that the overheads of the instruction trace and system call trace are less than 1% and the Android API trace introduces 4 to 154 times slowdown.
What is your analysis of the identified problem, idea and evaluation?
NONE
What are the contributions?
- See Introduction.
- Ninja, implement a prototype of NINJA that embodies a trace subsystem with different tracing granularities and a debug subsystem with a GDB-like debugging protocol on ARM Juno development board.
What are future directions for this research?
NONE
What questions are you left with?
NONE
What is your take-away message from this paper?
NONE
Written on