EP1761836B1

Method of improving computer security through sandboxing

Abstract

This record has no abstract on file.

EP1761836B1, drawing sheet 1
Sheet 1 of 4

Term

Term ended

Expired 21 June 2025, 1.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

12 claims: 2 independent, 10 dependent

  1. 1
    A method comprising:identifying a file (204) by a virtual machine manager "VMM" to be executed on a processor of a processing system, the processing system supporting virtualization to run multiple independent virtual machines that do not interfere with each other, the identified file to be marked as untrusted (302), the VMM to provide an abstraction of one or more virtual machines running on the processing system;marking the identified file (204), by the VMM, in response to the identifying (304);accepting a request to at least one of execute or access a file (204) by first application program running as guest software within a user virtual machine (200) to be executed on a processor (308) of the processing system;at least one of executing or accessing the file (204) by the first application program within the user virtual machine (200), to be executed on the processor, when the file (204) is not marked as untrusted (310);and creating, by the VMM, a second application program running as guest software within a sandbox virtual machine (206)(312), to be executed on the processor of the processing system, the second application program being "forked" as a copy of the first application program, the sandbox virtual machine being created as a copy of the user virtual machine, and at least one of executing or accessing the file (204) by the second application program within the sandbox virtual machine (206) according to a policy when the file (204) is marked as untrusted (314), B wherein the state of the first application program serves as a checkpoint of the processing system to revert to if an attack is observed in the second application program wherein the sandbox virtual machine's functionality is restricted by the VMM, thereby preventing damage caused by executing or accessing the untrusted file outside of the sandbox virtual machine's execution environment;and preventing, based on the policy, at least one of sending electronic mail messages with the untrusted file as an attachment or deleting files on the processing system, both being initiated from the second application program running within the sandbox virtual machine.
  2. 6
    A processing system supporting virtualization to run multiple independent virtual machines that do not interfere with each other comprising:a virtual machine monitor "VMM" (112), to be executed on a processor of the processing system, to provide an abstraction of one or more virtual machines, and to identify and mark files (204) that are untrusted;a virtual machine control structure "VMCS" to store a state of guest software of the virtual machines, state of the VMM, and execution control information indicating how the VMM controls operation of guest software;a first application program running as guest software within a user virtual machine, to be executed on a processor of the processing system, wherein the first application program running within the user virtual machine is to request execution of or access to the untrusted file;a second application program running as guest software within a sandbox virtual machine, to be executed on the processor of the processing system, the second application program being "forked" as a copy of the first application program, the sandbox virtual machine being a copy of the user virtual machine, wherein in response to the first application program's request to execute or access the untrusted file within the user virtual machine, the second application program running within the sandbox virtual machine (206) to at least one of execute or access the B wherein the state of the first application program serves as a checkpoint of the processing system to revert to if an attack is observed in the second application program untrusted file (204), wherein the sandbox virtual machine's functionality is restricted by the VMM, thereby preventing damage caused by executing or accessing the untrusted file outside of the sandbox virtual machine's execution environment;and a policy enforcer virtual machine to be executed on a processor of the processing system to identify and mark files that are untrusted instead of the VMM identifying and marking the untrusted files, and to enforce a sandbox policy defining allowable actions to be taken by the second application program running as guest software within the sandbox virtual machine during at least one of execution or accessing of the untrusted file.
  3. 12
    A computer readable storage medium comprising program code adapted to carry out a method according to any one of claims 1 to 5 when run on a computer.