IP Library Granted Patent US 10,305,917
Granted Patent B2
US 10,305,917 · App. 15/213,896 · Granted May 28, 2019

Graph-based intrusion detection using process traces

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,305,917
App. No.
15/213,896
Granted
May 28, 2019
Kind
B2
Abstract

Methods and systems for detecting malicious processes include modeling system data as a graph comprising vertices that represent system entities and edges that represent events between respective system entities. Each edge has one or more timestamps corresponding respective events between two system entities. A set of valid path patterns that relate to potential attacks is generated. One or more event sequences in the system are determined to be suspicious based on the graph and the valid path patterns using a random walk on the graph.

Claims (105)

1. A method for detecting malicious processes, comprising:

modeling system data as a graph comprising vertices that represent system entities and edges that represent events between respective system entities, each edge comprising one or more timestamps corresponding respective events between two system entities;

generating a set of valid path patterns that relate to potential attacks; and

determining one or more event sequences in the system to be suspicious, using a hardware processor, based on the graph and the valid path patterns using a random walk on the graph by determining a sender score for a sender entity and a receiver score for a receiver entity to determine that the entities on an edge deviate from normal roles for those entities, with an anomaly score for each event sequence p being determined as:

Score

(

p

)

=

1

-

i

=

1

r

X

(

v

i

)

A

(

v

i

,

v

i

+

1

)

Y

(

v

i

+

1

)

where X(v i ) is the sender score for vertex v i , A(v i ,v i+1 ) is a probability that information flows from vertex v i to vertex v i+1 , and Y(v i+1 ) is the receiver score for vertex v i+1 , and r is a length of the sequence p.

2. The method of claim 1 , wherein the system entities comprise files in the system, processes in the system, UNIX® sockets in the system, and Internet sockets in the system.

3. The method of claim 1 , wherein the valid patterns are determined based on properties of the system entity types.

4. The method of claim 3 , wherein the valid path patterns are determined based on definitions provided by security experts according to their experiences based on previous intrusion attacks.

5. The method of claim 1 , wherein determining the one or more event sequences to be suspicious comprises performing a breadth first search of candidate paths within the graph.

6. The method of claim 5 , wherein the breadth first search comprises a time order constraint based on the edge timestamps.

7. The method of claim 1 , wherein determining one or more event sequences to be suspicious comprises calculating an anomaly score based on the sender score and receiver score for each entity in each event sequence.

8. The method of claim 7 , wherein determining one or more event sequences to be suspicious comprises normalizing anomaly scores using a Box-Cox power transformation.

9. A system for detecting malicious processes, comprising:

a modeling module configured to model system data as a graph that comprises vertices that represent system entities and edges that represent events between respective system entities, each edge comprising one or more timestamps corresponding respective events between two system entities; and

a malicious process path discovery module comprising a processor configured to generate a set of valid path patterns that relate to potential attacks and to determine one or more event sequences in the system to be suspicious based on the graph and the valid path patterns using a random walk on the graph by determining a sender score for a sender entity and a receiver score for a receiver entity to determine that the entities on an edge deviate from normal roles for those entities, with an anomaly score for each event sequence p being determined as:

Score

(

p

)

=

1

-

i

=

1

r

X

(

v

i

)

A

(

v

i

,

v

i

+

1

)

Y

(

v

i

+

1

)

where X(v i ) is the sender score for vertex v i , A(v i , v i+1 ) is a probability that information flows from vertex v i to vertex v i+1 , and Y(v i+1 ) is the receiver score for vertex v i+1 , and r is a length of the sequence p.

10. The system of claim 9 , wherein the system entities comprise files in the system, processes in the system, UNIX® sockets in the system, and Internet sockets in the system.

11. The system of claim 9 , wherein the malicious process path discovery module is further configured to determine valid patterns based on properties of the system entity types.

12. The system of claim 11 , wherein the malicious process path discovery module is further configured to determine valid path patterns based on definitions provided by security experts according to their experiences based on previous intrusion attacks.

13. The system of claim 9 , wherein the malicious process path discovery module is further configured to perform a breadth first search of candidate paths within the graph.

14. The system of claim 13 , wherein the breadth first search comprises a time order constraint based on the edge timestamps.

15. The system of claim 9 , wherein the malicious process path discovery module is further configured to calculate an anomaly score based on the sender score and receiver score for each entity in each event sequence.

16. The system of claim 15 , wherein the malicious process path discovery module is further configured to normalize anomaly scores using a Box-Cox power transformation.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2024
From: IP WAVE PTE LTD.
To: CLOUD BYTE LLC.
Reel/Frame 067944/0332 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2024
From: NEC ASIA PACIFIC PTE LTD.
To: IP WAVE PTE LTD.
Reel/Frame 066376/0276 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2023
From: NEC CORPORATION
To: NEC ASIA PACIFIC PTE LTD.
Reel/Frame 066124/0752 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2018
From: NEC LABORATORIES AMERICA, INC.
To: NEC CORPORATION
Reel/Frame 048272/0203 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2016
From: CHEN, ZHENGZHANG; TANG, LUAN; DONG, BOXIANG; JIANG, GUOFEI; CHEN, HAIFENG
To: NEC LABORATORIES AMERICA, INC.
Reel/Frame 039189/0773 →