IP Library Granted Patent US 10,715,554
Granted Patent B2
US 10,715,554 · App. 16/143,250 · Granted Jul 14, 2020

Translating existing security policies enforced in upper layers into new security policies enforced in lower layers

Inventors: Oron Golan (Meitar, IL); Kfir Wolfson (Beer Sheva, IL); Amos Zamir (Beer Sheva, IL); Aviram Fireberger (Moshav Mavkiim, IL); Udi Shemer (Kfar Saba, IL)
Assignee: EMC IP Holding Company LLC
H04L63/20H04L63/0236H04L63/145
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 10,715,554
App. No.
16/143,250
Granted
Jul 14, 2020
Kind
B2
Abstract

Existing policies enforced at or above an operating system (OS) layer of a device are obtained. Translation rules are stored that include data structure descriptions of conditions, corresponding actions performed when the conditions are satisfied, and attributes specified in the existing policies, and attributes of one or more layers below the OS layer that are relevant to policy enforcement in the one or more layers below the OS layer. The existing policies are parsed using the data structure descriptions to identify the conditions, corresponding actions, and attributes specified in the existing policies. New policies are generated that are consistent with the existing policies. The new policies include the identified attributes specified in the existing policies and the attributes relevant to policy enforcement in the one or more layers below the OS layer. The new policies are enforced in the one or more layers below the OS layer.

Claims (81)

1. A system comprising: a processor; and memory configured to store one or more sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of:

obtaining a plurality of existing policies that are enforced at or above an operating system (OS) layer of a device;

storing a plurality of translation rules comprising data structure descriptions of conditions, corresponding actions performed when the conditions are satisfied, and attributes specified in the existing policies, and attributes of one or more layers below the OS layer that are relevant to policy enforcement in the one or more layers below the OS layer;

parsing, using the data structure descriptions, the plurality of existing policies to identify the conditions, corresponding actions, and attributes specified in the existing policies;

generating a plurality of new policies consistent with the plurality of existing policies, the new policies comprising the identified attributes specified in the existing policies, and the attributes relevant to policy enforcement in the one or more layers below the OS layer; and

enforcing the new policies in the one or more layers below the OS layer of the device, wherein the OS layer is above an infrastructure-as-a-service (IaaS) layer, and the one or more layers below the OS layer are within the IaaS layer.

2. The system of claim 1 wherein the plurality of existing policies are specified at a first level of abstraction and the processor further carries out the step of specifying the plurality of new policies at a second level of abstraction, lower than the first level of abstraction.

3. The system of claim 1 wherein the processor further carries out the steps of:

obtaining a first existing policy that is enforced at or above the OS layer;

generating first and second new policies, each of the first and second new policies being based on and consistent with the first existing policy;

enforcing the first new policy in a first backend component, the first backend component being in the one or more layers below the OS layer; and

enforcing the second new policy in a second backend component, different from the first backend component, the second backend component being in the one or more layers below the OS layer.

4. The system of claim 1 wherein the processor further carries out the steps of:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a file system of a network attached storage (NAS), and comprising a first new condition having a first new corresponding action indicating that write operations to a particular directory of the NAS outside the time period are to be blocked, wherein the particular directory stores system files.

5. The system of claim 1 wherein the processor further carries out the steps of:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a networking component, and comprising a first new condition having a first new corresponding action indicating that traffic to a specific firewall port number outside the time period is to be blocked, wherein the specific firewall port number is used to update the system files.

6. The system of claim 1 wherein the processor further carries out the steps of:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a file, and a condition having a corresponding action indicating that the file is to be quarantined, the file thereby being malware; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a block storage component, and comprising a first new condition having a first new corresponding action indicating that an alert is to be issued when matches between hashes of consecutive data sequences of data sent to the block storage component and hashes associated with the file exceed a threshold percentage.

7. The system of claim 1 wherein the processor further carries out the steps of:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a file, and a condition having a corresponding action indicating that the file is to be quarantined, the file thereby being malware; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a networking component, and comprising a first new condition having a first new corresponding action indicating that an alert is to be issued when matches between hashes of packet payloads in traffic to a connection of the network component and hashes associated with the file exceed a threshold percentage.

8. A method comprising:

obtaining a plurality of existing policies that are enforced at or above an operating system (OS) layer of a device;

storing a plurality of translation rules comprising data structure descriptions of conditions, corresponding actions performed when the conditions are satisfied, and attributes specified in the existing policies, and attributes of one or more layers below the OS layer that are relevant to policy enforcement in the one or more layers below the OS layer;

parsing, using the data structure descriptions, the plurality of existing policies to identify the conditions, corresponding actions, and attributes specified in the existing policies;

generating a plurality of new policies consistent with the plurality of existing policies, the new policies comprising the identified attributes specified in the existing policies, and the attributes relevant to policy enforcement in the one or more layers below the OS layer; and

enforcing the new policies in the one or more layers below the OS layer of the device, wherein the OS layer is above an infrastructure-as-a-service (IaaS) layer, and the one or more layers below the OS layer are within the IaaS layer.

