IP Library Granted Patent US 10,484,423
Granted Patent B2
US 10,484,423 · App. 15/436,301 · Granted Nov 19, 2019

System and method for detecting and monitoring thread creation

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 10,484,423
App. No.
15/436,301
Granted
Nov 19, 2019
Kind
B2
Abstract

A system for collection and analysis of forensic and event data comprising a server and an endpoint agent operating on a remote system. The server is configured to receive event data including process creation data, persistent process data, thread injection data, network connection data, memory pattern data, or any combination thereof, and analyze the event data to detect compromises of a remote system. The endpoint agent is configured to acquire event data, and communicate the event data to the server.

Claims (39)

1. A method of monitoring network connections for malicious activity, comprising:

identifying creation of a new thread;

determining the creation of the new thread is a remote thread creation event when a target process and a creating process are different;

logging the remote thread creation event, wherein the logging includes source process information, target process information, and a portion of the data stored at the start address of the thread;

evaluating the new thread based on a set of rules to determine the thread is malicious or compromised, the set of rules including a set of protected processes for which no remote thread injection is allowable;

wherein evaluating the new thread includes comparing the target process to the set of protected processes and determining the thread is malicious or compromised when the target process is in the set of protected processes; and

terminating the new thread when the thread is determined to be malicious.

2. The method of claim 1 , wherein logging the remote thread creation event includes logging the creating process and the target process.

3. The method of claim 1 , wherein logging the remote thread creation event includes logging a portion of data stored at a start address of the new thread.

4. The method of claim 1 , wherein logging the remote thread creation event includes logging a path for any mapped memory references by the new thread.

5. The method of claim 1 , wherein evaluating the new thread includes comparing the privileges of the creating process to the privileges of the target process.

6. The method of claim 1 , further comprising terminating the creating process.

7. An endpoint agent for monitoring thread creation for malicious activity, comprising:

a communications engine configured to:

receive a set of rules from a cloud service; and

send creating process data, target process data, and thread data to the cloud service for new threads;

a thread creation monitor configured to: identify the new thread; determine a creating process and target process for the new thread;

compare the creating process and target process to identify a remote thread injection event when the target process and the creating process are different; and

log the creating process data, the target process data, the thread data for the remote thread injection event, and a portion of the data stored at a start address of the thread; and

an inspector configured to: compare the remote thread injection event to the set of rules;

determine if the new thread is allowable including checking a set of protected processes for which no remote thread injection is allowable;

wherein the set of rules includes a set of protected processes and the inspector is further configured to compare the target process to the set of protected processes and determining the thread is not allowable when the target process is in the set of protected processes; and

terminate the new thread if the thread is not allowable.

8. The endpoint agent of claim 7 , wherein the thread data includes a portion of the data stored at the start address of the new thread.

9. The endpoint agent of claim 7 , wherein the thread data includes a path for any mapped memory references by the new thread.

10. The endpoint agent of claim 7 , wherein the inspector is further configured compare the privileges of the creating process to the privileges of the target process.

11. The endpoint agent of claim 7 , wherein the inspector is further configured to terminate the creating process.

12. A non-transitory computer-readable medium including code that when executed causes a processor to perform a method, the method comprising:

monitoring a system for creation of a new thread;

determining the creation of the new thread is a remote thread creation event when a comparison between a target process and a creating process indicates the target process and the creating process are different;

logging the remote thread creation event including source process information, target process information, and a portion of the data stored at a start address of the thread;

evaluating the new thread based on a set of rules to determine the thread is malicious or compromised, the set of rules including a set of protected processes for which no remote thread injection is allowable;

wherein evaluating the new thread includes comparing the target process to a set of protected processes and determining the thread is malicious or compromised when the target process is in the set of protected processes; and

terminating the new thread.

13. The non-transitory computer-readable medium of claim 12 , wherein logging the remote thread creation event includes logging the creating process and the target process.

14. The non-transitory computer-readable medium of claim 12 , wherein logging the remote thread creation event includes logging a portion of the data stored at the start address of the new thread.

15. The non-transitory computer-readable medium of claim 12 , wherein logging the remote thread creation event includes logging a path for any mapped memory references by the new thread.

16. The non-transitory computer-readable medium of claim 12 , wherein evaluating the new thread includes comparing the privileges of the creating process to the privileges of the target process.

17. The non-transitory computer-readable medium of claim 12 , wherein the method further includes terminating the creating process.

Assignments (2)
SECURITY INTEREST Recorded May 2, 2025
From: SECUREWORKS CORP.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 071156/0529 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2017
From: KINDER, ROSS R.; HACKWORTH, AARON; GEIGER, MATTHEW; MOORE, KEVIN R.; VIDAS, TIMOTHY M.
To: SECUREWORKS CORP.
Reel/Frame 042430/0754 →