Patents Assigned to Tanium Inc.
  • Patent number: 11956335
    Abstract: An application mapping procedure obtains and aggregates application mapping information from a plurality of machines in a distributed system. An application dependency map, including first layer of application mapping information, is initialized, and then a first query is sent to one or more of the machines. In response, information identifying entities that have participated in predefined communications with entities identified in an existing layer of application mapping information in the application dependency map are received, and a second layer of application mapping information is added to the application dependency map, based at least in part on the information received in response to the first query. After adding the second layer of application mapping information to the application dependency map, a second query is sent to one or more of the of the endpoint machines, the second query being based at least in part on the application dependency map.
    Type: Grant
    Filed: May 23, 2022
    Date of Patent: April 9, 2024
    Assignee: Tanium Inc.
    Inventors: Naveen Goela, Rishi Kant, Andrew R. White, Christian L. Hunt, David Irwin
  • Patent number: 11914495
    Abstract: Performance of a collection of machines, arranged in a linear sequence of machines that form a linear communication orbit (LCO), is monitored. Multiple machines in the LCO receive, via the LCO, a set of rules (or various subsets of the same set of rules), each rule specifying one or a combination of conditions (e.g., a performance metric and corresponding criterion) for satisfying the rule, evaluate those rules with respect to locally occurring events and local processes, and store results of those evaluations in a local database. In response to a query sent to the machines via the LCO, each of the machines returns a report, including information identifying processes whose performance during the specified time period satisfies at least one rule in the set of one or more rules. Those reports are aggregated and used to generate a merged report reflecting performance information with respect to a set of machines.
    Type: Grant
    Filed: March 20, 2023
    Date of Patent: February 27, 2024
    Assignee: TANIUM INC.
    Inventors: Daniel Varga, Christian L. Hunt, Casey Watson, Trever Shick, Michelle Rezentes, Ryan Catherman, Joshua F. Stoddard
  • Patent number: 11886229
    Abstract: In a distributed system that includes a collection of machines, a server system generates a global dictionary from sampling responses received from machines in the collection of machine, at least a subject of the sampling responses including information indicating one or more terms in a corpus of information stored at a respective machine in the collection of machines. The global dictionary includes global document frequency values corresponding to the document frequencies of terms in the corpora of information stored in the collection of machines. The server system generates a similarity search query for a target document, the similarity search query including identifiers of terms in the target document and optionally document frequency information for those terms, obtained from the global dictionary, and sends, through one or more linear communication orbits, the similarity search query to one or more respective machines in the collection of machines.
    Type: Grant
    Filed: February 22, 2021
    Date of Patent: January 30, 2024
    Assignee: TANIUM INC.
    Inventors: Naveen Goela, Joshua F. Stoddard, John R. Coates, Christian L. Hunt, Adam Mustafa
  • Patent number: 11831670
    Abstract: A server system obtains, for machines in a distributed system, system risk information, such as information identifying open sessions between respective users and respective machines, information identifying vulnerabilities in respective machines; and administrative rights information identifying groups of users having administrative rights to respective machines. The server system determines security risk factors, including risk factors related to lateral movement between logically coupled machines, and generates machine risk assessment values for at least a subset of the machines, based on a weighted combination of the risk factors. A user interface that includes a list of machines, sorted in accordance with the machine risk assessment values is presented to a user.
    Type: Grant
    Filed: November 18, 2020
    Date of Patent: November 28, 2023
    Assignee: TANIUM INC.
    Inventors: Stefan Horst-Guenter Molls, Joshua M. Bryant, Keith A. Robertson, John E. Foscue
  • Patent number: 11809294
    Abstract: A first machine identifies, from among a non-static collection of machines, a respective set of forward contacts that comprises a set of machines. The set of forward contacts are distributed along the ordered sequence in the forward direction away from the respective machine in an order of increasing similarity between the respective channel number assigned to the first machine and a respective channel number assigned to each of the set of forward contacts. The first machine establishes a respective direct communication channel between the first machine and each of the set of forward contacts. The first machine sends a first query to a first forward contact and sends collected answers for the first query to at least a second forward contact that has a greater similarity to the first machine based on the respective channel numbers of the first machine and the first and second forward contacts.
    Type: Grant
    Filed: October 3, 2022
    Date of Patent: November 7, 2023
    Assignee: TANIUM INC.
    Inventors: Lisa Lippincott, David Hindawi, Orion Hindawi, Peter Lincroft
  • Patent number: 11777981
    Abstract: A server system sends, via a linearly ordered communication orbit, to computational machines at a first subset of nodes in a computer network, a set of local environment verification tests and a set of mappings that map results of the local environment verification tests into a set of risk scores. Requests sent by the server system cause the computational machines at the plurality of nodes to: locally evaluate the set of local environment verification tests to produce test results, and locally map the test results using the set of mappings into a set of risk scores. Queries sent by the server cause the computational machines at the plurality of nodes to return to the server system at least a portion of the test results and risk scores. The server, identifies, based on the received test results and risk scores, computational machines and/or control categories having risk scores satisfying predefined criteria.
    Type: Grant
    Filed: January 20, 2023
    Date of Patent: October 3, 2023
    Assignee: TANIUM INC.
    Inventors: James B. Hoscheit, Peyton T. Ball, E. Egon Rinderer, John Phillip Ham
  • Patent number: 11711810
    Abstract: A method is provided of managing a non-static collection of machines. A first client machine runs a first communication protocol. The non-static collection of machines includes a first linear communication orbit, the first linear communication orbit comprising a sequence of machines that run the first communication protocol, and a second linear communication orbit, the second linear communication orbit comprising a sequence of machines that run a second communication protocol distinct from the first communication protocol. The first client machine receives an instruction from a server to install the second communication protocol, installs the second communication protocol, and then submits a registration request to the server. The first client machine receives, from the server, contact information of a list of potential neighbors. The first client machine then, proactively constructs and maintains a respective local segment of the second linear communication orbit.
    Type: Grant
    Filed: November 8, 2021
    Date of Patent: July 25, 2023
    Assignee: TANIUM INC.
    Inventors: Thomas R. Guieu, Matthew C. Hauck, Jason E. Mealins, David Hindawi, Orion Hindawi, Lisa Lippincott, Peter Lincroft
  • Patent number: 11700303
    Abstract: A server system, coupled to a linear communication orbit, has a plurality of function modules. Each function module is configured to collect data from machines located at nodes of the linear communication orbit, process collected data according to a schema definition to generate result data, and store the result data in a database. Data collection requests, based on the schema definition, are sent through the linear communication orbit to collecting data from a set of machines via the linear communication orbit. In some embodiments, a central data management module of the one or more servers is configured to provide the schema definition to and receive result data reported from the function modules.
    Type: Grant
    Filed: October 15, 2021
    Date of Patent: July 11, 2023
    Assignee: TANIUM INC.
    Inventors: Ryan S. Richards, John R. Coates, James B. Evans
  • Patent number: 11609835
    Abstract: Performance of a collection of machines, arranged in a linear sequence of machines that form a linear communication orbit (LCO), is monitored. Multiple machines in the LCO receive, via the LCO, a set of rules (or various subsets of the same set of rules), each rule specifying one or a combination of conditions (e.g., a performance metric and corresponding criterion) for satisfying the rule, evaluate those rules with respect to locally occurring events and local processes, and stores results of those evaluations in a local database. In response to a performance query sent to the machines via the LCO, each of the machines returns a report, including information identifying processes whose performance during the specified time period satisfies at least one rule in the set of one or more rules. Those reports are aggregated and used to present performance information to a user.
    Type: Grant
    Filed: July 30, 2020
    Date of Patent: March 21, 2023
    Assignee: TANIUM INC.
    Inventors: Daniel Varga, Christian L. Hunt, Casey Watson, Trever Shick, Michelle Rezentes, Ryan Catherman, Joshua F. Stoddard
  • Patent number: 11563764
    Abstract: A server system sends, via a linearly ordered communication orbit, to computational machines at a first subset of nodes in a computer network, a set of local environment verification tests and a set of mappings that map results of the local environment verification tests into a set of risk scores. Requests sent by the server system cause the computational machines at the plurality of nodes to: locally evaluate the set of local environment verification tests to produce test results, and locally map the test results using the set of mappings into a set of risk scores. Queries sent by the server cause the computational machines at the plurality of nodes to return to the server system at least a portion of the test results and risk scores. The server, identifies, based on the received test results and risk scores, computational machines and/or control categories having risk scores satisfying predefined criteria.
    Type: Grant
    Filed: August 24, 2020
    Date of Patent: January 24, 2023
    Assignee: TANIUM INC.
    Inventors: James B. Hoscheit, Peyton T. Ball, E. Egon Rinderer, John Phillip Ham
  • Patent number: 11461208
    Abstract: A first machine identifies, from among a non-static collection of machines, a respective set of forward contacts that comprises a set of machines. The set of forward contacts are distributed along the ordered sequence in the forward direction away from the respective machine in an order of increasing similarity between the respective channel number assigned to the first machine and a respective channel number assigned to each of the set of forward contacts. The first machine establishes a respective direct communication channel between the first machine and each of the set of forward contacts. The first machine sends a first query to a first forward contact and sends collected answers for the first query to at least a second forward contact that has a greater similarity to the first machine based on the respective channel numbers of the first machine and the first and second forward contacts.
    Type: Grant
    Filed: May 12, 2020
    Date of Patent: October 4, 2022
    Assignee: TANIUM INC.
    Inventors: Lisa Lippincott, David Hindawi, Orion Hindawi, Peter Lincroft
  • Patent number: 11372938
    Abstract: A machine in a linear communication orbit receives a query, including a set of one or more rules, through the linear communication orbit. The machine, for each respective rule: identifies files that contain content that satisfies the respective rule, generates a first report identifying a count of files at the machine that contain content satisfying the rule, and sends the first report through the linear communication orbit to a server. The machine receives an instruction packet from an external machine that includes an instruction for establishing a direct duplex connection between the respective machine and the external machine. then sends a request to the external machine to establish the direct duplex connection. The machine sends to the external machine, via the direct duplex connection, a second report including information identifying files at the machine that contain file content satisfying each rule in the set of one or more rules.
    Type: Grant
    Filed: May 8, 2020
    Date of Patent: June 28, 2022
    Assignee: TANIUM INC.
    Inventors: Joshua F. Stoddard, Sachin P. Patel, Shawn M. Surber, Aaron J. Tarter, John R. Coates
  • Patent number: 11343355
    Abstract: An application mapping procedure obtains and aggregates application mapping information from a plurality of machines in a distributed system. A first layer of application mapping information is generated, identifying application entry points, each comprising a machine and a process executed by the identified machine. An application map is initialized with the first layer of application mapping information. A plurality of iterations of a predefined map gathering operation are performed, each iteration adding a layer of application mapping information to the application map, thereby producing an application map of the distributed processing of one or more respective applications. Each iteration sends queries, via one or more linear communication orbits, to machines in the distributed system, and obtains from the machines information identifying entities that have participated in predefined communications with entities identified in a most recently generated or added layer of application mapping information.
    Type: Grant
    Filed: July 30, 2020
    Date of Patent: May 24, 2022
    Assignee: TANIUM INC.
    Inventors: Naveen Goela, Rishi Kant, Andrew R. White, Christian L. Hunt, David Irwin
  • Patent number: 11277489
    Abstract: A method of updating software, performed by respective machines in a linear communication orbit includes, at a local server executed by a respective machine, receiving, via the linear communication orbit, update metadata. At an update module executed by the respective machine, an update module evaluates software version information using the update metadata to determine a set of one or more updates to be applied to one or more software programs. A patch module sends, via the linear communication orbit, requests for one or more software update files corresponding to the set of one or more updates, and receives the one or more software update files corresponding to the set of one or more updates. The update module then updates the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs.
    Type: Grant
    Filed: December 21, 2020
    Date of Patent: March 15, 2022
    Assignee: TANIUM INC.
    Inventors: Max Freilich, Andrew R. White, Christian L. Hunt, Peter Constantine, Peter Lincroft
  • Patent number: 11258654
    Abstract: Decoupling of a first machine from a plurality of machines in a network is disclosed. Each machine has a machine identifier. The plurality of machines are organized into a linearly ordered sequence in accordance with a predefined order of the machine identifiers. The first machine is configured to receive a query from a preceding machine and propagate the query to a succeeding machine in the linearly ordered sequence. Prior to decoupling from the network, the first machine informs respective presence of a first subset of machines to a second subset of machines that are not overlapping with the first subset of machines. The first subset of machines includes a machine having a lower machine identifier relative to the machine identifier of the first machine, and the second subset of machines includes a machine having a higher machine identifier relative to the machine identifier of the first machine.
    Type: Grant
    Filed: June 30, 2020
    Date of Patent: February 22, 2022
    Assignee: Tanium Inc.
    Inventors: David Hindawi, Orion Hindawi, Lisa Lippincott, Peter Lincroft
  • Patent number: 11172470
    Abstract: A method is provided of managing a non-static collection of machines. A first client machine runs a first communication protocol. The non-static collection of machines includes a first linear communication orbit, the first linear communication orbit comprising a sequence of machines that run the first communication protocol, and a second linear communication orbit, the second linear communication orbit comprising a sequence of machines that run a second communication protocol distinct from the first communication protocol. The first client machine receives an instruction from a server to install the second communication protocol, installs the second communication protocol, and then submits a registration request to the server. The first client machine receives, from the server, contact information of a list of potential neighbors. The first client machine then, proactively constructs and maintains a respective local segment of the second linear communication orbit.
    Type: Grant
    Filed: April 21, 2020
    Date of Patent: November 9, 2021
    Assignee: TANIUM INC.
    Inventors: Thomas R. Guieu, Matthew C. Hauck, Jason E. Mealins, David Hindawi, Orion Hindawi, Lisa Lippincott, Peter Lincroft
  • Patent number: 11153383
    Abstract: This application is directed to a distributed data processing method performed at a server system coupled to a linear communication orbit. The server system has a plurality of function modules. Each function module is configured to collect data related to a core function from the linear communication orbit. Each function module includes an internal client configured to adaptively perform a set of data processing operations according to a schema definition, including generating a data collection request for collecting raw data items, sending the data collection request through the linear communication orbit, collecting the requested raw data items from a set of machines via the linear communication orbit, and performing analysis on the collected raw data items. In some embodiments, a central data management module of the one or more servers is configured to provide the schema definition to and receive result data reported from the function modules.
    Type: Grant
    Filed: June 17, 2019
    Date of Patent: October 19, 2021
    Assignee: TANIUM INC.
    Inventors: Ryan S. Richards, John R. Coates, James B. Evans
  • Patent number: 10929345
    Abstract: In a distributed system, each of N machines receives a similarity search query through a linear communication orbit. The similarity search query includes token identifiers corresponding to tokens in a target document. Each machine, in response, identifies files that meet predefined similarity criteria with respect to the target document. Subsequent to receiving the similarity search query, the machine generates a first report, including a count of files stored at the machine that meet the predefined similarity criteria with respect to the target document, and/or information identifying a set of files that meet the predefined similarity criteria with respect to the target document; and sends the first report to a server through the linear communication orbit. The server produces a merged report presenting information with respect to files at a set of machines, including the N machines, that meet the predefined similarity criteria with respect to the target document.
    Type: Grant
    Filed: August 5, 2019
    Date of Patent: February 23, 2021
    Assignee: TANIUM INC.
    Inventors: Joshua F. Stoddard, John R. Coates, Naveen Goela, Aaron J. Tarter, Christian L. Hunt
  • Patent number: 10873645
    Abstract: A method of updating software, performed by respective machines in a linear communication orbit includes, at a local server executed by a respective machine, receiving, via the linear communication orbit, update metadata. At an update module executed by the respective machine, an update module evaluates software version information using the update metadata to determine a set of one or more updates to be applied to one or more software programs. A patch module sends, via the linear communication orbit, requests for one or more software update files corresponding to the set of one or more updates, and receives the one or more software update files corresponding to the set of one or more updates. The update module then updates the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs.
    Type: Grant
    Filed: September 9, 2019
    Date of Patent: December 22, 2020
    Assignee: TANIUM INC.
    Inventors: Max Freilich, Andrew R. White, Christian L. Hunt, Peter Constantine, Peter Lincroft
  • Patent number: 10841365
    Abstract: This application is directed to a mapping method performed at a computational machine in a linear communication orbit. The computational machine receives an application definition the linear communication orbit. The application definition specifies criteria for establishing whether the computational machine executes a specified application, a component of the specified application, or communicate with another node executing the specified application or a component of the specified application. While a plurality of events are occurring locally at the computational machine, the computational machine identifies one or more operations meeting the application definition in real-time. The identified one or more operations meeting the application definition, and associated metadata are stored in a local mapping database of the computational machine and returned to the server system through the linear communication orbit in response to a map request received through the linear communication orbit.
    Type: Grant
    Filed: June 3, 2019
    Date of Patent: November 17, 2020
    Assignee: TANIUM INC.
    Inventors: Andrew R. White, Zakary A. Kus, Michael W. Broome, Christian L. Hunt, Rahul R. Jaswa