Beyond Kernel-level Integrity Measurement: Enabling Remote Attestation
for the Android Platform

Increasing adoption of smartphones in recent times has begun to
attract more and more malware writers towards these devices.  Among
the most prominent and widely adopted open source software stacks for
smartphones is Android that comes with a strong security
infrastructure for mobile devices. However, as with any remote
platform, a service provider or device owner needs assurance that the
device is in a trustworthy state before releasing sensitive
information to it. Trusted Computing provides a mechanism of
establishing such an assurance.  Through remote attestation, TC allows
a service provider or a device owner to determine whether the device
is in a trusted state before releasing protected data to or storing
private information on the phone.  However, existing remote
attestation techniques cannot be deployed on Android due to the
unique, vm-based architecture of the software stack.  In this paper,
we present an attestation mechanism tailored specifically for Android
that can measure the integrity of a device at two levels of
granularity. Our approach allows a challenger to verify the integrity
of Android not only at the operating system level but also that of
code executing on top of the VM. We present the implementation details
of our architecture and show through evaluation that our architecture
is feasible both in terms of time complexity and battery consumption.