IP Library Granted Patent US 9,679,136
Granted Patent B2
US 9,679,136 · App. 14/943,203 · Granted Jun 13, 2017

Method and system for discrete stateful behavioral analysis

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 9,679,136
App. No.
14/943,203
Granted
Jun 13, 2017
Kind
B2
Abstract

A method for analyzing a computing system includes the steps of at a first moment in time, scanning the resources of the computing system for indications of malware, at a second moment in time scanning the resources of the computing system for indications of malware and determining the system executable objects loaded on the computing system, determining malware system changes, identifying a relationship between the malware system changes and the system executable objects loaded on the computing system, and identifying as suspected malware the system executable objects loaded on the computing system which have a relationship with the malware system changes. The malware system changes include differences between the results of scanning the resources of the computing system for indications of malware at the second and first moment of time.

Claims (94)

1. A system for behavioral analysis, comprising:

a processor;

a non-transitory memory;

a behavioral analysis application including instructions on the non-transitory memory, the instructions, when loaded and executed by the processor, configure the behavioral analysis application to:

at a first moment in time, use anti-virus heuristics and memory forensics to create a first behavioral digest;

store the first behavioral digest and a first set of a plurality of existing system executable objects;

at a second moment in time, use anti-virus heuristics and memory forensics to create a second behavioral digest;

store the second behavioral digest and a second set of a plurality of existing system executable objects;

identify differences between the first behavioral digest and the second behavioral digest;

identify differences between the first set and second set of existing system executable objects;

apply a behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects; and

based upon the behavioral analysis rule, determine whether any system executable objects are infected with malware.

2. The system of claim 1 , wherein the behavioral analysis application is further configured to:

store a first timestamp indicative of the first moment in time in the first behavioral digest;

store a second timestamp indicative of the second moment in time in the second behavioral digest, the second moment in time being after the first moment in time.

3. The system of claim 1 , wherein:

to create the first behavioral digest, the behavioral analysis application is configured to:

perform a first scan of one or more resources of a computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate first results of the anti-virus heuristics and memory forensics;

store the first results in the first behavioral digest;

to create the second behavioral digest, the behavioral analysis application is configured to:

perform a second scan of one or more resources of the computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate second results of the anti-virus heuristics and memory forensics;

store the second results in the second behavioral digest;

to identify differences between the first behavioral digest and the second behavioral digest, the behavioral analysis application is configured to:

identify differences between the first results in the first behavioral digest and the second results in the second behavioral digest.

4. The system of claim 3 , wherein the behavioral analysis application is further configured to:

store information representing the identified differences between the first results in the first behavioral digest and the second results in the second behavioral digest and the identified differences between the first set and second set of existing system executable objects in the second behavioral digest.

5. The system of claim 1 , wherein:

to store the first set of the plurality of existing system executable objects, the behavioral analysis application is configured to store information representing a list of objects in the first set of existing system executable objects in the first behavioral digest;

to store the second set of the plurality of existing system executable objects, the behavioral analysis application is configured to store information representing a list of objects in the second set of existing system executable objects in the second behavioral digest.

6. The system of claim 1 , wherein the behavioral analysis application is further configured to:

determine a candidate system executable object within the first set of system executable objects;

identify the candidate system executable object as infected with malware, based upon application of the behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects.

7. The system of claim 1 , wherein:

the anti-virus heuristics and memory forensics generate stateless result data.

8. At least one non-transitory machine accessible storage medium having instructions stored thereon, the instructions, when executed on an electronic device, to cause the electronic device to:

at a first moment in time, use anti-virus heuristics and memory forensics to create a first behavioral digest;

store the first behavioral digest and a first set of a plurality of existing system executable objects;

at a second moment in time, use anti-virus heuristics and memory forensics to create a second behavioral digest;

store the second behavioral digest and a second set of a plurality of existing system executable objects;

identify differences between the first behavioral digest and the second behavioral digest;

identify differences between the first set and second set of existing system executable objects;

apply a behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects; and

based upon the behavioral analysis rule, determine whether any system executable objects are infected with malware.

9. The medium of claim 8 , further comprising instructions to cause the electronic device to:

