SBIR-STTR Award

Code Interposition Framework for Mobile Cyber Applications
Award last edited on: 3/3/2024

Sponsored Program
SBIR
Awarding Agency
DOD : DARPA
Total Award Amount
$1,605,167
Award Phase
2
Solicitation Topic Code
SB171-006
Principal Investigator
Stelios Sidiroglou

Company Information

Aarno Labs LLC

One Broadway Street 14th Floor
Cambridge, MA 02142
   (617) 222-7664
   info@aarno-labs.com
   www.aarno-labs.com
Location: Single
Congr. District: 07
County: Middlesex

Phase I

Contract Number: W31P4Q-17-C-0149
Start Date: 8/9/2017    Completed: 9/7/2018
Phase I year
2017
Phase I Amount
$148,948
We propose to develop a new system, SARAN, to transparently, and efficiently, instrument Android applications. SARAN supports the transparent instrumentation of entire Android APKs (i.e., both DEX bytecode and native libraries). DEX bytecode is instrumented using a static binary decompilation that lifts the bytecode into an intermediate representation that facilitates program analysis and transformation. Our proposed DEX bytecode instrumentation maintains transparency by intercepting and sanitizing reflective calls and provides completeness by supporting method proxies and dynamic class loading. Native libraries are instrumented by a custom version of the DynamoRIO dynamic binary instrumentation engine. DynamoRIO operates by shifting an application's execution from its original instructions to a code cache, where the instructions can be freely, and transparently, modified. DynamoRIO occupies the address space with the application and has full control over execution, taking over whenever control leaves the code cache or when the operating system directly transfers control to the application. DynamoRIO, and the SARAN modifications, go to great lengths to maintain instrumentation transparency. Specifically, SARAN ensures library (reentrancy), heap (data layout), thread (hides extra threads) and stack transparency. SARAN's DEX and DynamoRIO instrumentation provide efficient and transparent instrumentation capabilities for entire Android APKs.

Phase II

Contract Number: W31P4Q-18-C-0084
Start Date: 7/17/2018    Completed: 10/20/2021
Phase II year
2018
Phase II Amount
$1,456,219
We propose to develop a new system, SARAN, to transparently, and efficiently instrument Android applications. SARAN supports the transparent instrumentation of entire Android Packages or APK file formats (i.e., both DEX bytecode and native libraries). DEX bytecode is instrumented using a static binary decompilation that lifts the bytecode into an intermediate representation that facilitates program analysis and transformation. Our proposed DEX bytecode instrumentation maintains transparency by intercepting and sanitizing reflective calls and provides completeness by supporting method proxies and dynamic class loading. Specifically, SARAN ensures library (reentrancy), heap (data layout), thread (hides extra threads) and stack transparency. SARAN's DEX and DynamoRIO instrumentation provide efficient and transparent instrumentation capabilities for entire Android APKs.