IP Library Granted Patent US 11,665,191
Granted Patent B2
US 11,665,191 · App. 17/353,655 · Granted May 30, 2023

Generating vulnerability exposure scores in a segmented computing environment

Inventors: Matthew Kirby Glenn (Mountain View, CA); Paul James Kirner (Palo Alto, CA); Seth Bruce Ford (San Francisco, CA); Mukesh Gupta (Fremont, CA); Joy Anne Scott (Los Altos, CA); Nathaniel Jurist Gleicher (Palo Alto, CA)
Assignee: Illumio, Inc.
H04L63/1433G06F9/5077G06F21/12G06F21/577H04L63/1425
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,665,191
App. No.
17/353,655
Granted
May 30, 2023
Kind
B2
Abstract

A segmentation server generates vulnerability exposure scores associated with workloads operating in a segmented computing environment. The segmentation server may automatically aggregate the vulnerability exposure scores in various ways to generate vulnerability exposure information representative of workloads in an administrative domain controlled by the segmentation server. The aggregated vulnerability exposure information may be presented in a manner that enables an administrator to easily evaluate different segmentation strategies and assess the risks associated with each of them. Moreover, the segmentation server can automatically generate a segmentation policy that modifies a configured segmentation strategy based on the vulnerability exposure scores to reduce exposure to certain vulnerabilities without impeding operation of the workloads.

Claims (85)

1. A method for generating vulnerability information relating to workloads executing on one or more processing devices in a segmented computing environment within an administrative domain, the method comprising:

obtaining a current segmentation policy for the workloads executing on the one or more processing devices in the segmented computing environment, wherein the current segmentation policy comprises a set of label-based rules that indicate permitted connectivity among the workloads based on respective label sets associated with the workloads;

identifying vulnerabilities associated with respective ports of the workloads;

generating vulnerability exposure scores for the respective ports, wherein the vulnerability exposure scores each represent a measure of exposure to the vulnerabilities based on the permitted connectivity under the rules of the current segmentation policy applicable to the respective ports;

identifying tiers of workloads based on the respective label sets, each of the tiers comprising a group of workloads having common label values across two or more label dimensions;

aggregating, for workloads within a tier, vulnerability exposure scores for each port number to generate respective port number scores for each port number;

generating a ranked list of port numbers based on the respective port number scores;

generating a presentation of vulnerability exposure information including the ranked list; and

outputting the presentation of the vulnerability exposure information.

2. The method of claim 1 , wherein generating the presentation of the vulnerability exposure information comprises:

aggregating the vulnerability exposure scores across workloads in each of the tiers to generate tier-level scores for each of the tiers;

generating a representation of a tier-level segmentation policy graph comprising nodes representing the tiers and edges representing connectivity between workloads in different ones of the tiers; and

associating the tier-level scores with corresponding nodes in the tier-level segmentation policy graph.

3. The method of claim 1 , wherein identifying the vulnerabilities comprises:

executing a vulnerability scanner to detect the vulnerabilities on each of the workloads.

4. The method of claim 1 , wherein generating the vulnerability exposure scores comprises, for a given port:

identifying an external network permitted to connect to the given port under the current segmentation policy;

obtaining a predefined score associated with the external network; and

generating a vulnerability exposure score for the given port based in part on the predefined score associated with the external network.

5. The method of claim 1 , wherein generating the vulnerability exposure scores comprises:

identifying an exposure score for a connecting port permitted to connect to a given port under the current segmentation policy; and

generating the vulnerability exposure score for the given port based in part on the exposure score for the connecting port.

6. The method of claim 1 , further comprising:

observing communications among the workloads under the current segmentation policy to generate a traffic flow graph;

generating a modified segmentation policy based on the vulnerability exposure scores, the traffic flow graph, and configuration settings, wherein the modified segmentation policy reduces exposure to the vulnerabilities relative to the current segmentation policy;

generating management instructions based on the modified segmentation policy to enforce the modified segmentation policy; and

sending the management instructions to operating system instances executing the workloads.

7. The method of claim 6 , wherein generating the modified segmentation policy comprises:

detecting, in a first group of workloads, a vulnerable port on which one of the vulnerabilities exists;

detecting connectivity using the vulnerable port between the first group of workloads and a second group of workloads in the traffic flow graph;

detecting a lack of connectivity between the first group of workloads having the vulnerable port and a third group of workloads in the traffic flow graph;

generating the modified segmentation policy to limit permitted communications of the first group of workloads to the second group of workloads without permitting communications between the first group of workloads and the third group of workloads.

8. The method of claim 6 , wherein generating the modified segmentation policy comprises:

detecting, in a first group of workloads, a vulnerable port on which one of the vulnerabilities exists;

detecting a lack of connectivity using the vulnerable port between the first group of workloads and a second group of workloads in the traffic flow graph;

detecting connectivity using one or more non-vulnerable ports between the first group of workloads and the second group of workloads in the traffic flow graph;

generating the modified segmentation policy to limit permitted communications between the first group of workloads and the second group of workloads to using the one or more non-vulnerable ports without permitting communications between the first group of workloads and the second group of workloads using the vulnerable port.

9. The method of claim 1 , wherein generating the vulnerability exposure scores comprises at least one of:

(a) generating an intra-group exposure score representing a measure of connectivity of a given port to other workloads within a group associated with a workload of the given port;

(b) generating an inter-group exposure score representing a measure of connectivity of the given port to other workloads outside the group associated with a workload of the given port; and

(c) generating a total exposure score representing a measure of connectivity of the given port to any other workloads.

10. A non-transitory computer-readable storage medium storing instructions for generating vulnerability information relating to workloads executing on one or more processing devices in a segmented computing environment within an administrative domain, the instructions when executed by a processor causing the processor to perform steps including:

obtaining a current segmentation policy for the workloads executing on the one or more processing devices in the segmented computing environment, wherein the current segmentation policy comprises a set of label-based rules that indicate permitted connectivity among the workloads based on respective label sets associated with the workloads;

identifying vulnerabilities associated with respective ports of the workloads;

generating vulnerability exposure scores for the respective ports, wherein the vulnerability exposure scores each represent a measure of exposure to the vulnerabilities based on the permitted connectivity under the rules of the current segmentation policy applicable to the respective ports;

identifying tiers of workloads based on the respective label sets, each of the tiers comprising a group of workloads having common label values across two or more label dimensions;

aggregating, for workloads within a tier, vulnerability exposure scores for each port number to generate respective port number scores for each port number;

generating a ranked list of port numbers based on the respective port number scores;

generating a presentation of vulnerability exposure information including the ranked list; and

outputting the presentation of the vulnerability exposure information.

11. The non-transitory computer-readable storage medium of claim 10 , wherein generating the presentation of the vulnerability exposure information comprises:

aggregating the vulnerability exposure scores across workloads in each of the tiers to generate tier-level scores for each of the tiers;

generating a representation of a tier-level segmentation policy graph comprising nodes representing the tiers and edges representing connectivity between workloads in different ones of the tiers; and

associating the tier-level scores with corresponding nodes in the tier-level segmentation policy graph.

12. The non-transitory computer-readable storage medium of claim 10 , wherein generating the vulnerability exposure scores comprises, for a given port:

identifying an external network permitted to connect to the given port under the current segmentation policy;

obtaining a predefined score associated with the external network; and

generating a vulnerability exposure score for the given port based in part on the predefined score associated with the external network.

13. The non-transitory computer-readable storage medium of claim 10 , further comprising:

observing communications among the workloads under the current segmentation policy to generate a traffic flow graph;

generating a modified segmentation policy based on the vulnerability exposure scores, the traffic flow graph, and configuration settings, wherein the modified segmentation policy reduces exposure to the vulnerabilities relative to the current segmentation policy;

generating management instructions based on the modified segmentation policy to enforce the modified segmentation policy; and

sending the management instructions to operating system instances executing the workloads.

14. A processing server for generating vulnerability information relating to workloads executing on one or more processing devices in a segmented computing environment within an administrative domain, the processing server comprising:

one or more processors; and

a non-transitory computer-readable storage medium storing instructions that when executed by the one or more processors cause the one or more processors to perform steps including:

obtaining a current segmentation policy for the workloads executing on the one or more processing devices in the segmented computing environment, wherein the current segmentation policy comprises a set of label-based rules that indicate permitted connectivity among the workloads based on respective label sets associated with the workloads;

identifying vulnerabilities associated with respective ports of the workloads;

generating vulnerability exposure scores for the respective ports, wherein the vulnerability exposure scores each represent a measure of exposure to the vulnerabilities based on the permitted connectivity under the rules of the current segmentation policy applicable to the respective ports;

identifying tiers of workloads based on the respective label sets, each of the tiers comprising a group of workloads having common label values across two or more label dimensions;

aggregating, for workloads within a tier, vulnerability exposure scores for each port number to generate respective port number scores for each port number;

generating a ranked list of port numbers based on the respective port number scores;

generating a presentation of vulnerability exposure information including the ranked list; and

outputting the presentation of the vulnerability exposure information.

15. The processing server of claim 14 , wherein generating the presentation of the vulnerability exposure information comprises:

aggregating the vulnerability exposure scores across workloads in each of the tiers to generate tier-level scores for each of the tiers;

generating a representation of a tier-level segmentation policy graph comprising nodes representing the tiers and edges representing connectivity between workloads in different ones of the tiers; and

associating the tier-level scores with corresponding nodes in the tier-level segmentation policy graph.

16. The processing server of claim 14 , wherein generating the vulnerability exposure scores comprises, for a given port:

identifying an external network permitted to connect to the given port under the current segmentation policy;

obtaining a predefined score associated with the external network; and

generating a vulnerability exposure score for the given port based in part on the predefined score associated with the external network.

17. The processing server of claim 14 , wherein generating the vulnerability exposure scores comprises:

identifying an exposure score for a connecting port permitted to connect to a given port under the current segmentation policy; and

generating the vulnerability exposure score for the given port based in part on the exposure score for the connecting port.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2021
From: GLENN, MATTHEW KIRBY; KIRNER, PAUL JAMES; FORD, SETH BRUCE; GUPTA, MUKESH; SCOTT, JOY ANNE; GLEICHER, NATHANIEL JURIST
To: ILLUMIO, INC.
Reel/Frame 056662/0943 →
Continuity (2)
Continuation 15902952 · Feb 22, 2018
Related Publication 20210314345A1 · Oct 7, 2021