9. The method of claim 8 wherein the plurality of existing policies are specified at a first level of abstraction and the method comprises specifying the plurality of new policies at a second level of abstraction, lower than the first level of abstraction.

10. The method of claim 8 comprising:

obtaining a first existing policy that is enforced at or above the OS layer;

generating first and second new policies, each of the first and second new policies being based on and consistent with the first existing policy;

enforcing the first new policy in a first backend component, the first backend component being in the one or more layers below the OS layer; and

enforcing the second new policy in a second backend component, different from the first backend component, the second backend component being in the one or more layers below the OS layer.

11. The method of claim 8 comprising:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a file system of a network attached storage (NAS), and comprising a first new condition having a first new corresponding action indicating that write operations to a particular directory of the NAS outside the time period are to be blocked, wherein the particular directory stores system files.

12. The method of claim 8 comprising:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a networking component, and comprising a first new condition having a first new corresponding action indicating that traffic to a specific firewall port number outside the time period is to be blocked, wherein the specific firewall port number is used to update the system files.

13. The method of claim 8 comprising:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a file, and a condition having a corresponding action indicating that the file is to be quarantined, the file thereby being malware; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a block storage component, and comprising a first new condition having a first new corresponding action indicating that an alert is to be issued when matches between hashes of consecutive data sequences of data sent to the block storage component and hashes associated with the file exceed a threshold percentage.

14. The method of claim 8 comprising:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a file, and a condition having a corresponding action indicating that the file is to be quarantined, the file thereby being malware; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a networking component, and comprising a first new condition having a first new corresponding action indicating that an alert is to be issued when matches between hashes of packet payloads in traffic to a connection of the network component and hashes associated with the file exceed a threshold percentage.

15. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein, the computer-readable program code adapted to be executed by one or more processors to implement a method comprising:

obtaining a plurality of existing policies that are enforced at or above an operating system (OS) layer of a device;

storing a plurality of translation rules comprising data structure descriptions of conditions, corresponding actions performed when the conditions are satisfied, and attributes specified in the existing policies, and attributes of one or more layers below the OS layer that are relevant to policy enforcement in the one or more layers below the OS layer;

parsing, using the data structure descriptions, the plurality of existing policies to identify the conditions, corresponding actions, and attributes specified in the existing policies;

generating a plurality of new policies consistent with the plurality of existing policies, the new policies comprising the identified attributes specified in the existing policies, and the attributes relevant to policy enforcement in the one or more layers below the OS layer; and

enforcing the new policies in the one or more layers below the OS layer of the device, wherein the OS layer is above an infrastructure-as-a-service (IaaS) layer, and the one or more layers below the OS layer are within the IaaS layer.

16. The computer program product of claim 15 wherein the plurality of existing policies are specified at a first level of abstraction and the method comprises specifying the plurality of new policies at a second level of abstraction, lower than the first level of abstraction.

17. The computer program product of claim 15 wherein the method comprises:

obtaining a first existing policy that is enforced at or above the OS layer;

generating first and second new policies, each of the first and second new policies being based on and consistent with the first existing policy;

enforcing the first new policy in a first backend component, the first backend component being in the one or more layers below the OS layer; and

enforcing the second new policy in a second backend component, different from the first backend component, the second backend component being in the one or more layers below the OS layer.

18. The computer program product of claim 15 wherein the method comprises:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a file system of a network attached storage (NAS), and comprising a first new condition having a first new corresponding action indicating that write operations to a particular directory of the NAS outside the time period are to be blocked, wherein the particular directory stores system files.

19. The computer program product of claim 15 wherein the method comprises:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a time period, and a condition having a corresponding action indicating that updates to system files are allowed only during the time period; and

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a networking component, and comprising a first new condition having a first new corresponding action indicating that traffic to a specific firewall port number outside the time period is to be blocked, wherein the specific firewall port number is used to update the system files.

20. The computer program product of claim 15 wherein the method comprises:

obtaining a first existing policy that is enforced at or above the OS layer;

parsing the first existing policy to identify an attribute corresponding to a file, and a condition having a corresponding action indicating that the file is to be quarantined, the file thereby being malware;

generating a first new policy consistent with the first existing policy, the first new policy to be enforced in a block storage component, and comprising a first new condition having a first new corresponding action indicating that an alert is to be issued when matches between hashes of consecutive data sequences of data sent to the block storage component and hashes associated with the file exceed a threshold percentage; and

generating a second new policy consistent with the first existing policy, the second new policy to be enforced in a networking component, and comprising a second new condition having a second new corresponding action indicating that an alert is to be issued when matches between hashes of packet payloads in traffic to a connection of the network component and hashes associated with the file exceed the threshold percentage.

Assignments (2)
CORRECTIVE NOTICE TO RELEASE SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (049452/0223) Recorded Jun 30, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 053529/0862 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
Cited By (1)
US 12,519,840