IP Library Granted Patent US 11,368,432
Granted Patent B2
US 11,368,432 · App. 16/877,265 · Granted Jun 21, 2022

Network containment of compromised machines

Inventors: Paul Meyer (Hudson, WI); Cameron Gutman (Redmond, WA); John R. Kooker (Poway, CA)
Assignee: Crowd Strike, Inc.
H04L63/0263G06F21/554G06F21/566H04L63/0227H04L63/0236G06F21/56G06F21/562G06F2221/2115H04L63/02H04L63/1441
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,368,432
App. No.
16/877,265
Granted
Jun 21, 2022
Kind
B2
Abstract

A computing device can install and execute a kernel-level security agent that interacts with a remote security system as part of a detection loop aimed at defeating malware attacks. The kernel-level security agent can be installed with a firewall policy that can be remotely enabled by the remote security system in order to “contain” the computing device. Accordingly, when the computing device is being used, and a malware attack is detected on the computing device, the remote security system can send an instruction to contain the computing device, which causes the implementation, by an operating system (e.g., a Mac™ operating system) of the computing device, of the firewall policy accessible to the kernel-level security agent. Upon implementation and enforcement of the firewall policy, outgoing data packets from, and incoming data packets to, the computing device that would have been allowed prior to the implementation of the firewall policy are denied.

Claims (61)

1. A method implemented by a remote security system, the method comprising:

sending, over a computer network and to a computing device, a kernel-level security agent to be installed on the computing device, the kernel-level security agent including a firewall policy that, upon implementation and enforcement on the computing device, denies outgoing data packets from, and incoming data packets to, the computing device that are otherwise allowed prior to the implementation and enforcement of the firewall policy;

receiving, over the computer network and from the computing device, events associated with activity on the computing device, the events having been observed by the kernel-level security agent;

determining that the events are associated with malicious code; sending, over the computer network and to the computing device, a first instruction to contain the computing device by enforcing the firewall policy;

receiving, over the computer network and from the computing device, additional events associated with subsequent activity on the computing device, the additional events having been observed by the kernel-level security agent;

determining, based at least in part on the additional events, that the computing device is no longer compromised; and

sending, over the computer network and to the computing device, a second instruction to deactivate containment of the computing device by ceasing enforcement of the firewall policy on the computing device.

2. The method of claim 1 , further comprising:

automatically determining, based at least in part on output of a machine learning model that processes the events as input, to contain the computing device, wherein the sending the instruction to contain the computing device is performed automatically, without human intervention.

3. The method of claim 1 , wherein the computing device is a first computing device, the method further comprising, after the determining: presenting, on a display of a second computing device of the remote security system, a user interface that includes:

an alert indicating that the first computing device has been compromised; and

a selection element to contain the first computing device; and

receiving a selection of the selection element via the user interface, wherein the sending of the instruction is in response to the receiving of the selection.

4. The method of claim 3 , wherein the selection element is a first selection element, the selection is a first selection, and the user interface further includes a second selection element to provide information pertaining to the alert, the method further comprising:

receiving a second selection of the second selection element via the user interface; and

presenting the information on the display via the user interface.

5. The method of claim 1 , further comprising sending, over the computer network and to the computing device, a whitelist including one or more remote network addresses to allow the computing device to communicate with one or more computing systems associated with the one or more remote network addresses while the firewall policy is enforced on the computing device.

6. The method of claim 1 , wherein the instruction is a first instruction, the method further comprising, after the sending of the first instruction, sending, over the computer network and to the computing device, data including at least one of:

a new version of the kernel-level security agent that includes a patch configured to counter the malicious code; or

a second instruction to perform a remediation action to counter the malicious code.

7. A system comprising:

one or more processors; and

memory storing computer-executable instructions that, when executed by the one or more processors, cause the system to:

send, over a computer network and to a computing device, a kernel-level security agent to be installed on the computing device, the kernel-level security agent including a firewall policy that, upon implementation and enforcement on the computing device, denies outgoing data packets from, and incoming data packets to, the computing device that are otherwise allowed prior to the implementation and enforcement of the firewall policy;

receive, over the computer network and from the computing device, events associated with activity on the computing device, the events having been observed by the kernel-level security agent;

determine that the events are associated with malicious code;

send, over the computer network and to the computing device, a first instruction to enforce the firewall policy to contain the computing device;

receive, over the computer network and from the computing device, additional events associated with subsequent activity on the computing device, the additional events having been observed by the kernel-level security agent;

determine, based at least in part on the additional events, that the computing device is no longer compromised; and

