Home > Colloquia > Tuesday, May 19, 2009

Tuesday, May 19, 2009

Sudeep Ghosh

Advisor: Jack W. Davidson
Attending Faculty: James P. Cohoon, Chair

OLSSON 228E, 09:30:00

A Master's Project Presentation

Application Security via Process Level Virtualization

ABSTRACT

Software protection mechanisms have increasingly assumed significance as a technique to prevent process level cracking. One common tamper-resistance technique in software is to insert lightweight checksum      

guards inside the program binary  which are executed periodically. Tampering in the code is detected by   

the guards, which then respond appropriately. This work proposes a novel approach that combines guards with process level virtualization. These techniques have multiple advantages over previous techniques.  First, guards are placed in the application as well as the virtual machine (VM), providing a secure environment of circular trust for application execution. Second, guards placed in the application are run from the VM~Rs code cache, providing an environment for stealthy execution. For added security, the application and guards are encrypted using a state-of-the-art encryption algorithm, making analysis and modification even more difficult. We have developed an automated toolchain for inserting these features into the application code.  Preliminary results on the SPEC CPU2000 benchmarks show that these techniques add an additional overhead of approximately 7% over the VM (24% over native execution) while providing enhanced tamper resistance.