Endpoint malware detection using an event graph

US2017300690A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017300690-A1
Application numberUS-201715484830-A
CountryUS
Kind codeA1
Filing dateApr 11, 2017
Priority dateApr 15, 2016
Publication dateOct 19, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A data recorder stores endpoint activity on an ongoing basis as sequences of events that causally relate computer objects such as processes and files, and patterns within this event graph can be used to detect the presence of malware on the endpoint. The underlying recording process may be dynamically adjusted in order to vary the amount and location of recording as the security state of the endpoint changes over time.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer program product for detecting malware on an endpoint in an enterprise network, the computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executing on the endpoint, performs the steps of: instrumenting the endpoint to monitor a number of causal relationships among a number of computing objects at a plurality of logical locations within a computing environment on the endpoint; selecting a set of logical locations from the plurality of logical locations; recording a sequence of events causally relating the number of computing objects at the set of logical locations; creating an event graph based on the sequence of events; evaluating a security state of the endpoint based on the event graph; adjusting the set of logical locations by adding a new logical location, removing an existing logical location, or changing a level of filtering at one of the set of logical locations according to the security state of the endpoint; and remediating the endpoint when the security state is compromised. 2 . A method for malware detection comprising: instrumenting a first endpoint to monitor a number of causal relationships among a number of computing objects at a plurality of logical locations within a computing environment related to the first endpoint; selecting a first set of logical locations from the plurality of logical locations; recording a sequence of events causally relating the number of computing objects at the first set of logical locations; creating an event graph based on the sequence of events; applying a malware detection rule to the event graph; and remediating the first endpoint when the malware detection rule and the event graph indicate a compromised security state. 3 . The method of claim 2 wherein selecting the first set of logical locations includes selecting a group from the plurality of logical locations based on exposure to an external environment. 4 . The method of claim 2 wherein selecting the first set of logical locations includes selecting a group from the plurality of logical locations based on reputation. 5 . The method of claim 4 further comprising excluding at least one of the plurality of logical locations associated with a known, good process. 6 . The method of claim 2 further comprising selecting a second set of logical locations different from the first set of logical locations in response to an observed event graph for the sequence of events. 7 . The method of claim 2 further comprising adding one or more of the plurality of logical locations to the first set of logical locations in response to a detected increase in security risk. 8 . The method of claim 2 further comprising removing one of the plurality of logical locations from the first set of logical locations in response to a detected decrease in security risk. 9 . The method of claim 2 further comprising filtering one or more of the events in the sequence of events according to reputation. 10 . The method of claim 2 wherein the plurality of logical locations include at least one endpoint separate from the first endpoint. 11 . The method of claim 2 wherein the plurality of logical locations include at least one programming interface to a human interface device. 12 . The method of claim 2 further comprising identifying one of the computing objects as a cause of the compromised security state and remediating the one of the computing objects. 13 . The method of claim 2 further comprising traversing the event graph forward from the cause to identify one or more other ones of the computing objects affected by the cause. 14 . The method of claim 2 wherein the number of causal relationships include a data flow. 15 . The method of claim 2 wherein the number of causal relationships include a control flow. 16 . The method of claim 2 wherein the number of causal relationships include a network flow. 17 . The method of claim 2 wherein the one or more computing objects include one or more types of computing objects selected from a group consisting of a data file, a process, an application, a registry entry, a network address, and a peripheral device. 18 . The method of claim 2 wherein a number of events within the sequence of events are preserved for a predetermined time window, and further wherein the predetermined time window has a different duration for at least two different types of computing objects. 19 . An endpoint comprising: a network interface; a memory; and a processor configured by computer executable code stored in the memory to detect malware by performing the steps of instrumenting the endpoint to monitor a number of causal relationships among a number of computing objects at a plurality of logical locations within a computing environment related to the endpoint, selecting a first set of logical locations from the plurality of logical locations, recording a sequence of events causally relating the number of computing objects at the first set of logical locations, creating an event graph based on the sequence of events, applying a malware detection rule to the event graph, and remediating the endpoint when the malware detection rule and the event graph indicate a compromised security state. 20 . The endpoint of claim 19 , wherein the processor is further configured to adjust the set of logical locations by adding a new logical location, removing an existing logical location, or changing a level of filtering at one of the set of logical locations according to a security state of the endpoint.

Assignees

Inventors

Classifications

  • Auditing as a secondary aspect · CPC title

  • Test or assess a computer or a system · CPC title

  • G06F21/56Primary

    Computer malware detection or handling, e.g. anti-virus arrangements · CPC title

  • involving event detection and direct action · CPC title

  • Updates (security arrangements therefor G06F21/57) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017300690A1 cover?
A data recorder stores endpoint activity on an ongoing basis as sequences of events that causally relate computer objects such as processes and files, and patterns within this event graph can be used to detect the presence of malware on the endpoint. The underlying recording process may be dynamically adjusted in order to vary the amount and location of recording as the security state of the en…
Who is the assignee on this patent?
Sophos Ltd
What technology area does this patent fall under?
Primary CPC classification G06F21/56. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Oct 19 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).