IP Library Granted Patent US 12,034,735
Granted Patent B2
US 12,034,735 · App. 18/371,891 · Granted Jul 9, 2024

Method for verifying security technology deployment efficacy across a computer network

Inventors: Jeffrey J. Guy (Austin, TX); Dean Mekkawy (Austin, TX); Nevins Bartolomeo (Austin, TX); Luis Diego Cabezas (Austin, TX); Aaron Griffin (Austin, TX); Jacob Hackett (Austin, TX); Michael Alfonse (Austin, TX); Craig Cason (Austin, TX); Mark Shipley (Austin, TX); Jason McFarland (Austin, TX); Nicholas Murdock (Austin, TX); Steve Taylor (Austin, TX); Aaron Smith (Austin, TX)
Assignee: Sevco Security, Inc.
H04L63/104G06F9/45558H04L41/0893H04L41/12H04L63/102G06F2009/45587G06F2009/45595
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 12,034,735
App. No.
18/371,891
Granted
Jul 9, 2024
Kind
B2
Abstract

A method includes: accessing objects, generated by a set of sources, representing attributes of assets, affiliated with a computer network, including a set of endpoint devices and a first application; partitioning the objects into object groups including a first object group representing the first application; aggregating objects in the first object group into a first user container representing the first application during the first time interval; and, in response to selection of the first application at an operator portal: generating a visualization representing a subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval based on a set of attributes, exhibited by the first application during the first time interval, contained in the first application container; and rendering the visualization at the operator interface.

Claims (173)

1. A method comprising:

accessing a set of objects, generated by a set of sources during a first time interval, representing attributes of a set of assets affiliated with a computer network, the set of assets comprising:

a set of endpoint devices; and

a set of applications comprising a first application;

extracting application identifying data from the set of objects;

based on the application identifying data, partitioning the set of objects into a set of object groups comprising a first object group representing the first application during the first time interval;

aggregating attributes represented in objects in the first object group into a first application container, in a set of applications containers, representing the first application;

generating a first manifest of applications, comprising the first application, installed on endpoint devices in the set of endpoint devices during the first time interval based on the set of application containers;

in response to selection of the first application in the first manifest of applications at an operator portal, generating a visualization representing a first set of attributes exhibited by the first application during the first time interval, the first set of attributes comprising a first attribute representing a first subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval;

rendering the visualization at the operator interface;

accessing a first subset of endpoint device containers in a set of endpoint device containers, each endpoint device container, in the first subset of endpoint device containers, comprising fixed identifying data and variable status data representing an endpoint device in the first subset of endpoint devices; and

for each endpoint device container in the first subset of endpoint device containers:

generating a tag associating a corresponding endpoint device with the first application; and

compiling the tag in the endpoint device container.

2. The method of claim 1 :

wherein extracting application identifying data from the set of objects comprises:

scanning a first subset of objects, in the set of objects and generated by a first source in the set of sources, for a first unique internal application identifier assigned to the first application by the first source; and

scanning a second subset of objects, in the set of objects and generated by a second source in the set of sources, for a second unique internal application identifier assigned to the first application by the second source;

wherein partitioning the set of objects into the set of object groups comprises:

partitioning the first subset of objects into the first object group based on the first unique internal application identifier; and

partitioning the second subset of objects into a second object group based on the second unique internal application identifier; and

wherein aggregating attributes represented in objects in the object group into the user container comprises:

aggregating attributes represented in objects in the first object group into the first application container associated with the first source and comprising fixed identifying data and variable status data representing the first application; and

aggregating attributes represented in objects in the second object group into a second application container, in the set of application containers, associated with the second source and comprising fixed identifying data and variable status data representing the first application.

3. The method of claim 2 , further comprising:

calculating a first correspondence score for the first application container and the second application container based on:

similarities of fixed identifying data stored in the first application container and the second application container; and

similarities of concurrent variable status data stored in the first application container and the second application container; and

in response to the first correspondence score exceeding a threshold correspondence score:

identifying the first application container and the second application container as corresponding to the first application; and