send, over the computer network and to the computing device, a second instruction to deactivate containment of the computing device by ceasing enforcement of the firewall policy on the computing device.

8. The system of claim 7 , wherein the computer-executable instructions, when executed by the one or more processors, further cause the system to:

automatically determine, based at least in part on output of a machine learning model that processes the events as input, to contain the computing device, wherein sending the instruction is performed automatically, without human intervention.

9. The system of claim 7 , wherein the computing device is a first computing device, and wherein the computer-executable instructions, when executed by the one or more processors, further cause the system to, after determining that the events are associated with the malicious code:

present, on a display of a second computing device of the system, a user interface that includes:

an alert indicating that the first computing device has been compromised; and

a selection element to contain the first computing device; and

receive a selection of the selection element via the user interface, wherein sending the instruction is in response to receiving the selection.

10. The system of claim 7 , wherein the computer-executable instructions, when executed by the one or more processors, further cause the system to send, over the computer network and to the computing device, a whitelist including one or more remote network addresses.

11. The system of claim 7 , wherein the instruction is a first instruction, and wherein the computer-executable instructions, when executed by the one or more processors, further cause the system to, after sending the first instruction, send, over the computer network and to the computing device, data including at least one of:

a new version of the kernel-level security agent that includes a patch configured to counter the malicious code; or

a second instruction to perform a remediation action to counter the malicious code.

12. The system of claim 7 , wherein the computer-executable instructions, when executed by the one or more processors, further cause the system to, after sending the instruction, hold the instruction in a queue and periodically poll the computing device until an acknowledgement is received from the computing device, the acknowledgement indicating that the computing device received the instruction.

13. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by one or more processors of a system, cause the system to perform operations comprising:

sending, over a computer network and to a computing device, a kernel-level security agent to be installed on the computing device, the kernel-level security agent including a firewall policy that, upon implementation and enforcement on the computing device, denies outgoing data packets from, and incoming data packets to, the computing device that are otherwise allowed prior to the implementation and enforcement of the firewall policy;

receiving, over the computer network and from the computing device, events associated with activity on the computing device, the events having been observed by the kernel-level security agent;

determining that the events are associated with malicious code;

sending, over the computer network and to the computing device, a first instruction to contain the computing device, the instruction causing the computing device to enforce the firewall policy;

receiving, over the computer network and from the computing device, additional events associated with subsequent activity on the computing device, the additional events having been observed by the kernel-level security agent;

determining, based at least in part on the additional events, that the computing device is no longer compromised; and

sending, over the computer network and to the computing device, a second instruction to deactivate containment of the computing device by ceasing enforcement of the firewall policy on the computing device.

14. The one or more non-transitory computer-readable media of claim 13 , the operations further comprising:

automatically determining, based at least in part on output of a machine learning model that processes the events as input, to contain the computing device, wherein the sending of the instruction is performed automatically, without human intervention.

15. The one or more non-transitory computer-readable media of claim 13 , wherein the computing device is a first computing device, the operations further comprising, after the determining:

presenting, on a display of a second computing device of the system, a user interface that includes:

an alert indicating that the first computing device has been compromised; and

a selection element to contain the first computing device; and

receiving a selection of the selection element via the user interface, wherein the sending of the instruction is in response to the receiving of the selection.

16. The one or more non-transitory computer-readable media of claim 13 , the operations further comprising sending, over the computer network and to the computing device, a whitelist including one or more remote network addresses.

17. The one or more non-transitory computer-readable media of claim 13 , wherein the instruction is a first instruction, the operations further comprising, after the sending of the first instruction, sending, over the computer network and to the computing device, data including at least one of:

a new version of the kernel-level security agent that includes a patch configured to counter the malicious code; or

a second instruction to perform a remediation action to counter the malicious code.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Jan 6, 2026
From: FIRST-CITIZENS BANK & TRUST COMPANY
To: CROWDSTRIKE HOLDINGS, INC.; CROWDSTRIKE, INC.
Reel/Frame 074202/0710 →
PATENT SECURITY AGREEMENT Recorded Jan 5, 2021
From: CROWDSTRIKE HOLDINGS, INC.; CROWDSTRIKE, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 054899/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2020
From: MEYER, PAUL; GUTMAN, CAMERON; KOOKER, JOHN R.
To: CROWDSTRIKE, INC.
Reel/Frame 052694/0443 →
Continuity (2)
Division 15643291 · Jul 6, 2017
Related Publication 20200280540A1 · Sep 3, 2020