IP Library Granted Patent US 11,470,106
Granted Patent B1
US 11,470,106 · App. 16/780,699 · Granted Oct 11, 2022

Exploitability risk model for assessing risk of cyberattacks

Inventors: Wah-Kwan Lin (Melrose, MA); Leonardo Varela Guevara (Austin, TX); Cody Pierce (Austin, TX)
Assignee: Rapid7, Inc.
H04L63/1433G06K9/6256
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,470,106
App. No.
16/780,699
Granted
Oct 11, 2022
Kind
B1
Abstract

Systems and methods are provided to build a machine learned exploitability risk model that predicts, based on the characteristics of a set of machines, a normalized risk score quantifying the risk that the machines are exploitable by a set of attacks. To build the model, a training dataset is constructed by labeling characteristic data of a population of machines with exploitation test results obtained by simulating a set of attacks on the population. The model is trained using the training data to accurately predict a probability that a given set of machines is exploitable by the set of attacks. In embodiments, the model may be used to make quick assessments about how vulnerable a set of machines are to the set of attacks. In embodiments, the model may be used to compare the effectiveness of different remediation actions to protect against the set of attacks.

Claims (78)

1. A system, comprising:

one or more hardware processors with associated memory that implement a model training system, configured to:

obtain a training dataset of a plurality of observation records, wherein each observation record in the training dataset includes:

(a) characteristics data of a set of machines, and

(b) exploitation test results produced by performance of a set of exploitation tests on the set of machines that simulates a set of attacks on the set of machines; and

train an exploitability risk model using the training dataset and according to a machine learning technique, wherein the training tunes the exploitability risk model to predict, based on the characteristics data, a normalized risk score of the set of machines for the set of attacks.

2. The system of claim 1 , further comprising a network-accessible service, configured to:

monitor machines of a plurality of different clients;

collect the characteristics data for the training dataset from the machines of the different clients;

perform the exploitation tests on the machines of the different clients to generate the exploitation test results for the training dataset; and

subsequent to the training, use the exploitability risk model to predict risk scores of the machines of the different clients.

3. The system of claim 1 , wherein the model training system is configured to train the exploitability risk model to produce a group risk score for a group of multiple machines, and wherein the group risk score is normalized for a size of the group.

4. The system of claim 1 , wherein exploitability risk model is a logistic regression model, and the model training system is configured to train the exploitability risk model to generate a probability that the set of machines is exploitable by at least one of the set of attacks.

5. The system of claim 1 , wherein the training dataset includes characteristics of a particular machine that indicates one or more of:

a type of hardware component of the particular machine;

a type of software installed on the particular machine;

whether a patch is installed for software on the particular machine;

one or more configuration settings of the particular machine; or

an amount of data stored by the particular machine.

6. The system of claim 5 , wherein the training dataset includes metadata about users of the particular machine, including one or more of:

a type or a role of a user that has access to the particular machine;

access privileges of a user on the particular machine;

a number of users that have access to the particular machine; or

a frequency that a user accesses the particular machine.

7. The system of claim 5 , wherein the training dataset includes metadata about an environment of the particular machine, including one or more of:

a type of computing environment that the particular machine is executing in;

a number of machines in a network connected to the particular machine;

one or more firewall configurations of a network connected to the particular machine;

an amount of network traffic sent to or received by the particular machine; or

a type of entity that owns or operates the particular machine.

8. The system of claim 5 , wherein the training dataset includes machine demographics data of a population of machines that indicates a prevalence of one or more of the characteristics of the particular machine in the population.

9. A method comprising:

performing, by one or more hardware processors with associated memory that implement a model training system:

obtaining a training dataset of a plurality of observation records, wherein each observation record in the training dataset includes:

(a) characteristics data of a set of machines, and

(b) exploitation test results produced by performing a set of exploitation tests on the set of machines that simulates a set of attacks on the set of machines; and

training an exploitability risk model using the training dataset and according to a machine learning technique, wherein the training tunes the exploitability risk model to predict, based on the characteristics data, a normalized risk score of the set of machines for the set of attacks.

10. The method of claim 9 , further comprising performing, by a network-accessible service:

monitoring a plurality of machines of a plurality of different clients; and

collecting the characteristics data for the training dataset from the plurality of machines of the different clients;

performing the exploitation tests on the plurality of machines of the different clients to generate the exploitation test results for the training dataset; and

subsequent to the training, using the exploitability risk model to predict risk scores of the machines of the different clients.

11. The method of claim 10 , further comprising performing, by the network-accessible service:

detecting a change in the plurality of machines, and in response:

collecting additional characteristics data of the plurality of machines;

performing the set of exploitation tests on the plurality of machines to generate additional exploitation test results; and

