IP Library Granted Patent US 8,561,204
Granted Patent B1
US 8,561,204 · App. 11/673,762 · Granted Oct 15, 2013

System, method, and computer program product for utilizing code stored in a protected area of memory for securing an associated system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,561,204
App. No.
11/673,762
Granted
Oct 15, 2013
Kind
B1
Abstract

A security system, method, and computer program product are provided. In use, code is stored in a protected area of memory. In addition, the stored code is utilized for securing a system associated with the protected area of memory.

Claims (37)

1. A method, comprising:

storing code in a protected area of memory in a system, wherein read, write, and execute access to the protected area of memory is controlled utilizing a control agent located outside the system;

initiating execution on the system, by the control agent, of at least a portion of the stored code; and

securing, by the control agent, code and data stored outside the protected area of memory and within the system utilizing the stored code in the protected area of memory.

2. The method of claim 1 , wherein the protected area of memory is enabled via at least one of a virtual machine, a hardware extension, and a bias extension.

3. The method of claim 1 , wherein securing the system includes receiving a secure view of the system at the stored code.

4. The method of claim 1 , wherein securing the system includes at least one of detecting unwanted code, monitoring at least one aspect associated with the system, and preventing data leakage.

5. The method of claim 1 , wherein the system is secured utilizing a security system.

6. The method of claim 5 , wherein the security system is stored within the system associated with the protected area of memory.

7. The method of claim 5 , wherein the security system is stored outside of the system associated with the protected area of memory.

8. The method of claim 1 , wherein the code stored in the protected area of memory is inaccessible to at least one of a thread and a process running in the system associated with the protected area of memory.

9. The method of claim 1 , wherein the code stored in the protected area of memory is executed within at least one of a thread and a process running in the system associated with the protected area of memory.

10. The method of claim 1 , further comprising invoking in a secure manner an application program interface within the system associated with the protected area of memory and outside of the protected area of memory.

11. The method of claim 10 , further comprising validating code associated with the application program interface.

12. The method of claim 10 , further comprising monitoring control transfer instructions associated with the invocation of the application program interface.

13. The method of claim 1 , wherein at least a portion of the code and data stored outside the protected area of memory and within the system associated with the protected area of memory is initialized utilizing the code stored in the protected area of memory.

14. The method of claim 1 , wherein a checksum is performed when a secure application program interface associated with the protected area of memory and stored outside of the protected area of memory is invoked, where the performing of the checksum includes comparing a current checksum of the code and data stored outside the protected area of memory and within the system with a previously stored checksum of the code and data stored outside the protected area of memory and within the system.

15. The method of claim 1 , wherein securing the code and data stored outside the protected area of memory includes initializing at least a portion of code and data within a secondary protected area utilizing the stored code and data in the protected area of memory.

16. The method of claim 1 , wherein a callback function is invoked when the protected area of memory is accessed, where the callback function is received by registered software within the protected area of memory.

17. A computer program product embodied on a non-transitory computer readable medium comprising executable instructions to cause a programmable processor to:

utilize a control agent located outside of a system to access stored code in a protected area of memory in the system, the control agent controlling read, write, and execute access to the protected area of the memory;

utilize the control agent to initiate execution, on the system, of at least a portion of the stored code for securing the system; and

secure, by the control agent, code and data stored outside the protected area of memory and within the system utilizing the stored code in the protected area of memory.

18. A system, comprising:

memory for storing code in a protected area of a system, wherein read, write, and execute access to the protected area of memory is controlled utilizing a control agent located outside the system; and

a processor in communication with the control agent, the control agent configured to

initiate execution, on the system, of at least a portion of the stored code, and

secure code and data stored outside the protected area of memory and within the system utilizing the stored code in the protected area of memory.

19. A method, comprising:

storing code in a protected area of memory of a system, the system comprising a memory, a processor, and one or more user interface devices, wherein read, write, and execute access to the protected area of memory is controlled utilizing a control agent located outside the system; and

utilizing, by the control agent, the stored code for securing code and data stored within the memory of the system but outside of the protected area of memory, wherein utilizing comprises initiating execution, on the system, of at least a portion of the stored code.

20. The method of claim 19 , wherein the act of securing the code and data stored within the memory of the system includes at least one of detecting unwanted code, monitoring at least one aspect associated with the system, and preventing data leakage.

21. The method of claim 19 , wherein the stored code communicates with a security system located outside of the system.

22. A computer program product embodied on a non-transitory computer readable medium comprising executable instructions to cause a programmable processor to:

utilize a control agent located outside of a system to access stored code in a protected area of memory in the system, the system including the protected area of memory, additional memory, one or more processors and one or more user interface devices; and

permit the control agent to control read, write, and execute access to the protected area of memory and to initiate execution, on the system, of at least a portion of the stored code,

wherein instructions to cause a programmable processor to permit the control agent to control access to the protected area of memory includes instructions to cause the programmable processor to secure program code and data stored within the additional memory of the system and outside of the protected area of memory.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2007
From: DALCHER, GREGORY WILLIAM
To: MCAFEE, INC.
Reel/Frame 018893/0229 →