IP Library Granted Patent US 9,152,788
Granted Patent B2
US 9,152,788 · App. 13/973,229 · Granted Oct 6, 2015

Detecting a malware process

Inventor: Wanquan Nie (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
G06F21/56G06F21/554G06F21/566
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,152,788
App. No.
13/973,229
Granted
Oct 6, 2015
Kind
B2
Abstract

Detecting a malware process is disclosed, including: monitoring a launch of a process; in response to a completion of the launch of the process, determining a base address associated with the process; determining a permission of a memory block associated with the base address; and determining whether the process is potentially associated with a malware process based at least in part on the determined permission.

Claims (49)

1. A system for detecting malware processes, comprising:

one or more processors configured to:

monitor a launch of a process;

in response to a completion of the launch of the process and prior to an execution of the process, determine a base address associated with the process, wherein the base address associated with the process is associated with a memory block from which instructions are to be read and executed;

determine a permission of the memory block associated with the base address, wherein the permission of the memory block is associated with whether at least one of reading and writing is permitted at the memory block; and

determine whether the process is potentially associated with a malware process based at least in part on the determined permission of the memory block,

wherein in the event that the permission of the memory block comprises a read-only permission:

determine that the process is not potentially associated with the malware process; and

permit the execution of the process; and

wherein in the event that the permission of the memory block does not comprise the read-only permission:

determine whether a portable executable (PE) header code included in the memory image associated with the process matches a designated code;

determine whether the process is potentially associated with the malware process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code; and

determine to prevent the execution of the process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code; and

one or more memories coupled to the one or more processors and configured to provide the one or more processors with instructions.

2. The system of claim 1 , wherein the base address is determined based at least in part on a return address associated with an extended instructed pointer (EIP) information corresponding to the process.

3. The system of claim 1 , wherein the base address is recorded by an operating system.

4. The system of claim 1 , wherein the permission that does not comprise the read-only permission permits writing.

5. The system of claim 4 , wherein in the event that the permission of the memory block does not comprise the read-only permission, the one or more processors are further configured to present a warning message associated with the malware process at a user interface.

6. The system of claim 1 , wherein in the event that the PE header code associated with the process matches the designated code, the one or more processors are further configured to determine that the process is potentially associated with the malware process and prevent the execution of the process.

7. The system of claim 6 , wherein in the event that the PE header code associated with the process does not match the designated code, the one or more processors are further configured to determine that the process is not associated with the malware process and permit the execution of the process.

8. A method for detecting malware processes, comprising:

monitoring a launch of a process;

in response to a completion of the launch of the process and prior to an execution of the process, determining, using one or more processors, a base address associated with the process, wherein the base address associated with the process is associated with a memory block from which instructions are to be read and executed;

determining a permission of the memory block associated with the base address, wherein the permission of the memory block is associated with whether at least one of reading and writing is permitted at the memory block; and

determining whether the process is potentially associated with a malware process based at least in part on the determined permission of the memory block,

wherein in the event that the permission of the memory block comprises a read-only permission:

determining that the process is not potentially associated with the malware process; and

permitting the execution of the process; and

wherein in the event that the permission of the memory block does not comprise the read-only permission:

determining whether a portable executable (PE) header code included in the memory image associated with the process matches a designated code;

determining whether the process is potentially associated with the malware process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code; and

determining whether to prevent the execution of the process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code.

9. The method of claim 8 , wherein the base address is determined based at least in part on a return address associated with an extended instructed pointer (EIP) information corresponding to the process.

10. The method of claim 8 , wherein the permission that does not comprise the read-only permission permits writing.

11. The method of claim 10 , wherein in the event that the permission of the memory block does not comprise the read-only permission, further comprising presenting a warning message associated with the malware process at a user interface.

12. The method of claim 8 , wherein in the event that the PE header code associated with the process matches the designated code, further comprising determining that the process is potentially associated with the malware process and preventing the execution of the process.

13. The method of claim 8 , wherein in the event that the PE header code associated with the process does not match the designated code, further comprising determining that the process is not associated with the malware process and permitting the execution of the process.

14. A computer program product for detecting malware processes, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

monitoring a launch of a process;

in response to a completion of the launch of the process and prior to an execution of the process, determining a base address associated with the process, wherein the base address associated with the process is associated with a memory block from which instructions are to be read and executed;

determining a permission of the memory block associated with the base address, wherein the permission of the memory block is associated with whether at least one of reading and writing is permitted at the memory block; and

determining whether the process is potentially associated with a malware process based at least in part on the determined permission of the memory block,

wherein in the event that the permission of the memory block comprises a read-only permission:

determining that the process is not potentially associated with the malware process; and

permitting the execution of the process; and

wherein in the event that the permission of the memory block does not comprise the read-only permission:

determining whether a portable executable (PE) header code included in the memory image associated with the process matches a designated code;

determining whether the process is potentially associated with the malware process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code; and

determining whether to prevent the execution of the process based at least in part on whether the PE header code included in the memory image associated with the process matches the designated code.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2026
From: ALIBABA GROUP HOLDING LIMITED
To: CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PRIVATE LIMITED
Reel/Frame 075478/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2013
From: NIE, WANQUAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 031062/0461 →
Priority Claims (1)
CN 2012 1 0310462 · Aug 28, 2012 · national
Continuity (1)
Related Publication 20140068774A1 · Mar 6, 2014