IP Library Granted Patent US 11,252,167
Granted Patent B2
US 11,252,167 · App. 15/929,458 · Granted Feb 15, 2022

System and method for detecting and classifying malware

Inventors: Abhijit Mohanta (Mayurbhanj, IN); Anoop Wilbur Saldanha (Mangalore, IN)
Assignee: Cyphort Inc.
H04L63/1425G06F9/45504G06F21/566G06N20/00H04L63/0209H04L63/1441
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 11,252,167
App. No.
15/929,458
Granted
Feb 15, 2022
Kind
B2
Abstract

A network device may include a memory and one or more processors configured to analyze execution of suspicious data; detect one or more states of execution of the suspicious data; determine that the one or more states of execution are to be assigned a priority level; and extract at least a portion of the suspicious data from one or more locations based on determining that the one or more states of execution are to be assigned a priority level.

Claims (69)

1. A method comprising:

analyzing, by a device, execution of suspicious data,

wherein the suspicious data is packed prior to execution;

detecting, by the device, one or more states of execution of the suspicious data; and

extracting, by the device, at least a portion of the suspicious data from one or more locations based on detecting the one or more states of execution.

2. The method of claim 1 , wherein the one or more states of execution indicate that at least the portion of the suspicious data is unpacked in memory.

3. The method of claim 1 , wherein extracting the at least the portion of the suspicious data comprises:

extracting the at least the portion of the suspicious data from memory.

4. The method of claim 1 , further comprising:

executing the suspicious data in one or more of a physical environment, an emulated environment, or a virtualized environment.

5. The method of claim 1 , wherein detecting the one or more states of execution comprises:

detecting at least one of:

an application programming interface (API) call,

a parameter passed to an API,

a stateful condition, or

a non-stateful condition.

6. The method of claim 1 , wherein detecting the one or more states of execution comprises:

detecting a presence, in memory of the device, of one or more strings that were previously not present in the memory.

7. The method of claim 1 , wherein detecting the one or more states of execution comprises:

detecting a presence, in memory of the device, of at least one string that:

is human readable and which was previously not in the memory,

indicates the suspicious data is attempting to detect security tools,

indicates the suspicious data is attempting to detect whether a current execution environment is virtual, or

indicates a family of malware.

8. A device, comprising:

one or more memories; and

one or more processors, communicatively coupled to the one or more memories, configured to:

analyze execution of suspicious data,

wherein the suspicious data is packed prior to execution;

detect one or more states of execution of the suspicious data; and

extract at least a portion of the suspicious data from one or more locations based on detecting the one or more states of execution.

9. The device of claim 8 , wherein the one or more states of execution indicate that at least the portion of the suspicious data is unpacked in memory.

10. The device of claim 8 , wherein the one or more processors, when extracting the at least the portion of the suspicious data, are configured to:

extract the at least the portion of the suspicious data from the one or more memories.

11. The device of claim 8 , wherein the one or more processors are further configured to:

execute the suspicious data in one or more of a physical environment, an emulated environment, or a virtualized environment.

12. The device of claim 8 , wherein the one or more processors, when detecting the one or more states of execution, are configured to:

detect at least one of:

an application programming interface (API) call,

a parameter passed to an API,

a stateful condition, or

a non-stateful condition.

13. The device of claim 8 , wherein the one or more processors, when detecting the one or more states of execution, are configured to:

detect a presence, in the one or more memories, of one or more strings that were previously not present in the one or more memories.

14. The device of claim 8 , wherein the one or more processors, when detecting the one or more states of execution, are configured to:

detect a presence, in the one or more memories, of at least one string that:

is human readable and which was previously not in the one or more memories,

indicates the suspicious data is attempting to detect security tools,

indicates the suspicious data is attempting to detect whether a current execution environment is virtual, or

indicates a family of malware.

15. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the one or more processors to:

analyze execution of suspicious data,

wherein the suspicious data is packed prior to execution;

detect one or more states of execution of the suspicious data; and

extract at least a portion of the suspicious data from one or more locations based on detecting the one or more states of execution.

16. The non-transitory computer-readable medium of claim 15 , wherein the one or more states of execution indicate that at least the portion of the suspicious data is unpacked in memory.

17. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, that cause the one or more processors to extract the at least the portion of the suspicious data, cause the one or more processors to:

extract the at least the portion of the suspicious data from memory.

18. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, when executed by the one or more processors, further cause the one or more processors to:

execute the suspicious data in one or more of a physical environment, an emulated environment, or a virtualized environment.

19. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, that cause the one or more processors to detect the one or more states of execution, cause the one or more processors to:

detect at least one of:

an application programming interface (API) call,

a parameter passed to an API,

a stateful condition, or

a non-stateful condition.

20. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, that cause the one or more processors to detect the one or more states of execution, cause the one or more processors to:

detect a presence, in memory of the device, of one or more strings that were previously not present in the memory.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: CYPHORT INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0143 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2022
From: MOHANTA, ABHIJIT; SALDANHA, ANOOP WILBUR
To: CYPHORT INC.
Reel/Frame 059983/0563 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2020
From: MOHANTA, ABHIJIT; SALDANHA, ANOOP WILBUR
To: CYPHORT INC.
Reel/Frame 052560/0593 →
Priority Claims (1)
IN 201711002525 · Jan 23, 2017 · national
Continuity (2)
Continuation 15872187 · Jan 16, 2018
Related Publication 20200267170A1 · Aug 20, 2020