IP Library › Granted Patent US 11,068,580
Granted Patent B2
US 11,068,580 · App. 15/758,234 · Granted Jul 20, 2021

Context-based secure controller operation and malware prevention

Inventors: Tal Efraim Ben David (Hogla, IL); Assaf Harel (Ramat Hasharon, IL); Amiram Dotan (Birmingham, MI); David Barzilai (Hod Hasharon, IL)
Assignee: Karamba Security Ltd.
G06F21/44G06F21/121H04L63/123H04L63/20H04L67/12G06F2221/2101H04L2209/84
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,068,580
App. No.
15/758,234
Granted
Jul 20, 2021
Kind
B2
Abstract

In one implementation, a method for providing security on an externally connected controller includes launching, by the controller, a security layer that includes a whitelist of permitted processes on the controller, the whitelist including (i) signatures for processes that are authorized to be executed and (ii) context information identifying permitted controller contexts within which the processes are authorized to be executed; determining, by the security layer, whether the particular process is permitted to be run on the controller based on a comparison of the determined signature with a verified signature for the particular process from the whitelist; identifying, by the security layer, a current context for the controller; determining, by the security layer, whether the particular process is permitted to be run on the controller based on a comparison of the current context with one or more permitted controller contexts for the particular process from the whitelist.

Claims (38)

1. A method for providing security on an externally connected controller, the method comprising:

launching, by the controller, a security layer that includes a whitelist of permitted processes on the controller, the whitelist being part of a custom security policy for the controller and including (i) signatures for processes that are authorized to be executed by the controller and (ii) context information identifying permitted real-time controller operating contexts within which the processes are authorized to be executed by the controller;

receiving, at the security layer, a request to run a particular process;

determining, by the security layer, a signature for the particular process;

determining, by the security layer, whether the particular process is permitted to be run on the controller based on a comparison of the determined signature with a verified signature for the particular process from the whitelist;

identifying, by the security layer, a current real-time controller operating context;

determining, by the security layer, whether the particular process is permitted to be run on the controller based on a comparison of the real-time controller operating context with one or more permitted real-time controller operating contexts for the particular process from the whitelist; and

blocking, by the security layer, the particular process from running on the controller based on determining one or more of: the determined signature not matching the verified signature for the process or the current real-time controller operating context not being included in the one or more permitted real-time controller operating contexts.

2. The method of claim 1 , wherein the whitelist was generated for the controller based on static analysis of an operating system for the controller.

3. The method of claim 1 , further comprising:

reporting, by the controller and to a server system, information that identifies the particular process as being blocked, wherein the information is reported to the server system without the particular process being executed by the controller and without prior transmission with the server system regarding the particular process.

4. The method of claim 1 , wherein the controller comprises an automotive electronic control unit (ECU).

5. The method of claim 1 , wherein the controller is part of an automation device or appliance.

6. The method of claim 4 , wherein the one or more permitted real-time controller operating contexts include one or more of: an initiation state, a shutdown state, an operational state, or an in motion state.

7. A system for securely executing an externally connected controller, the system comprising:

memory storing a whitelist; and

a controller programmed to:

launch a security layer that uses the whitelist defining permitted processes on the controller, the whitelist being part of a custom security policy for the controller and including (i) signatures for processes that are authorized to be executed by the controller and (ii) context information identifying permitted real-time controller operating contexts within which the processes are authorized to be executed by the controller;

receive a request to run a particular process;

determine a signature for the particular process;

determine whether the particular process is permitted to be run on the controller based on a comparison of the determined signature with a verified signature for the particular process from the whitelist;

identify a current real-time controller operating context for the controller;

determine whether the particular process is permitted to be run on the controller based on a comparison of the current real-time controller operating context with one or more permitted real-time controller operating contexts for the particular process from the whitelist; and

block the particular process from running on the controller based on determining one or more of: the determined signature not matching the verified signature for the process or the current real-time controller operating context not being included in the one or more permitted real-time controller operating contexts.

8. The system of claim 7 , wherein the whitelist was generated for the controller based on static analysis of an operating system for the controller.

9. The system of claim 7 , wherein the controller is further programmed to:

report, to a server system, information that identifies the particular process as being blocked, wherein the information is reported to the server system without the particular process being executed by the controller and without prior transmission with the server system regarding the particular process.

10. The system of claim 7 , wherein the controller comprises an automotive electronic control unit (ECU).

11. The system of claim 7 , wherein the controller is part of a home automation device or appliance.

12. The system of claim 10 , wherein the one or more permitted real-time controller operating contexts include one or more of: an initiation state, a shutdown state, an operational state, or an in motion state.

13. The method of claim 1 , wherein the one or more permitted real-time controller operating contexts include a location-based context.

14. The method of claim 1 , wherein the one or more permitted real-time controller operating contexts include a proximity-based context.

15. The method of claim 1 , wherein the one or more permitted real-time controller operating contexts include a user-based context.

16. The method of claim 1 , wherein identifying a current real-time controller operating context for the controller comprises receiving information detected by a device separate from the controller.

17. The system of claim 10 , wherein the one or more permitted real-time controller operating contexts include a location-based context.

18. The system of claim 10 , wherein the one or more permitted real-time controller operating contexts include a proximity-based context.

19. The system of claim 10 , wherein the one or more permitted real-time controller operating contexts include a user-based context.

20. The system of claim 10 , wherein identifying a current real-time controller operating context for the controller comprises receiving information detected by a device separate from the controller.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2019
From: DAVID, TAL EFRAIM; HAREL, ASSAF; DOTAN, AMIRAM; BARZILAI, DAVID
To: KARAMBA SECURITY LTD.
Reel/Frame 048249/0084 →
Continuity (2)
Provisional Application 62215065 · Sep 7, 2015
Related Publication 20180247045A1 · Aug 30, 2018