store a first timestamp indicative of the first moment in time in the first behavioral digest;

store a second timestamp indicative of the second moment in time in the second behavioral digest, the second moment in time being after the first moment in time.

10. The medium of claim 8 , wherein:

to create the first behavioral digest, the instructions further cause the electronic device to:

perform a first scan of one or more resources of a computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate first results of the anti-virus heuristics and memory forensics;

store the first results in the first behavioral digest;

to create the second behavioral digest, the instructions further cause the electronic device to:

perform a second scan of one or more resources of the computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate second results of the anti-virus heuristics and memory forensics;

store the second results in the second behavioral digest;

to identify differences between the first behavioral digest and the second behavioral digest, the instructions further cause the electronic device to:

identify differences between the first results in the first behavioral digest and the second results in the second behavioral digest.

11. The medium of claim 10 , further comprising instructions to cause the electronic device to:

store information representing the identified differences between the first results in the first behavioral digest and the second results in the second behavioral digest and the identified differences between the first set and second set of existing system executable objects in the second behavioral digest.

12. The medium of claim 8 , wherein:

to store the first set of the plurality of existing system executable objects, the instructions further cause the electronic device to store information representing a list of objects in the first set of existing system executable objects in the first behavioral digest;

to store the second set of the plurality of existing system executable objects, the instructions further cause the electronic device to store information representing a list of objects in the second set of existing system executable objects in the second behavioral digest.

13. The medium of claim 8 , further comprising instructions to cause the electronic device to:

determine a candidate system executable object within the first set of system executable objects;

identify the candidate system executable object as infected with malware, based upon application of the behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects.

14. The medium of claim 8 , wherein:

the anti-virus heuristics and memory forensics generate stateless result data.

15. A method for analyzing a computing system, comprising:

at a first moment in time, applying anti-virus heuristics and memory forensics to the computing system to create a first behavioral digest;

storing the first behavioral digest and a first set of a plurality of existing system executable objects that were active on the computing system at the first moment in time;

at a second moment in time, applying the anti-virus heuristics and memory forensics to the computing system to create a second behavioral digest;

storing the second behavioral digest and a second set of a plurality of existing system executable objects that were active on the computing system at the second moment in time;

identifying differences between the first behavioral digest and the second behavioral digest;

identifying differences between the first set and second set of existing system executable objects;

applying a behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects; and

based upon the behavioral analysis rule, determining whether any system executable objects are infected with malware.

16. The method of claim 15 , further comprising:

storing a first timestamp indicative of the first moment in time in the first behavioral digest;

storing a second timestamp indicative of the second moment in time in the second behavioral digest, the second moment in time being after the first moment in time.

17. The method of claim 15 , wherein:

creating the first behavioral digest comprises:

performing a first scan of one or more resources of a computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate first results of the anti-virus heuristics and memory forensics;

storing the first results in the first behavioral digest;

creating the second behavioral digest comprises:

performing a second scan of one or more resources of the computer system in which the anti-virus heuristics and memory forensics are applied to the scanned resources to generate second results of the anti-virus heuristics and memory forensics;

storing the second results in the second behavioral digest;

identifying differences between the first behavioral digest and the second behavioral digest comprises:

identifying differences between the first results in the first behavioral digest and the second results in the second behavioral digest.

18. The method of claim 17 , further comprising:

storing information representing the identified differences between the first results in the first behavioral digest and the second results in the second behavioral digest and the identified differences between the first set and second set of existing system executable objects in the second behavioral digest.

19. The method of claim 15 , wherein:

storing the first set of the plurality of existing system executable objects comprises storing information representing a list of objects in the first set of existing system executable objects in the first behavioral digest;

storing the second set of the plurality of existing system executable objects comprises storing information representing a list of objects in the second set of existing system executable objects in the second behavioral digest.

20. The method of claim 15 , further comprising:

determining a candidate system executable object within the first set of system executable objects;

identifying the candidate system executable object as infected with malware, based upon application of the behavioral analysis rule to the identified differences between the behavioral digests and the sets of system executable objects.

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 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 →
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 →
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 11, 2016
From: SALLAM, AHMED SAID
To: MCAFEE, INC.
Reel/Frame 037706/0615 →