IP Library Granted Patent US 11,792,216
Granted Patent B2
US 11,792,216 · App. 16/019,368 · Granted Oct 17, 2023

Application layer data protection for containers in a containerization environment

Inventors: Fei Huang (Fremont, CA); Gang Duan (San Jose, CA); Zang Li (Sunnyvale, CA)
Assignee: SUSE LLC
H04L63/1425G06F9/45558H04L41/22H04L43/06G06F2009/45591H04L63/168
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,792,216
App. No.
16/019,368
Granted
Oct 17, 2023
Kind
B2
Abstract

A container system monitors one or more activities of an application container in a container system by intercepting data from the one or more activities of the application container. The application container includes computer-readable instructions and initiated via a container service and isolated using operating system-level virtualization. The monitoring is performed at a layer between the app container and the container service. The container system also transmits a report of the intercepted one or more activities to a designated source. The container system inspects the intercepted one or more activities, and in response to the intercepted one or more activities violating a policy in a policy store, triggers an action specified in the policy.

Claims (51)

1. A method, comprising:

monitoring one or more activities of an application container in a container system by intercepting data from the one or more activities of the application container, the application container including computer-readable instructions and initiated via a container service and isolated using operating system-level virtualization that is enabled by a kernel of an operating system, the kernel enabling a plurality of containers sharing the kernel, the plurality of containers including the application container and an intercept container, the monitoring performed by the intercept container using the kernel to access the application container, wherein monitoring the one or more activities comprises:

intercepting, by the intercept container, a network activity of the application container attempting to transmit a file to a network destination outside of the container system, wherein content of the file is encapsulated outside of the application container such that the content is obfuscated outside of the application container; and

obtaining, by the intercept container using the kernel to access the application container, an encryption key from a process monitor of the intercept container which retrieves the encryption key by a scan inspection of a memory of the application container, and wherein the encryption key is used to access an unobfuscated content of the file that corresponds to the network activity prior to the file being obfuscated and transmitted out of the application container;

inspecting the content of the file being attempted to be transmitted to the network destination associated with the network activity, wherein inspecting the content of the file comprises: retrieving a template corresponding to a policy that controls transmission of sensitive personal data, the template comprising one or more regular expressions that represent patterns of the sensitive personal data;

applying, by the intercept container, the one or more regular expressions to the unobfuscated content of the file that is obtained using the kernel to find whether one or more regular expression matches exist in the content of the file;

determining, in response to one or more regular expression matches are found, that the network activity attempting to transmit the file to the network destination involves an attempt to transmit the sensitive personal data out of the application container; and

triggering an action specified in the policy in response to determining that the network activity involves the attempt to transmit the sensitive personal data out of the application container.

2. The method of claim 1 , wherein the network activity is associated with providing network data from the application container to a virtual switch of the container system.

3. The method of claim 1 , wherein monitoring the one or more activities further comprises:

intercepting file system activity from the application container to capture data written and read from a virtual storage of the container system.

4. The method of claim 3 , wherein the file system activity is intercepted by monitoring system call requests from the application container.

5. The method of claim 1 , further comprising transmitting a report that is a graphical interface presented on a web page by a web server, the report discussing the network activity.

6. A container system comprising:

one or more application containers, each application container including non-transitory computer-readable instructions and initiated via a container service and isolated using operating system-level virtualization that is enabled by a kernel of an operating system, the kernel enabling a plurality of containers sharing the kernel, the plurality of containers including the one or more application containers;

an intercept container that is enabled by the kernel and shares the kernel with the one or more application containers, the intercept container configured to:

monitor one or more activities of the one or more application containers by intercepting data from the one or more activities of the one or more application containers, the monitoring performed by the intercept container using the kernel to access the one or more application containers, wherein monitoring the one or more activities comprises:

intercepting, by the intercept container, a network activity of an application container of the one or more application containers attempting to transmit a file to a network destination outside of the container system, wherein content of the file is encapsulated outside of the application container such that the content is obfuscated outside of the application container; and

obtaining, by the intercept container using the kernel to access the application container, an encryption key from a process monitor of the intercept container which retrieves the encryption key by a scan inspection of a memory of the application container, and wherein the encryption key is used to access an unobfuscated content of the file that corresponds to the network activity prior to the file being obfuscated and transmitted out of the application container;

inspect the content of the file being attempted to be transmitted to the network destination associated with the network activity network activity, wherein inspecting the content of the file comprises:

retrieving a template corresponding to a policy that controls transmission of sensitive personal data, the template comprising one or more regular expressions that represent patterns of the sensitive personal data; and

