SLIDE 7 19
BitBlaze Binary Analysis Platform
Currently 3 components:
- 1. Vine: Static analysis component
– Raise assembly to Intermediate Language (IL) – Provides program analysis and verification routines on IL
- 2. TEMU: Dynamic analysis component
– Whole system emulation (OS aware) – Dynamic analysis techniques (such as taint analysis)
- 3. Rudder: Mixed execution component
– Mixed concrete and symbolic execution – Can explore code paths automatically
Research directions:
– How to design & combine static & dynamic analysis & other techniques (e.g., machine learning) for effective binary analysis?
20
BitBlaze in Action (I) COTS Vulnerability Analysis & Protection
– Worm characteristics:
» Exploit vulnerabilities: memory safety vulnerability » Fast self-propagation, large scale
- Slammer infected 90% of vulnerable hosts in 10 minutes, compromised hundreds
- f thousands of machines
– Detect new exploits & identify root causes – Create signatures for vulnerabilities (IEEE S&P 2006, CSF 2007) – Create dynamic patches – Project: how to automatically create effective defense?
- Detect deviations in protocol implementation
(USENIX Security 2007, Best Paper Award)
– Create formulas representing different implementations – Diff formulas create candidate deviations – Project: scalable effective deviation detection
21
BitBlaze in Action (II) Malicious Code Analysis & Defense
– Given a piece of (potentially malicious) code, how to determine its security-related behavior?
– BitScope, THE malicious code analysis platform
– Detect privacy-breaching malware (ACM CCS 2007) – Detect hidden behavior in malware
» Time bombs, botnets, etc.