A method that protects computer data from untrusted programs. Each computer's object and process is assigned with trust attributes, which define the way it can interact with other objects within the system. When an object is classified as untrusted, it can interact with other object within the system on a limited basis. A virtualized system is provided on the computer so that when the untrusted object attempts to perform an operation that is outside its scope of authorization, the virtualized system intercepts the operation but present the untrusted program with an indication that the requested operation has been performed. The method further includes processes to securely move a program from an untrusted group to a trusted group.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that the program should not be run on an unlimited trusted mode, causing the computer to: when the program attempts to delete a named file, performing the operations: checking whether a delete operation on the named file has already been executed and, if so, returning a file not found indication; otherwise: if the named file exists in the real directory only, creating a deleted indicator and returning a success indication, if the named file exists in the virtual directory only, erasing the named file, and if the named file exists in both the real and virtual directories, creating a deleted indicator, erasing the named file from the virtual directory, and returning a success indication; and, further comprising causing the computer to: intercept a disallowed operation request sent from the program to the computer's operating system; and, perform one of: execute the operation request without providing it to the operating system; or, modify the operation request and provide the modified operation request to the operating system; send to the program an indication that the disallowed operation request has been performed as requested by the program.
2. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that the program should not be run on an unlimited trusted mode, causing the computer to: when the program attempts to rename a named file, performing the operations: if the named file exists in the real directory only, copying the named file into the virtual directory, renaming the named file in the virtual directory, and generating a deleted indicator for the named file, if the named file exists in the virtual directory only, renaming the named file, and if the named file exists in both the real and virtual directories, renaming the named file in the virtual directory, generating a delete indicator for the named, and returning a success indication; and, further comprising causing the computer to: intercept a disallowed operation request sent from the program to the computer's operating system; and, perform one of: execute the operation request without providing it to the operating system; or, modify the operation request and provide the modified operation request to the operating system; send to the program an indication that the disallowed operation request has been performed as requested by the program.
3. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that a program should not be run on an unlimited trusted mode, causing the computer to: when the program issues a file inquiry, returning a true indication if: the file exists in the virtual directory; or the file exists in a real directory and no indication that a previous virtualized delete operation has been performed is found; and, further comprising causing the computer to: intercept a disallowed operation request sent from the program to the computer's operating system; and, perform one of: execute the operation request without providing it to the operating system; or, modify the operation request and provide the modified operation request to the operating system; send to the program an indication that the disallowed operation request has been performed as requested by the program.
4. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that the program should not be run on an unlimited trusted mode, causing the computer to: when the program attempts to delete a named file, performing the operations: checking whether a delete operation on the named file has already been executed and, if so, returning a file not found indication; otherwise: if the named file exists in the real directory only, creating a deleted indicator and returning a success indication, if the named file exists in the virtual directory only, erasing the named file, and if the named file exists in both the real and virtual directories, creating a deleted indicator, erasing the named file from the virtual directory, and returning a success indication; send to the program an indication that the disallowed operation request has been performed as requested by the program; and, further comprising causing the computer to: for each subsequent program that should not be allowed to run on the computer on an unlimited mode, create a subsequent virtual directory.
5. The computerized method of claim 4 , further comprising causing the computer to delete at least one subsequent virtual directory to return the computer to its original condition.
6. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that the program should not be run on an unlimited trusted mode, causing the computer to: when the program attempts to rename a named file, performing the operations: if the named file exists in the real directory only, copying the named file into the virtual directory, renaming the named file in the virtual directory, and generating a deleted indicator for the named file, if the named file exists in the virtual directory only, renaming the named file, and if the named file exists in both the real and virtual directories, renaming the named file in the virtual directory, generating a delete indicator for the named, and returning a success indication; send to the program an indication that the disallowed operation request has been performed as requested by the program; and, further comprising causing the computer to: for each subsequent program that should not be allowed to run on the computer on an unlimited mode, create a subsequent virtual directory.
7. The computerized method of claim 6 , further comprising causing the computer to delete at least one subsequent virtual directory to return the computer to its original condition.
8. A computerized method of managing a computer's operation in a computer having a real directory, comprising: causing the computer to create a virtual directory; monitoring operation of a program; when it is determined that a program should not be run on an unlimited trusted mode, causing the computer to: when the program issues a file inquiry, returning a true indication if: the file exists in the virtual directory; or the file exists in a real directory and no indication that a previous virtualized delete operation has been performed is found; send to the program an indication that the disallowed operation request has been performed as requested by the program; and, further comprising causing the computer to: for each subsequent program that should not be allowed to run on the computer on an unlimited mode, create a subsequent virtual directory.
9. The computerized method of claim 8 , further comprising causing the computer to delete at least one subsequent virtual directory to return the computer to its original condition.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
July 8, 2013
September 16, 2014
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.