applying, by the intercept container, the one or more regular expressions to the unobfuscated content of the file that is obtained using the kernel to find whether one or more regular expression matches exist in the content of the file;

determine, in response to one or more regular expression matches are found, that the network activity attempting to transmit the file to the network destination involves an attempt to transmit the sensitive personal data out of the application container;

trigger an action specified in the policy in response to determining that the network activity involves the attempt to transmit the sensitive personal data out of the application container.

7. The system of claim 6 , wherein the network activity is associated with providing network data from the application container to a virtual switch of the container system.

8. The system of claim 6 , the monitoring of the one or more activities causes the intercept container to further operate to:

intercept file system activity from the application container to capture data written and read from a virtual storage of the container system.

9. The system of claim 8 , wherein the file system activity is intercepted by monitoring system call requests from the application container.

10. The system of claim 8 , wherein the intercept container is further configured to transmit a report that is a graphical interface presented on a web page by a web server, the report discussing the network activity.

11. A non-transitory computer storage readable medium configured to store instructions, the instructions, when executed by a processor, cause the processor to:

monitor one or more activities of an application container in a container system by intercepting data from the one or more activities of the application container, the application container including computer-readable instructions and initiated via a container service and isolated using operating system-level virtualization that is enabled by a kernel of an operating system, the kernel enabling a plurality of containers sharing the kernel, the plurality of containers including the application container and an intercept container, the monitoring performed by the intercept container using the kernel to access the application container, wherein the instruction to monitor of the one or more activities comprises instructions to:

intercept, by the intercept container, a network activity of the application container attempting to transmit a file to a network destination outside of the container system, wherein content of the file is encapsulated outside of the application container such that the content is obfuscated outside of the application container; and

obtaining, by the intercept container using the kernel to access the application container, an encryption key from a process monitor of the intercept container which retrieves the encryption key by a scan inspection of a memory of the application container, and wherein the encryption key is used to access an unobfuscated content of the file that corresponds to the network activity prior to the file being obfuscated and transmitted out of the application container;

inspect the content of the file being attempted to be transmitted to the network destination associated with the network activity, wherein the instruction to inspect the content of the file comprises instructions to:

retrieve a template corresponding to a policy that controls transmission of sensitive personal data, the template comprising one or more regular expressions that represent patterns of the sensitive personal data; and

apply, by the intercept container, the one or more regular expressions to the unobfuscated content of the file that is obtained using the kernel to find whether one or more regular expression matches exist in the content of the file;

determine, in response to one or more regular expression matches are found, that the network activity attempting to transmit the file to the network destination involves an attempt to transmit the sensitive personal data out of the application container; and

trigger an action specified in the policy in response to determining that the network activity involves the attempt to transmit the sensitive personal data out of the application container.

12. The non-transitory computer storage readable medium of claim 11 , wherein the network activity is associated with providing network data from the application container to a virtual switch of the container system.

13. The non-transitory computer storage readable medium of claim 11 , wherein the instructions to monitor the one or more activities further comprises instructions, that when executed by the processor, cause the processor to:

intercept file system activity from the application container to capture data written and read from a virtual storage of the container system.

14. The non-transitory computer storage readable medium of claim 13 , wherein the file system activity is intercepted by monitoring system call requests from the application container.

15. The method of claim 1 , wherein monitoring the one or more activities further comprises:

monitoring file system activity of the application container by intercepting file system calls by the application container to virtual storage associated with the application container.

16. The system of claim 6 , the monitoring of the one or more activities causes the intercept container to further operate to:

monitor file system activity of the application container by intercepting file system calls by the application container to virtual storage associated with the application container.

17. The non-transitory computer storage readable medium of claim 11 , wherein the instructions to monitor the one or more activities further comprise instructions, that when executed by the processor, cause the processor to:

monitor file system activity of the application container by intercepting file system calls by the application container to virtual storage associated with the application.

18. The method of claim 1 , wherein the sensitive personal data includes credit card information or a social security number.

19. The system of claim 6 , wherein the sensitive personal data includes credit card information or a social security number.

20. The non-transitory computer storage readable medium of claim 11 , wherein the sensitive personal data includes credit card information or a social security number.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2022
From: NEUVECTOR, LLC
To: SUSE LLC
Reel/Frame 060655/0894 →
CONVERSION AND CHANGE OF NAME (INC TO LLC) Recorded Jul 28, 2022
From: NEUVECTOR, INC.
To: NEUVECTOR, LLC
Reel/Frame 060991/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2020
From: HUANG, FEI; DUAN, GANG; LI, ZANG
To: NEUVECTOR, INC.
Reel/Frame 053492/0201 →
Continuity (1)
Related Publication 20190394219A1 · Dec 26, 2019