compiling fixed identifying data, comprising the second unique internal application identifier assigned to the first application by the second source, and variable status data contained in the second application container into the first application container.

4. The method of claim 1 , further comprising:

accessing a second set of objects, generated by the set of sources during a second time interval succeeding the first time interval, representing attributes of a second set of assets affiliated with the computer network, the second set of assets comprising:

a second set of endpoint devices; and

a second set of applications comprising the first application;

partitioning the second set of objects into a second set of object groups comprising a second object group representing the first application during the second time interval;

aggregating attributes represented in objects in the second object group into the first application container; and

based on the first application container and the first subset of endpoint device containers, generating a second visualization by:

initializing the second visualization comprising:

a first area corresponding to a second subset of endpoint devices, in the second set of endpoint devices, on which the first application is installed during the second time interval; and

a second area corresponding to the first subset of endpoint devices associated with the tag and partially intersecting the first area; and

annotating the first area, outside of the second area, with a representation of a third subset of endpoint devices, in the second set of endpoint devices, associated with the tag and comprising the first application.

5. The method of claim 1 :

wherein accessing the set of objects comprises accessing a first object, generated by a first source in the set of sources, representing a second attribute representing a vulnerability exhibited by the first application;

wherein partitioning the set of objects comprises partitioning the set of objects into the set of object groups comprising the first object group comprising the first object;

wherein aggregating attributes represented in objects in the first object group comprises aggregating the second attribute into the first application container; and

wherein generating the tag comprises generating the tag associating the corresponding endpoint device with the vulnerability exhibited by the first application.

6. The method of claim 1 :

further comprising accessing a second attribute, defined in the first application container, representing a second subset of endpoint devices, in the set of endpoint devices, permitted to install the first application; and

wherein generating the visualization comprises:

initializing the visualization comprising:

a first area corresponding to the first subset of endpoint devices; and

a second area corresponding to the second subset of endpoint devices and partially intersecting the first area; and

annotating the first area, outside of the second area, with a representation of a third subset of endpoint devices, in the set of endpoint devices, comprising the first application and excluded from the second subset of endpoint devices.

7. The method of claim 6 , further comprising:

generating a notification to selectively investigate the third subset of endpoint devices based on the first application; and

serving the notification to a device associated with security personnel affiliated with the computer network.

8. The method of claim 6 , further comprising:

for each endpoint device in the third subset of endpoint devices:

generating a command to uninstall the first application from the endpoint device; and

serving the command to the endpoint device.

9. The method of claim 1 :

wherein extracting application identifying data from the set of objects comprises:

detecting a first application identifier value corresponding to the first application in a first object published by a first source in the set of sources; and

detecting a second application identifier value corresponding to the first application in a second object published by a second source in the set of sources; and

further comprising:

correlating the first application identifier value and the second application identifier value as corresponding to the first application;

normalizing the first application identifier value and the second application identifier value into a normalized application identifier value; and

compiling the normalized application identifier value into the first application container.

10. The method of claim 1 :

wherein accessing the set of objects comprises accessing a first subset of objects, in the set of objects, generated by a first source, in the set of sources, configured on a first endpoint device in the first subset of endpoint devices, the first subset of objects defining a second set of applications:

installed on the first endpoint device during the first time interval; and

comprising the first application;

wherein partitioning the set of objects comprises partitioning the set of objects into the set of object groups comprising the first object group comprising the first subset of objects; and

wherein generating the visualization comprises generating the visualization representing the first subset of endpoint devices comprising the first endpoint device.

11. The method of claim 1 , further comprising:

accessing a policy defining a first quantity of licenses associated with the first application;

calculating a second quantity of allocated licenses based on the first subset of endpoint devices; and

in response to a difference between the second quantity and the first quantity exceeding a threshold quantity:

generating a notification to selectively investigate the first quantity of licenses associated with the first application; and

serving the notification to a device associated with an administrator affiliated with the computer network.

12. The method of claim 1 , further comprising:

accessing a policy defining a first quantity of licenses associated with the first application;

calculating a second quantity of allocated licenses based on the first subset of endpoint devices; and

