Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
Quickly analyze >100K lines of trace output
Post-Processing
Limit method tracing to Java code
Apps are written in Java, executed by a VM
Static Analysis
List Activities and Services
13/22
Use dynamic analysis
Distributed as signed jar files (.apk)
5/22
6/22
Log output
10/22
Capture network traffic
11/22
14/22
Applications
Application Framework
Core Libraries
Native libraries
OWASP BeNeLux Day 2013, Amsterdam
Benchmark: browse to 8 cached webpages
Dalvik VM
Victor van der Veen
Linux Kernel
Twitter: @vvdveen
E-Mail: vvanderveen@itq.nl
+614%
Android: 92%
Speedup of 1.45 compared to original profiler
15/22
How do we automate analysis?
3/22
2/22
Extend Android Profiler to suit our needs
Compare automated analysis against manual input (180 seconds)
Code coverage of 33% is fairly low
9/22
~33%
16/22
17/22
20/22
Submit your .apk for automated analysis
18/22
Contact me if you would like to analyze a batch
No source or inspect tool available yet
12/22
Method tracer for developers
App
38.49%
36.04%
31.40%
27.61%
Analysis of ~500 samples
35.02%
31.10%
Trace apps in an emulated environment
Monitor behavior
.tar.gz output containing:
Load trace output into Python objects
March 2012
38,689 samples
Uses VMI to reconstruct instructions
Building blocks:
Single screen with a UI
Background components
Listener for specific announcements
−2.45%
+3.79%
March 2013
276,259 samples
TraceDroid's coverage is about as good as manual analysis
Likely of higher quality due to receiver stimulation
Modified Android OS for method tracing
Framework for automated dynamic analysis
Detect suspicious activity
Ease post analysis
Injects trace methods into bytecode
Adds tracing code to core libraries