Kernel-level security agent

US9621515B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9621515-B2
Application numberUS-201514709779-A
CountryUS
Kind codeB2
Filing dateMay 12, 2015
Priority dateJun 8, 2012
Publication dateApr 11, 2017
Grant dateApr 11, 2017

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 kernel-level security agent is described herein. The kernel-level security agent is configured to observe events, filter the observed events using configurable filters, route the filtered events to one or more event consumers, and utilize the one or more event consumers to take action based at least on one of the filtered events. In some implementations, the kernel-level security agent detects a first action associated with malicious code, gathers data about the malicious code, and in response to detecting subsequent action(s) of the malicious code, performs a preventative action. The kernel-level security agent may also deceive an adversary associated with malicious code. Further, the kernel-level security agent may utilize a model representing chains of execution activities and may take action based on those chains of execution activities.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: one or more processors; and a kernel-level security agent including a kernel-mode collector component, configurable filter(s), a routing component, and one or more kernel-mode event consumers, each of the kernel-mode collector component, configurable filter(s), routing component, and one or more kernel-mode event consumers being implemented at the kernel-level wherein: the kernel-mode collector component is configured to be executed by the one or more processors to observe kernel-level events, the configurable filter(s) are configured to be executed by the one or more processors to filter the observed events, including at least the kernel-level events, the routing component is configured to be executed by the one or more processors to route one(s) of the filtered events to one(s) of the one or more kernel-mode event consumers, and the one or more kernel-mode event consumers are configured to be executed by the one or more processors to take action based at least on one of the filtered events. 2. The system of claim 1 , wherein the kernel-level security agent comprises a model to track attributes or behaviors of one or more objects or processes of the system, and the kernel-level security agent is further configured to update the model based at least in part on the filtered events. 3. The system of claim 2 , wherein one or both of the configurable filter(s) or kernel-mode event consumers is configured to query the model. 4. The system of claim 1 , wherein the kernel-level security agent comprises a communications module implemented at the kernel-level and configured to communicate with one or more remote systems. 5. The system of claim 1 , wherein the action is informing a remote security system of the filtered events. 6. The system of claim 5 , wherein the kernel-level security agent receives, in response, at least one of instructions for performing a further action or a configuration update. 7. The system of claim 1 , wherein the kernel-level security agent receives one or more events, configuration updates, or instructions for performing actions from a remote security system independently of communications from the kernel-level security agent to the remote security system. 8. The system of claim 1 , wherein the one or more kernel-mode event consumers include at least one correlator that notes the fact of the occurrence of the filtered events and, based at least in part on an association between the occurrence of the filtered events and at least one of a threshold, a set, a sequence, a Markov chain, or a finite state machine, takes the action. 9. The system of claim 1 , wherein the one or more kernel-mode event consumers are to produce a new filterable event in response to receiving one or more of the filtered events. 10. The system of claim 1 , wherein the one or more kernel-mode event consumers include at least one actor configured to perform at least one of: gathering forensic data associated with an event, storing the forensic data in a model, informing a remote security system of the filtered events, or taking an action to halt or deceive a process associated with one or more of the filtered events. 11. The system of claim 1 , wherein the kernel-level security agent updates, replaces or removes one or more components of the kernel-level security agent while the kernel-level security agent continues to operate. 12. The system of claim 11 , wherein an existing component of the kernel-level security agent designated to be replaced or removed continues to operate during an update of the kernel-level security agent. 13. The system of claim 1 , wherein the kernel-level security agent comprises a scheduler to schedule asynchronous events for processing by the one or more kernel-mode event consumers. 14. The system of claim 1 , wherein the kernel-level security agent performs at least one of: observing events associated with multiple processes or threads in parallel, filtering the multiple observed events in parallel, routing the multiple filtered events in parallel, or utilizing multiple kernel-mode event consumers in parallel. 15. The system of claim 1 , wherein the kernel-level security agent utilizes the one or more kernel-mode event consumers to take action in response to a second event associated with a malicious code of the system, the second event occurring after observation of a first event by the kernel-level security agent. 16. The system of claim 1 , wherein the kernel-level security agent includes at least one of: a configuration manager to receive the configuration updates from a remote security system; a component manager to load or unload a new component based on the configuration update; a state manager to persist state information between old and new components; a storage manager to interface with storage of the system on behalf of the kernel-level security agent, or an integrity manager to observe, filter, and route events during an update of core components and managers of the kernel-level security agent. 17. The system of claim 1 , wherein the kernel-level security agent comprises a hypervisor, one or more pre-boot components that leverages hardware-provided security features, or one or more pre-boot components that does not leverage hardware-provided security features. 18. The system of claim 1 , wherein the kernel-level security agent comprises at least one user-mode collector to observe events in a user mode of the system and at least one user-mode configurable filter to filter events in the user mode of the system. 19. The system of claim 1 , wherein the kernel-level security agent is a secure operating system that launches prior to a system operating system. 20. A computer-implemented method comprising: observing, by a kernel-level security agent, events on a computing device; filtering, by the kernel-level security agent, the observed events using configurable filters; routing, by the kernel-level security agent, the filtered events to one or more kernel-mode event consumers of the kernel-level security agent; and taking action, by the kernel-level security agent, based at least on one of the filtered events; and receiving, from a remote security system, by the kernel-level security agent, instructions for performing a configuration update of at least one component of the kernel-level security agent. 21. The computer-implemented method of claim 20 , further comprising tracking attributes or behaviors of one or more objects or processes of the system in a model of the kernel-level security agent and updating the model based at least in part on the filtered events. 22. The computer-implemented method of claim 20 , wherein the taking the action includes informing the remote security system of the filtered events. 23. The computer-implemented method of claim 22 , further comprising receiving, in response to the informing, instructions for performing a further action. 24. The computer-implemented method of claim 20 , wherein taking the action comprises taking the action by one or more kernel-mode event consumers of the kernel-level security agent, and the one or more kernel-mode event consumers include at least one correlator that notes the fact of the occurrence of the filtered events and, based at least in part on an association between the occurrence of the filtered events and at least one of a threshold, a set, a sequence, a Markov chain, or a

Assignees

Inventors

Classifications

  • using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment · CPC title

  • Countermeasures against malicious traffic (countermeasures against attacks on cryptographic mechanisms H04L9/002) · CPC title

  • Inference or reasoning models · CPC title

  • G06F21/566Primary

    Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities · CPC title

  • Computer malware detection or handling, e.g. anti-virus arrangements · 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 US9621515B2 cover?
A kernel-level security agent is described herein. The kernel-level security agent is configured to observe events, filter the observed events using configurable filters, route the filtered events to one or more event consumers, and utilize the one or more event consumers to take action based at least on one of the filtered events. In some implementations, the kernel-level security agent detect…
Who is the assignee on this patent?
Crowdstrike Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/566. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 11 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).