IP Library Granted Patent US 8,813,227
Granted Patent B2
US 8,813,227 · App. 13/074,831 · Granted Aug 19, 2014

System and method for below-operating system regulation and control of self-modifying code

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,813,227
App. No.
13/074,831
Granted
Aug 19, 2014
Kind
B2
Abstract

A system for securing an electronic device may include a memory, a processor; one or more operating systems residing in the memory for execution by the processor; and a security agent configured to execute on the electronic device at a level below all of the operating systems of the electronic device accessing the memory. The security agent may be further configured to: (i) trap attempted accesses to the memory, wherein each of such attempted accesses may, individually or in the aggregate, indicate the presence of self-modifying malware; (ii) in response to trapping each attempted access to the memory, record information associated with the attempted access in a history; and (iii) in response to a triggering attempted access associated with a particular memory location, analyze information in the history associated with the particular memory location to determine if suspicious behavior has occurred with respect to the particular memory location.

Claims (58)

1. A method for securing an electronic device, comprising:

trapping, at a level below all of operating systems of the electronic device accessing a memory, attempted accesses to the memory, wherein each of such attempted accesses, individually or in aggregate, indicates a presence of self-modifying malware;

in response to trapping each attempted access to memory, recording information associated with the attempted access in a history; and

in response to a triggering attempted access associated with a particular memory location, analyzing information in the history associated with the particular memory location to determine if suspicious behavior has occurred with respect to the particular memory location, wherein analyzing information in the history comprises:

determining that suspicious behavior has occurred if information in the history indicates that the content at a first memory location was copied to a second location, modified at the second location, and then an attempted execution of the content of the second location has occurred;

determining that suspicious behavior has occurred if information in the history indicates that the content at a third memory location and a fourth memory location each having a common ancestor at a fifth location have each been the target of an attempted execution; and

determining that suspicious behavior has occurred if information in the history indicates that the content at a particular memory location has ancestors at a plurality of other memory locations;

initiating corrective action in response to determining that suspicious behavior has occurred with respect to the particular memory location;

determining whether the particular memory location has been affected by malware; and

initiating further corrective action in response to determining that the memory location has been affected by malware, wherein initiating further corrective action comprises at least one of: disallowing execution of content associated with the memory location, reversing changes to the content set forth in the history, repairing the content, replacing the content with harmless content, and disabling a process associated with the content.

2. The method of claim 1 , wherein initiating corrective action comprises communicating forensic evidence to a protection server.

3. The method of claim 1 , wherein initiating corrective action comprises comparing content of the particular memory location with known processes to determine if the memory location has been affected by malware.

4. The method of claim 1 , the attempted accesses to memory comprising at least one of: a change to memory permissions, copying of content of one memory location to another memory location, modification of content of a memory location, and execution of a memory location.

5. The method of claim 1 , the triggering attempted access comprising an attempted execution of content at the particular memory location.

6. The method of claim 1 , wherein, with respect to the particular memory location, recording information associated with attempted accesses to the particular memory location in the history initiates in response to a second triggering attempted access.

7. The method of claim 1 , wherein a second triggering attempted access is an attempted access to change permissions associated with the particular memory location.

8. The method of claim 1 , wherein:

the trapping, recording, and analyzing are performed by a below-operating system security agent;

the memory is associated with a processor; and

the processor is configured to access the below-operating system security agent and to execute additional programs in the memory.

9. A system for securing an electronic device, comprising:

a memory;

a processor;

one or more operating systems residing in the memory for execution by the processor;

a security agent configured to execute on the electronic device at a level below all of operating systems of the electronic device accessing the memory, and further configured to:

trap attempted accesses to the memory, wherein each of such attempted accesses, individually or in aggregate, indicates a presence of self-modifying malware;

in response to trapping each attempted access to the memory, record information associated with the attempted access in a history; and

in response to a triggering attempted access associated with a particular memory location, analyze information in the history associated with the particular memory location to determine if suspicious behavior has occurred with respect to the particular memory location, wherein analyzing information in the history comprises:

