Back to results
US 8,555,061 B2Granted
Transparent code
AssigneeMicrosoft Corporation
InventorsJeffrey M. Cooperstein, Charles W. Kaufman, Raja Krishnaswamy
Life of this patent
Estimating the term…
Abstract
Assertions for elevated privilege associated with transparent code may be ignored, prohibited, or modified.
Claims15
A method performed on a computing device, the method comprising:
- detecting, by a computer, that an operation associated with a portion of code is not permitted to be executed;
- executing a security audit on the portion of the code;
- determining, by the computer, that the portion of the code is not security critical, wherein security critical indicates that code be verified as permissible before execution;
- detecting, by the computer, an assertion to elevate a permission required to execute the operation;
- inferring, by the computer based on the determining and the detected assertion, that the portion of the code is transparent, wherein the transparent portion of the code is limited from elevating a privilege for the operation of the transparent portion of the code;
- tracing, by the computer in response to the inferring, a call stack that tracks calls made by at least one method;
- and
- executing the operation, by the computer in response to the tracing revealing that a required permission is associated with the at least one method and in response to at least one of the calls made by the at least one method and to the portion of the code, wherein the required permission indicates that the at least one method is allowed to perform the operation.
5 more elements
At least one computer-readable storage device storing computer-readable instructions that, when executed by a computing device, cause the computing device to perform actions comprising:
- detecting an assertion of elevated privilege associated with at least one portion of transparent code, wherein the transparent code includes an operation that is not permitted to be executed, and wherein the transparent code is limited from elevating a privilege for the operation of the transparent code;
- performing a security audit on the at least one portion of transparent code;
- determining, based on a stack trace, that one or more calling methods that made one or more calls to the transparent code have permission to execute the operation;
- enforcing, based on the assertion of elevated privilege and the permission, a security policy on the transparent code;
- and
- executing the operation of the transparent code upon verification of the elevated privilege and based on the enforcing.
3 more elements
A system comprising:
- a computing device including a memory;
- a detector implemented by the computing device and configured for detecting that an operation of one or more portions of code is not permitted to be executed, and for detecting an assertion of elevated privilege associated with the one or more portions of the code, and for determining that calls made to the one or more portions of the code are to be verified as permissible before execution of the operation, where the one or more portions of the code is limited from elevating a privilege for the operation of the one or more portions of the code, and where a security audit is performed on at least one of the one or more portions of the code;
- an enforcer implemented by the computing device and configured for tracing, in response to the determining, a call stack that tracks calls made by at least one method to the one or more portions of the code;
- and
- and executor implemented by the computing device and configured for executing, in response to the tracing revealing that a required permission is associated with the at least one method that made at least one of the calls made to the one or more portions of the code and in response to at least one of the calls made to the one or more portions of the code, the operation associated with the one or more portions of the code, where the required permission indicates that the at least one method is allowed to perform the operation.
2 more elements
Dependencies are inferred from the claim text.