causing the model training system to perform additional training of the exploitability risk model using one or more additional training data sets that includes the additional characteristics data and the additional exploitation test results.

12. The method of claim 10 , further comprising performing, by the network-accessible service:

determining a new type of attack for the plurality of machines;

performing a new exploitation test on the plurality of machines to simulate the new type attack and obtain new exploitation test results; and

causing the model training system to perform additional training of the exploitability risk model using one or more additional training data sets that includes the new exploitation test results.

13. The method of claim 10 , further comprising performing, by the network-accessible service:

causing the model training system to train, according to the machine learning technique, a custom exploitability risk model for a particular client, wherein the custom exploitability risk model is trained using characteristics data collected from machines of the particular client and exploitation test results obtained from the machines of the particular client.

14. The method of claim 13 , further comprising performing, by the network-accessible service:

receiving configuration data for training the custom exploitability risk model, wherein the configuration data specifies (a) a custom set of characteristics data and (b) a custom set of exploitation tests to use for the training; and

causing the model training system to train the custom exploitability risk model according to the configuration data.

15. The method of claim 10 , wherein further comprising performing, by the network-accessible service:

determining a particular risk score predicted by the exploitability risk model for a particular machine or group of machines;

performing one or more subsequent exploitation tests on the particular machine or group of machines to obtain actual exploitation test results for the particular machine or group of machines;

determining, based at least in part on the particular risk score and the actual exploitation test results, that the particular risk score fails to satisfy an accuracy criterion; and

adding characteristics data of the particular machine or group of machines to an additional training dataset for further training of the exploitability risk model.

16. One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors implement at least a portion of a model training system and cause the model training system to:

obtain a training dataset of a plurality of observation records, wherein each observation record in the training dataset includes:

(a) characteristics data of a set of machines, and

(b) exploitation test results produced by performance of a set of exploitation tests performed on the set of machines that simulates a set of attacks on the set of machines; and

train an exploitability risk model using the training dataset and according to a machine learning technique, wherein the training tunes the exploitability risk model to predict, based on the characteristics data, a normalized risk score of the set of machines for the set of attacks.

17. The one or more non-transitory computer-accessible storage media of claim 16 , wherein the program instructions when executed on or across the one or more processors cause the model training system to train the exploitability risk model to produce a group risk score for a group of multiple machines, and wherein the group risk score is normalized for a size of the group.

18. The one or more non-transitory computer-accessible storage media of claim 16 , wherein the program instructions when executed on or across the one or more processors cause the model training system to train a logistic regression model to generate a probability that the set of machines is exploitable by at least one of the set of attacks.

19. The one or more non-transitory computer-accessible storage media of claim 15 , wherein the program instructions when executed on or across the one or more processors cause the model training system to train the exploitability risk model using characteristics of a particular machine that indicates one or more of:

a type of hardware component of the particular machine;

a type of software installed on the particular machine;

whether a patch is installed for software on the particular machine;

one or more configuration settings of the particular machine; or

an amount of data stored by the particular machine.

20. The one or more non-transitory computer-accessible storage media of claim 19 , wherein the program instructions when executed on or across the one or more processors cause the model training system to train the exploitability risk model using one or more of:

metadata about users of the particular machine;

metadata about an environment of the particular machine; or

demographic data of one or more of the characteristics of the machine.

Assignments (4)
SECURITY INTEREST Recorded Jun 26, 2025
From: RAPID7, INC.; RAPID7 LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071743/0537 →
RELEASE OF SECURITY INTEREST Recorded Dec 27, 2024
From: KEYBANK NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: RAPID7, INC.
Reel/Frame 069785/0328 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 24, 2020
From: RAPID7, INC.
To: KEYBANK NATIONAL ASSOCIATION
Reel/Frame 052489/0939 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2020
From: LIN, WAH-KWAN; VARELA GUEVARA, LEONARDO; PIERCE, CODY
To: RAPID7, INC.
Reel/Frame 051707/0521 →
Cited By (34)
US 12,189,787 US 12,206,688 US 12,216,786 US 12,223,063 US 12,225,038 US 12,231,460 US 12,236,491 US 12,244,703 US 12,288,148 US 12,299,133 US 12,299,140 US 12,333,612 US 12,335,282 US 12,367,292 US 12,395,505 US 12,395,513 US 12,438,900 US 12,505,291 US 12,505,352 US 12,513,167 US 12,592,944 US 12,592,945 US 12,596,738 US 12,596,813 US 12,602,418 US 12,602,624 US 12,602,638 US 12,608,486 US 12,627,671 US 12,647,443 US 12,652,308 US 12,681,830 US 12,694,104 US 12,694,343