IP Library › Granted Patent US 11,411,976
Granted Patent B2
US 11,411,976 · App. 16/924,483 · Granted Aug 9, 2022

Resource-efficient generation of analytical attack graphs

Inventors: Alexander Basovskiy (Hod Ha{grave over ( )}sharon, IL); Dmitry Kravchenko (Kefar Sava, IL); Avraham Dayan (Bnei Brak, IL); Moshe Hadad (Rosh HaAyim, IL)
Assignee: Accenture Global Solutions Limited
H04L63/1425G06F16/2255
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,411,976
App. No.
16/924,483
Filed
Jul 9, 2020
Granted
Aug 9, 2022
Kind
B2
Art Unit
2435
USPC
726/23
Abstract

Implementations include evaluating a first sub-set of rules based on a first sub-set of facts to provide a first set of impacts, evaluating including applying the first sub-set of facts to each rule using a hash join operation to determine whether a rule results in an impact, indexes of arguments of facts being used in a probe phase of the hash join operation, evaluating a second sub-set of rules using impacts of the first set of impacts to provide a second set of impacts, determining whether each goal in a set of goals has been achieved using the first set of impacts and the second set of impacts, each goal being provided as an impact, in response to determining that each goal in the set of goals has been achieved, removing paths of the AAG, each of the paths resulting in an impact that is not a goal.

Claims (41)

1. A computer-implemented method for generating an analytical attack graph (AAG) representative of potential lateral movement within a computer network, the method being executed by one or more processors and comprising:

evaluating a first sub-set of rules based on a first sub-set of facts to provide a first set of impacts, evaluating comprising applying one or more facts of the first sub-set of facts to each rule using a hash join operation to determine whether a rule results in an impact, indexes of arguments of facts being used in a probe phase of the hash join operation;

evaluating a second sub-set of rules at least partially based on one or more impacts of the first set of impacts to provide a second set of impacts;

determining whether each goal in a set of goals has been achieved at least partially based on the first set of impacts and the second set of impacts, each goal being provided as an impact;

in response to determining that each goal in the set of goals has been achieved, removing one or more paths of the AAG, each of the one or more paths resulting in an impact that is not a goal in the set of goals; and

storing the AAG to computer-readable memory.

2. The method of claim 1 , wherein each index is provided as an integer that uniquely represents at least one argument of a respective fact.

3. The method of claim 1 , further comprising evaluating a third sub-set of rules at least partially based on one or more impacts of the second set of impacts to provide a third set of impacts.

4. The method of claim 3 , wherein the one or more impacts of the second set of impacts is absent an impact that is determined to be a goal in the set of goals.

5. The method of claim 3 , wherein evaluating the third sub-set of rules is executed in response to determining that each goal in the set of goals has not been achieved based on the first set of impacts and the second set of impacts.

6. The method of claim 1 , wherein each rule comprises a clause, each fact is provided as an argument to evaluate whether the clause is grounded, and at least one impact is provided as an argument to evaluate whether the clause is grounded.

7. The method of claim 1 , wherein the first sub-set of rules only includes rules having facts as arguments.

8. The method of claim 1 , wherein the second sub-set of rules includes rules having impacts as arguments.

9. A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for generating an analytical attack graph (AAG) representative of potential lateral movement within a computer network, the operations comprising:

evaluating a first sub-set of rules based on a first sub-set of facts to provide a first set of impacts, evaluating comprising applying one or more facts of the first sub-set of facts to each rule using a hash join operation to determine whether a rule results in an impact, indexes of arguments of facts being used in a probe phase of the hash join operation;

evaluating a second sub-set of rules at least partially based on one or more impacts of the first set of impacts to provide a second set of impacts;

determining whether each goal in a set of goals has been achieved at least partially based on the first set of impacts and the second set of impacts, each goal being provided as an impact;

in response to determining that each goal in the set of goals has been achieved, removing one or more paths of the AAG, each of the one or more paths resulting in an impact that is not a goal in the set of goals; and

storing the AAG to computer-readable memory.

10. The computer-readable storage medium of claim 9 , wherein each index is provided as an integer that uniquely represents at least one argument of a respective fact.

11. The computer-readable storage medium of claim 9 , wherein operations further comprise evaluating a third sub-set of rules at least partially based on one or more impacts of the second set of impacts to provide a third set of impacts.

12. The computer-readable storage medium of claim 11 , wherein the one or more impacts of the second set of impacts is absent an impact that is determined to be a goal in the set of goals.

13. The computer-readable storage medium of claim 11 , wherein evaluating the third sub-set of rules is executed in response to determining that each goal in the set of goals has not been achieved based on the first set of impacts and the second set of impacts.

14. The computer-readable storage medium of claim 9 , wherein each rule comprises a clause, each fact is provided as an argument to evaluate whether the clause is grounded, and at least one impact is provided as an argument to evaluate whether the clause is grounded.

15. The computer-readable storage medium of claim 9 , wherein the first sub-set of rules only includes rules having facts as arguments.

16. The computer-readable storage medium of claim 9 , wherein the second sub-set of rules includes rules having impacts as arguments.

17. A system, comprising:

one or more computers; and

a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations for generating an analytical attack graph (AAG) representative of potential lateral movement within a computer network, the operations comprising:

evaluating a first sub-set of rules based on a first sub-set of facts to provide a first set of impacts, evaluating comprising applying one or more facts of the first sub-set of facts to each rule using a hash join operation to determine whether a rule results in an impact, indexes of arguments of facts being used in a probe phase of the hash join operation;

evaluating a second sub-set of rules at least partially based on one or more impacts of the first set of impacts to provide a second set of impacts;

determining whether each goal in a set of goals has been achieved at least partially based on the first set of impacts and the second set of impacts, each goal being provided as an impact;

in response to determining that each goal in the set of goals has been achieved, removing one or more paths of the AAG, each of the one or more paths resulting in an impact that is not a goal in the set of goals; and

storing the AAG to computer-readable memory.

18. The system of claim 17 , wherein each index is provided as an integer that uniquely represents at least one argument of a respective fact.

19. The system of claim 17 , wherein operations further comprise evaluating a third sub-set of rules at least partially based on one or more impacts of the second set of impacts to provide a third set of impacts.

20. The system of claim 19 , wherein the one or more impacts of the second set of impacts is absent an impact that is determined to be a goal in the set of goals.

21. The system of claim 19 , wherein evaluating the third sub-set of rules is executed in response to determining that each goal in the set of goals has not been achieved based on the first set of impacts and the second set of impacts.

22. The system of claim 17 , wherein each rule comprises a clause, each fact is provided as an argument to evaluate whether the clause is grounded, and at least one impact is provided as an argument to evaluate whether the clause is grounded.

23. The system of claim 17 , wherein the first sub-set of rules only includes rules having facts as arguments.

24. The system of claim 17 , wherein the second sub-set of rules includes rules having impacts as arguments.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2020
From: BASOVSKIY, ALEXANDER; KRAVCHENKO, DMITRY; DAYAN, AVRAHAM; HADAD, MOSHE
To: ACCENTURE GLOBAL SOLUTIONS LIMITED
Reel/Frame 053164/0468 →
Continuity (1)
Related Publication 20220014534A1 · Jan 13, 2022
Cited By (9)
US 12,231,461 US 12,284,200 US 12,289,336 US 12,335,296 US 12,348,552 US 12,355,798 US 12,470,591 US 12,476,994 US 12,542,797