Isolated Program Execution: An Application Transparent Approach for Executing Untrusted Programs

  • Authors:
  • Zhenkai Liang;V. N. Venkatakrishnan;R. Sekar

  • Affiliations:
  • -;-;-

  • Venue:
  • ACSAC '03 Proceedings of the 19th Annual Computer Security Applications Conference
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we present a new approach for safe execution of untrusted programs by isolating their effects fromthe rest of the system. Isolation is achieved by interceptingfile operations made by untrusted processes, and redirecting any change operations to a "modification cachel" thatis invisible to other processes in the system. File read operations performed by the untrusted process are also correspondingly modified, so that the process has a consistentview of system state that incorporates the contents of the filesystem as well as the modification cache. On termination ofthe untrusted process, its user is presented with a concisesummary of the files modified by the process. Additionally,the user can inspect these files using various software utilities (e.g., helper applications to view multimedia files) todetermine if the modifications are acceptable. The user thenhas the option to commit these modifications, or simply discard them. Essentially, our approach provides "play" and"rewind" buttons for running untrusted software. Key benefits of our approach are that it requires no changes to theuntrusted programs (to be isolated) or the underlying operating system; it cannot be subverted by malicious programs;and it achieves these benefits with acceptable runtime overheads. We describe a prototype implementation of this system for Linux called Alcatraz and discuss its performanceand effectiveness.