in response to the second quantity exceeding the first quantity:

generating a notification to selectively investigate the first subset of endpoint devices; and

serving the notification to a device associated with an administrator affiliated with the computer network.

13. The method of claim 1 :

wherein generating the visualization comprises generating the visualization representing the first set of attributes further comprising a second attribute representing a first subset of users, in the set of users, assigned to the first subset of endpoint devices during the first time interval; and

further comprising:

accessing a software profile corresponding to a first user in the first subset of users; and

in response to the software profile excluding the first application, selectively prompting security personnel to investigate the first user.

14. The method of claim 13 , further comprising:

generating a software update to remove the first application from a first endpoint device, in the first subset of endpoint devices, assigned to the first user during the first time interval; and

serving the software update to the first endpoint device.

15. A method comprising:

accessing a set of objects, generated by a set of sources during a first time interval, representing attributes of a set of assets affiliated with a computer network, the set of assets comprising:

a set of endpoint devices;

a set of applications comprising a first application; and

a set of users;

based on application identifying data in the set of objects, partitioning the set of objects into a first set of object groups comprising a first object group representing the first application during the first time interval;

aggregating attributes represented in objects in the first object group into a first application container, in a set of applications containers, representing the first application, the first application container comprising:

a first attribute representing a first subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval; and

a second attribute representing a first subset of users, in the set of users, assigned to the first subset of endpoint devices during the first time interval;

accessing a set of user containers, each user container in the set of user containers:

representing a user in the first subset of users; and

comprising a third attribute representing a group to which the user is assigned during the first time interval;

based on the first application container and the set of user containers:

identifying a second subset of endpoint devices, in the first subset of endpoint devices, assigned to a second subset of users, in the first subset of users, assigned to a first group exhibiting permission associated with the first application; and

identifying a third subset of endpoint devices, in the first subset of endpoint devices, assigned to a third subset of users, in the first subset of users, assigned to a group absent permission associated with the first application; and

generating a visualization representing:

the second subset of endpoint devices, on which the first application is installed, assigned to the second subset of users assigned to the first group exhibiting permission associated with the first application; and

the third subset of endpoint devices, on which the first application is installed, assigned to the third subset of users assigned to the group absent permission associated with the first application.

16. The method of claim 15 :

wherein generating the visualization comprises:

initializing the visualization comprising:

a first area corresponding to the first subset of endpoint devices; and

a second area corresponding to the second subset of endpoint devices and partially intersecting the first area; and

annotating the first area, outside of the second area, with a representation of the third subset of endpoint devices; and

further comprising rendering the visualization at an operator portal.

17. The method of Claim 15 , further comprising:

accessing a subset of user containers corresponding to the third subset of users; and

for each user container in the subset of user containers:

generating a tag associating a user, represented by the user container, with the first application and absence of permission associated with the first application; and

compiling the tag in the user container.

18. The method of claim 15 , further comprising:

for each endpoint device in the third subset of endpoint devices:

generating a command to uninstall the first application from the endpoint device; and

serving the command to the endpoint device.

19. A method comprising:

accessing a set of objects, generated by a set of sources during a first time interval, representing attributes of a set of assets affiliated with a computer network, the set of assets comprising:

a set of endpoint devices; and

a set of applications comprising a first application;

extracting application identifying data from the set of objects;

based on the application identifying data, partitioning the set of objects into a set of object groups comprising a first object group representing the first application during the first time interval;

aggregating attributes represented in objects in the first object group into a first application container, in a set of applications containers, representing the first application;

generating a first manifest of applications, comprising the first application, installed on endpoint devices in the set of endpoint devices during the first time interval based on the set of application containers;

in response to selection of the first application in the first manifest of applications at an operator portal:

accessing a first attribute, defined in the first application container, representing a second subset of endpoint devices, in the set of endpoint devices, permitted to install the first application;

generating a visualization representing a first set of attributes exhibited by the first application during the first time interval, the first set of attributes comprising a second attribute representing a first subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval, the visualization comprising:

a first area corresponding to the first subset of endpoint devices; and

a second area corresponding to the second subset of endpoint devices and partially intersecting the first area; and