determining that suspicious behavior has occurred if information in the history indicates that the content at a first memory location was copied to a second location, modified at the second location, and then an attempted execution of the content of the second location has occurred;

determining that suspicious behavior has occurred if information in the history indicates that the content at a third memory location and a fourth memory location each having a common ancestor at a fifth location have each been the target of an attempted execution; and

determining that suspicious behavior has occurred if information in the history indicates that the content at a particular memory location has ancestors at a plurality of other memory locations;

initiate corrective action in response to determining that suspicious behavior has occurred with respect to the particular memory location;

determine whether the particular memory location has been affected by malware; and

initiate further corrective action in response to determining that the memory location has been affected by malware, wherein initiating further corrective action comprises at least one of: disallowing execution of content associated with the memory location, reversing changes to the content set forth in the history, repairing the content, replacing the content with harmless content, and disabling a process associated with the content.

10. The system of claim 9 , wherein initiating corrective action comprises communicating forensic evidence to a protection server.

11. The system of claim 9 , wherein initiating corrective action comprises comparing content of the particular memory location with known processes to determine if the memory location has been affected by malware.

12. The system of claim 9 , the attempted accesses to memory comprising at least one of: a change to memory permissions, copying of content of one memory location to another memory location, modification of content of a memory location, and execution of a memory location.

13. The system of claim 9 , the triggering attempted access comprising an attempted execution of content at the particular memory location.

14. The system of claim 9 , wherein, with respect to the particular memory location, recording information associated with attempted accesses to the particular memory location in the history initiates in response to a second triggering attempted access.

15. The system of claim 9 , wherein a second triggering attempted access is an attempted access to change permissions associated with the particular memory location.

16. An article of manufacture, comprising:

a non-transitory computer readable medium;

computer-executable instructions carried on the non-transitory computer readable medium, the instructions readable by a processor, the instructions, when read and executed, for causing the processor to, at a level below all of operating systems of an electronic device accessing a memory:

trap attempted accesses to the memory, wherein each of such attempted accesses, individually or in aggregate, indicates a presence of self-modifying malware;

in response to trapping each attempted access to the memory, record information associated with the attempted access in a history; and

in response to a triggering attempted access associated with a particular memory location, analyze information in the history associated with the particular memory location to determine if suspicious behavior has occurred with respect to the particular memory location, wherein analyzing information in the history comprises:

determining that suspicious behavior has occurred if information in the history indicates that the content at a first memory location was copied to a second location, modified at the second location, and then an attempted execution of the content of the second location has occurred;

determining that suspicious behavior has occurred if information in the history indicates that the content at a third memory location and a fourth memory location each having a common ancestor at a fifth location have each been the target of an attempted execution; and

determining that suspicious behavior has occurred if information in the history indicates that the content at a particular memory location has ancestors at a plurality of other memory locations;

initiate corrective action in response to determining that suspicious behavior has occurred with respect to the particular memory location;

determine whether the particular memory location has been affected by malware; and

initiate further corrective action in response to determining that the memory location has been affected by malware, wherein initiating further corrective action comprises at least one of: disallowing execution of content associated with the memory location, reversing changes to the content set forth in the history, repairing the content, replacing the content with harmless content, and disabling a process associated with the content.

17. The article of claim 16 , wherein initiating corrective action comprises communicating forensic evidence to a protection server.

18. The article of claim 16 , wherein initiating corrective action comprises comparing content of the particular memory location with known processes to determine if the memory location has been affected by malware.

19. The article of claim 16 , wherein the attempted accesses to memory comprises at least one of: a change to memory permissions, copying of content of one memory location to another memory location, modification of content of a memory location, and execution of a memory location.

20. The article of claim 16 , wherein the triggering attempted access comprises an attempted execution of content at the particular memory location.

21. The article of claim 16 , wherein, with respect to the particular memory location, recording information associated with attempted accesses to the particular memory location in the history initiates in response to a second triggering attempted access.

22. The article of claim 16 , wherein a second triggering attempted access is an attempted access to change permissions associated with the particular memory location.

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 Mar 29, 2011
From: SALLAM, AHMED SAID
To: MCAFEE, INC.
Reel/Frame 026043/0778 →