IP Library › Granted Patent US 11,671,343
Granted Patent B2
US 11,671,343 · App. 17/185,454 · Granted Jun 6, 2023

Dynamic network traffic sniffer

Inventors: Yi Sun (San Jose, CA); Fei Zou (Menlo Park, CA)
Assignee: Helios Data Inc.
H04L43/12H04L43/02H04L43/045H04L43/062
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,671,343
App. No.
17/185,454
Granted
Jun 6, 2023
Kind
B2
Abstract

Techniques are disclosed relating to data discovery. A control program that is executing on a computer system may receiving a request to locate instances of data on a computer network having a plurality of computer systems that are managed by an orchestration program. The control program may perform multiple, limited-time-period deployments of a sniffer program to different portions of the computer network in order to sample network traffic from the different portions to determine whether instances of the data appear in the network traffic. The control program may receive, from the sniffer program, information that identifies one or more of the different portions of the computer network whose network traffic included instances of the data.

Claims (57)

1. A method, comprising:

receiving, by a control program that is executing on a computer system, a request to locate instances of data on a computer network having a plurality of computer systems that are managed by an orchestration program;

performing, by the control program, multiple, limited-time-period deployments of a sniffer program to different portions of the computer network in order to sample network traffic from the different portions to determine whether instances of the data appear in the network traffic, wherein performing a particular one of the multiple, limited-time-period deployments includes:

selecting one of the plurality of computer systems on which to deploy the sniffer program;

instructing the orchestration program to deploy the sniffer program on the selected computer system such that the sniffer program is connected to a network of that computer system, wherein the sniffer program is capable of sampling network traffic of the network of that computer system to determine whether instances of the data appear on that network; and

removing the sniffer program from the selected computer system before performing a subsequent deployment of the sniffer program to another portion of the computer network; and

receiving, by the control program from the sniffer program, information that identifies one or more of the different portions of the computer network whose network traffic included instances of the data.

2. The method of claim 1 , wherein the removing of the sniffer program from the selected computer system is performed in response to determining that the sniffer program has executed on the selected computer system for an interval of time that satisfies a threshold specified by a user associated with the computer network.

3. The method of claim 1 , further comprising:

causing, by the control program, a user interface to be presented to a user associated with the computer network, wherein the user interface identifies the plurality of computer systems; and

receiving, by the control program from the user, a selection of a subset of the plurality of computer systems, wherein the selected computer system is selected by the control program from the subset of computer systems.

4. The method of claim 1 , further comprising:

receiving, by the control program from a user associated with the computer network, user input identifying an amount of computer resources that the sniffer program is permitted to consume when executing on a given computer system, wherein the selecting is based on available computer resources of each of the plurality of computer systems.

5. The method of claim 1 , further comprising:

periodically communicating, by the control program, with the orchestration program to identify a list of programs that are executing on the plurality of computer systems, wherein the selecting is based on the list of programs.

6. The method of claim 5 , further comprising:

subsequent to the particular deployment, the control program determining, based on the periodically communicating, that the list of programs identifies a program that was initiated on the selected computer system after the particular deployment, and

wherein a second particular one of the multiple, limited-time-period deployments involves redeploying the sniffer program on the selected computer system.

7. The method of claim 1 , wherein the request to locate instances of the data includes a regular expression that defines a search pattern, and wherein sampling the network traffic includes:

extracting a set of data objects from the network traffic; and

applying the regular expression to content of the set of data objects to determine whether the content includes instances of the data.

8. The method of claim 1 , wherein the request to locate instances of the data includes an SQL command, and wherein sampling the network traffic includes determining whether content of the network traffic is associated with the SQL command.

9. A non-transitory computer readable medium having program instructions stored thereon that are executable by a computer system to cause the computer system to perform operations comprising:

receiving a request to locate instances of data on a computer network having a plurality of computer systems that are managed by an orchestration program;

performing multiple, limited-time-period deployments of a sniffer program to different portions of the computer network in order to sample network traffic from the different portions to determine whether instances of the data appear in the network traffic, wherein performing a particular one of the multiple, limited-time-period deployments includes:

selecting one of the plurality of computer systems on which to deploy the sniffer program;

instructing the orchestration program to deploy the sniffer program on the selected computer system such that the sniffer program is connected to a network of that computer system, wherein the sniffer program is capable of sampling network traffic of the network of that computer system to determine whether instances of the data appear on that network; and

removing the sniffer program from the selected computer system before performing a subsequent deployment of the sniffer program to another portion of the computer network; and

receiving, from the sniffer program, information that identifies one or more of the different portions of the computer network whose network traffic included instances of the data.

10. The medium of claim 9 , further comprising:

generating a map that identifies particular portions of the computer network whose network traffic included instances of the data; and

causing the map to be presented to a user that is associated with the computer network.

11. The medium of claim 10 , further comprising:

receiving, from the user, a selection of one or more of the particular portions identified by the map; and

performing one or more deployments of a data collector program to the selected one or more particular portions, wherein the data collector program is operable to sample network traffic and enforce a set of policies on sampled network traffic.

12. The medium of claim 10 , wherein the information that is received from the sniffer program identifies a set of behavioral features that describe the different portions of the computer network, wherein the map is generated based on the set of behavior features.

13. The medium of claim 12 , wherein the map specifies scores for the different portions of the computer network, wherein a first portion of the computer network is scored higher than a second portion of the computer network based on the set of behavioral features.

14. The medium of claim 12 , wherein the set of behavioral features identifies a specific portion of the computer network that is associated with a threshold amount of network traffic.

15. The medium of claim 12 , wherein the set of behavioral features identifies a specific portion of the computer network that is associated with accesses that originate from a threshold number of different entities.

16. A system, comprising:

at least one processor; and

memory having program instructions stored thereon that are executable by the at least one processor to cause the system to perform operations comprising:

receiving a request to locate instances of data on a computer network having a plurality of computer systems that are managed by an orchestration program;

performing multiple deployments of a sniffer program to locate instances of the data on different portions of the computer network, wherein a given deployment includes:

selecting one of the plurality of computer systems on which to deploy the sniffer program;

instructing the orchestration program to deploy the sniffer program on the selected computer system such that the sniffer program is connected to a network of that computer system, wherein the sniffer program is capable of sampling network traffic of the network of that computer system to determine whether instances of the data appear on the network; and

removing the sniffer program from the selected computer system before performing a subsequent deployment of the sniffer program to another portion of the computer network; and

receiving, from the sniffer program, information that identifies one or more of the plurality of computer systems whose network traffic included instances of the data.

17. The system of claim 16 , further comprising:

generating a map that identifies particular portions of the computer network whose network traffic included instances of the data; and

causing the map to be presented to a user that is associated with the computer network.

18. The system of claim 17 , further comprising:

receiving, from the user, a selection of one or more of the particular portions identified by the map; and

performing one or more deployments of a data collector program to the selected one or more particular portions, wherein the data collector program is operable to sample network traffic and enforce a set of data control policies on sampled network traffic.

19. The system of claim 16 , wherein the request to locate instances of the data includes a regular expression that defines a search pattern, and wherein sampling the network traffic includes:

extracting a set of data objects from the network traffic; and

applying the regular expression to content of the set of data objects to determine whether the content includes instances of the data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2021
From: SUN, YI; ZOU, FEI
To: HELIOS DATA INC.
Reel/Frame 055414/0862 →
Continuity (2)
Provisional Application 62982942 · Feb 28, 2020
Related Publication 20210273872A1 · Sep 2, 2021