annotating the first area, outside of the second area, with a representation of a third subset of endpoint devices, in the set of endpoint devices, comprising the first application and excluded from the second subset of endpoint devices; and

rendering the visualization at the operator interface.

20. A method comprising:

accessing a set of objects, generated by a set of sources during a first time interval, representing attributes of a set of assets affiliated with a computer network, the set of assets comprising:

a set of endpoint devices; and

a set of applications comprising a first application;

extracting application identifying data from the set of objects;

based on the application identifying data, partitioning the set of objects into a set of object groups comprising a first object group representing the first application during the first time interval;

aggregating attributes represented in objects in the first object group into a first application container, in a set of applications containers, representing the first application;

generating a first manifest of applications, comprising the first application, installed on endpoint devices in the set of endpoint devices during the first time interval based on the set of application containers;

in response to selection of the first application in the first manifest of applications at an operator portal, generating a visualization representing a first set of attributes exhibited by the first application during the first time interval, the first set of attributes comprising a first attribute representing a first subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval;

rendering the visualization at the operator interface;

accessing a policy defining a first quantity of licenses associated with the first application;

calculating a second quantity of allocated licenses based on the first subset of endpoint devices; and

in response to a difference between the second quantity and the first quantity exceeding a threshold quantity:

generating a notification to selectively investigate the first quantity of licenses associated with the first application; and

serving the notification to a device associated with an administrator affiliated with the computer network.

21. A method comprising:

accessing a set of objects, generated by a set of sources during a first time interval, representing attributes of a set of assets affiliated with a computer network, the set of assets comprising:

a set of endpoint devices; and

a set of applications comprising a first application;

extracting application identifying data from the set of objects;

based on the application identifying data, partitioning the set of objects into a set of object groups comprising a first object group representing the first application during the first time interval;

aggregating attributes represented in objects in the first object group into a first application container, in a set of applications containers, representing the first application;

generating a first manifest of applications, comprising the first application, installed on endpoint devices in the set of endpoint devices during the first time interval based on the set of application containers;

in response to selection of the first application in the first manifest of applications at an operator portal, generating a visualization representing a first set of attributes exhibited by the first application during the first time interval, the first set of attributes comprising:

a first attribute representing a first subset of endpoint devices, in the set of endpoint devices, on which the first application is installed during the first time interval; and

a second attribute representing a first subset of users, in the set of users, assigned to the first subset of endpoint devices during the first time interval;

rendering the visualization at the operator interface;

accessing a software profile corresponding to a first user in the first subset of users; and

in response to the software profile excluding the first application, selectively prompting security personnel to investigate the first user.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2026
From: SEVCO SECURITY, INC.
To: ARCTIC WOLF NETWORKS, INC.
Reel/Frame 074112/0170 →
RELEASE OF SECURITY INTEREST Recorded Mar 3, 2026
From: JPMORGAN CHASE BANK, N.A
To: SEVCO SECURITY, INC.
Reel/Frame 073957/0597 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 5, 2025
From: SEVCO SECURITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071168/0322 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2024
From: GUY, JEFFREY J.; MEKKAWY, DEAN; BARTOLOMEO, NEVINS; CABEZAS, LUIS DIEGO; GRIFFIN, AARON; HACKETT, JACOB; ALFONSE, MICHAEL; CASON, CRAIG; SHIPLEY, MARK; MCFARLAND, JASON; MURDOCK, NICHOLAS; TAYLOR, STEVE; SMITH, AARON
To: SEVCO SECURITY, INC.
Reel/Frame 066653/0713 →
Continuity (7)
Continuation In Part 18129575 · Mar 31, 2023
Continuation 17720163 · Apr 13, 2022
Provisional Application 63174485 · Apr 13, 2021
Provisional Application 63281980 · Nov 22, 2021
Provisional Application 63408955 · Sep 22, 2022
Provisional Application 63411544 · Sep 29, 2022
Related Publication 20240015165A1 · Jan 11, 2024
Cited By (3)
US 12,206,712 US 12,671,695 US 12,689,629