Protecting smart phones by means of execution replication

Georgios Portokalidis, Philip Homburg, Kostas G. Anagnostakis, Herbert Bos · 2010

Smartphones have come to resemble PCs in software complexity, with complexity usually leading to bugs and vulnerabilities. Moreover, as smartphones are increasingly used for financial transactions and other privacysensitive tasks, they are becoming attractive targets for attackers. Unfortunately, smartphones are quite different from PCs in terms of resource constraints imposed on the design of protection mechanisms, as battery power is an extremely scarce resource. As a consequence, security solutions designed for PCs may not be directly applicable to smartphones, as they may reduce battery lifetime significantly. Worse, as no single protection mechanism offers 100% security, it may be desirable to tighten up security further by applying multiple security solutions at the same time, thus increasing attack coverage and accuracy. Doing so exacerbates the problem. In this paper, we explore a design where the detection of attacks is almost completely decoupled from the phone. We propose an architecture where all detection mechanisms are placed on a separate, looselysynchronised security server which hosts one or more exact replicas of the smartphone. As the security server is not subject to the battery power constraint, we can apply a host of expensive detection techniques that would otherwise be too heavy-weight to ever consider implementing on the actual phone. We evaluate an implementation of the architecture on the HTC Dream / Android G1 phone platform and show that the overhead, in terms of computation and power consumption, is acceptable, even though we are applying extremely heavy-weight attack detection techniques based on dynamic taint analysis.

Read the paper · More papers on PaperTik