Method and system for automatic detection and analysis of malware

US10530802B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10530802-B2
Application numberUS-201615003273-A
CountryUS
Kind codeB2
Filing dateJan 21, 2016
Priority dateAug 26, 2010
Publication dateJan 7, 2020
Grant dateJan 7, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of detecting malicious software (malware) includes receiving a file and storing a memory baseline for a system. The method also includes copying the file to the system, executing the file on the system, terminating operation of the system, and storing a post-execution memory map. The method further includes analyzing the memory baseline and the post-execution memory map and determining that the file includes malware.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of detecting malicious software, the method comprising: storing, by an analysis system, a memory baseline for a first system, the memory baseline including information stored in a memory of the first system; executing, by the analysis system, a file on the first system using an operating system of the first system after the storing the memory baseline; storing, by the analysis system, a post-execution memory map of the first system, the post-execution memory map including information stored in the memory of the first system after the executing the file; analyzing, by the analysis system, the memory baseline and the post-execution memory map, wherein analyzing comprises: determining a presence of one or more processes that changed from the memory baseline to the post-execution memory map by: comparing one or more EPROCESS data items included in the memory baseline to one or more EPROCESS data items included in the post-execution memory map via an analysis of a first set of timestamps associated with the one or more EPROCESS data items included in the memory baseline and a second set of timestamps associated with the one or more EPROCESS data items included in the post-execution memory map, and identifying behaviors that indicate attempts to conceal a rootkit during operation of the operating system; determining, by the analysis system, that the file comprises malicious software based on the analyzing; determining, by the analysis system, a timeline of activities performed by the malicious software based on a third set of timestamps associated with the one or more processes; and reporting, by the analysis system, the malicious software including a list of the one or more processes that changed and the timeline. 2. The method of claim 1 , wherein the reporting comprises transmitting a list identifying the one or more processes that changed and the timeline. 3. The method of claim 1 , further comprising receiving one or more preferences related to the file, wherein the receiving the one or more preferences comprises receiving at least one of a time to run, a reboot indicator, an operating system, and a privilege level. 4. The method of claim 1 , wherein the memory baseline is used for multiple analysis processes. 5. The method of claim 1 , wherein determining the presence of one or more processes that changed comprises determining that the file added a new process. 6. The method of claim 1 , wherein determining the presence of one or more processes that changed comprises determining that the file deleted a process. 7. The method of claim 1 , wherein the file includes a signature associated with malicious software. 8. The method of claim 1 further comprising associating with the file, in a tree structure, files caused to be loaded to the first system by executing the file. 9. The method of claim 1 , wherein the behaviors that indicate attempts to conceal the rootkit comprise: attempts to hide kernel drivers; attempts to inject code or unlink dynamic link libraries (DLLs); attempts to hide network sockets and connections; attempts to hide suspicious data in process memory; attempts to install hook in user or kernel mode memory; attempts to modify Interrupt Descriptor Table (IDT), System Service Dispatch Table (SSDT), and driver I/O request packet (IRP) entries; attempts to hide threads; attempts to register malicious notification routines; and attempts to install promiscuous mode packet sniffers. 10. A system of detecting malicious software, the system comprising: a processor; and a storage device, wherein the storage device contains instructions that, when executed by the processor, causes the system to perform operations comprising: storing a memory baseline for a first system, the memory baseline including information stored in a memory of the first system; executing a file on the first system using an operating system of the first system after the storing the memory baseline; storing a post-execution memory map of the first system, the post-execution memory map including information stored in the memory of the first system after the executing the file; analyzing the memory baseline and the post-execution memory map, wherein analyzing comprises: determining a presence of one or more processes that changed from the memory baseline to the post-execution memory map by: comparing one or more EPROCESS data items included in the memory baseline to one or more EPROCESS data items included in the post-execution memory map via an analysis of a first set of timestamps associated with the one or more EPROCESS data items included in the memory baseline and a second set of timestamps associated with the one or more EPROCESS data items included in the post-execution memory map, and identifying behaviors that indicate attempts to conceal a rootkit during operation of the operating system; determining that the file comprises malicious software based on the analyzing; determining a timeline of activities performed by the malicious software based on a third set of timestamps associated with the one or more processes; and reporting the malicious software including a list of the one or more processes that changed and the timeline. 11. The system of claim 10 , wherein the reporting comprises transmitting a list identifying the one or more processes that changed and the timeline. 12. The system of claim 10 , wherein the operations further comprise receiving one or more preferences related to the file, wherein the one or more preferences include at least one of: a time to run, a reboot indicator, an operating system, and a privilege level. 13. The system of claim 10 , wherein the memory baseline is used for multiple analysis processes. 14. The system of claim 10 , wherein determining the presence of one or more processes that changed comprises determining that the file added a new process. 15. The system of claim 10 , wherein determining the presence of one or more processes that changed comprises determining that the file deleted a process. 16. The system of claim 10 , wherein the file includes a signature associated with malicious software. 17. The system of claim 10 , wherein the operations further comprise associating with the file, in a tree structure, files caused to be loaded to the first system by executing the file. 18. The system of claim 10 , wherein the behaviors that indicate attempts to conceal the rootkit comprise: attempts to hide kernel drivers; attempts to inject code or unlink dynamic link libraries (DLLs); attempts to hide network sockets and connections; attempts to hide suspicious data in process memory; attempts to install hook in user or kernel mode memory; attempts to modify Interrupt Descriptor Table (IDT), System Service Dispatch Table (SSDT), and driver I/O request packet (IRP) entries; attempts to hide threads; attempts to register malicious notification routines; and attempts to install promiscuous mode packet sniffers. 19. One or more non-transitory computer-readable media storing program instructions that, when executed by one or more processing units, cause the one or more processing units to detect malicious software by performing the steps of: storing, by an analysis system, a memory baseline for a first system, the memory baseline including information stored in a memory of the first system; executing, by the analysis system, a file on the first system using an operating system of the first system after the storing the memory baseline; s

Assignees

Inventors

Classifications

  • Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities · CPC title

  • Auditing as a secondary aspect · CPC title

  • Detecting local intrusion or implementing counter-measures · CPC title

  • Third party · CPC title

  • Management of files · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10530802B2 cover?
A method of detecting malicious software (malware) includes receiving a file and storing a memory baseline for a system. The method also includes copying the file to the system, executing the file on the system, terminating operation of the system, and storing a post-execution memory map. The method further includes analyzing the memory baseline and the post-execution memory map and determining…
Who is the assignee on this patent?
Verisign Inc
What technology area does this patent fall under?
Primary CPC classification H04L63/1433. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 07 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).