IP Library Granted Patent US 12,244,625
Granted Patent B2
US 12,244,625 · App. 18/452,539 · Granted Mar 4, 2025

Application layer data protection for containers in a containerization environment

Inventors: Fei Huang (San Jose, CA); Gang Duan (San Jose, CA); Zang Li (San Jose, 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 12,244,625
App. No.
18/452,539
Granted
Mar 4, 2025
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 (56)

1. A method, comprising:

intercepting network activity of an application container of a plurality of application containers of a container system by an intercept container of the container system, wherein the plurality of application containers share a single kernel of an operating system and are isolated from each other via operating system-level virtualization that is enabled by the single kernel, and wherein the application container is attempting to transmit a file to a network destination outside of the container system, and wherein a content of the file is obfuscated outside of the application container;

accessing by the intercept container unobfuscated content of the file that corresponds to the network activity using an encryption key accessed from the application container using the single kernel, wherein the encryption key is obtained from a process monitor of the intercept container, which retrieves the encryption key by a scan inspection of a memory of the application container;

inspecting the unobfuscated content by the intercept container,

applying by the intercept container one or more regular expressions representing patterns of sensitive personal data to the unobfuscated content using the single kernel to determine whether the one or more regular expressions match the unobfuscated content;

in response to the determining that the one or more regular expressions match the unobfuscated content, determining by the intercept container that the network activity is an attempt to transmit sensitive personal data out of the application container; and

in response to the attempt to transmit the sensitive personal data out of the application container, triggering by the intercept container an action specified in a policy of the container system.

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 the single kernel enables a plurality of containers sharing the single kernel, the plurality of containers includes the application container and the intercept container.

4. The method of claim 1 , further comprising:

intercepting file system activity from the application container; and

capturing data written to and read from a virtual storage of the container system from the file system activity that has been intercepted.

5. The method of claim 4 , wherein the intercepting file system activity further comprises:

intercepting system call requests from the application container.

6. 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.

7. The method of claim 1 , further comprising:

intercepting file system calls made by the application container to a virtual storage associated with the application container.

8. The method of claim 1 , wherein the sensitive personal data comprises credit card information, a social security number, or a combination thereof.

9. A container system, comprising:

a processor that, when executing instructions stored in any associated memory, is configured to:

implement a plurality of application containers of the container system, wherein the plurality of application containers share a single kernel of an operating system and are isolated from each other via operating system-level virtualization that is enabled by the single kernel of the operating system; and

implement an intercept container that is enabled by the single kernel of the operating system and shares the single kernel with an application container of the plurality of application containers, wherein the intercept container is configured to:

intercept network activity of the application container attempting to transmit a file to a network destination outside of the container system, wherein a content of the file is obfuscated outside of the application container,

access unobfuscated content of the file that corresponds to the network activity using an encryption key accessed from the application container using the single kernel, wherein the encryption key is obtained from a process monitor of the intercept container, which retrieves the encryption key by a scan inspection of a memory of the application container,

inspect the unobfuscated content,

apply one or more regular expressions representing patterns of sensitive personal data to the unobfuscated content using the single kernel to determine whether the one or more regular expressions match the unobfuscated content,

in response to a determination that the one or more regular expressions match the unobfuscated content, determine that the network activity is an attempt to transmit sensitive personal data out of the application container,

in response to the attempt to transmit the sensitive personal data out of the application container, trigger an action specified in a policy of the container system.

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

11. The container system of claim 9 , wherein the single kernel enables a plurality of containers sharing the single kernel, the plurality of containers includes the application container and the intercept container.

12. The container system of claim 9 , wherein the intercept container is further configured to:

intercept file system activity from the application container, and

capture data written to and read from a virtual storage of the container system from the intercepted file system activity that has been intercepted.

13. The container system of claim 12 , wherein, when the intercept container intercepts the file system activity, the intercept container is further configured to intercept system call requests from the application container.

14. The container system of claim 9 , wherein the intercept container is further configured to:

transmit a report regarding the network activity to a graphical interface of a user device.

15. The container system of claim 9 , wherein the intercept container is further configured to:

intercept file system calls made by the application container to a virtual storage associated with the application container.

16. The container system of claim 9 , wherein the sensitive personal data comprises credit card information, a social security number, or a combination thereof.

17. A non-transitory computer-readable storage medium configured to store instructions that, when executed by a processor of a container system, cause the processor to:

intercept network activity of an application container of a plurality of application containers of the container system by an intercept container of the container system, wherein the plurality of application containers share a single kernel of an operating system and are isolated from each other via operating system-level virtualization that is enabled by the single kernel and wherein the application container is attempting to transmit a file to a network destination outside of the container system, and wherein a content of the file is obfuscated outside of the application container; and

access unobfuscated content of the file that corresponds to the network activity using an encryption key accessed from the application container using the single kernel, wherein the encryption key is obtained from a process monitor of the intercept container, which retrieves the encryption key by a scan inspection of a memory of the application container;

inspect the unobfuscated content; and

apply by the intercept container one or more regular expressions representing patterns of sensitive personal data to the unobfuscated content using the single kernel to determine whether the one or more regular expressions match the unobfuscated content;

in response to a determination that the one or more regular expressions match the unobfuscated content, determine by the intercept container that the network activity is an attempt to transmit sensitive personal data out of the application container; and

in response to the attempt to transmit the sensitive personal data out of the application container, trigger an action specified in a policy of the container system by the intercept container.

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

19. The non-transitory computer-readable storage medium of claim 17 , wherein the single kernel enables a plurality of containers sharing the single kernel, the plurality of containers includes the application container and the intercept container.

20. The non-transitory computer-readable storage medium of claim 17 , wherein the instructions further cause the processor to:

intercept file system activity from the application container, and

capture data written to and read from a virtual storage of the container system from the intercepted file system activity that has been intercepted.

21. The non-transitory computer-readable storage medium of claim 20 , wherein when the intercept container intercepts the file system activity, the intercept container is further configured to intercept system call requests from the application container.

22. The non-transitory computer-readable storage medium of claim 17 , wherein the instructions further cause the processor to:

intercept file system calls made by the application container to a virtual storage associated with the application container.

23. The non-transitory computer-readable storage medium of claim 17 , wherein the sensitive personal data comprises credit card information, a social security number, or a combination thereof.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2024
From: HUANG, FEI; DUAN, GANG; LI, ZANG
To: NEUVECTOR, INC.
Reel/Frame 067409/0930 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2024
From: NEUVECTOR, LLC
To: SUSE LLC
Reel/Frame 067410/0339 →
CONVERSION AND CHANGE OF NAME (INC TO LLC) Recorded May 14, 2024
From: NEUVECTOR, INC.
To: NEUVECTOR, LLC
Reel/Frame 067411/0969 →
Continuity (2)
Continuation 16019368 · Jun 26, 2018
Related Publication 20230412628A1 · Dec 21, 2023
References Cited (11)
US 10447720B1 · Evans · 2019 [cited by examiner]
US 20020169871A1 · Cravo de Almeida · 2002 [cited by examiner]
US 20140194094A1 · Ahuja · 2014 [cited by examiner]
US 20150143120A1 · Barton · 2015 [cited by examiner]
US 20150186621A1 · Uy · 2015 [cited by examiner]
US 20160105396A1 · Hastings · 2016 [cited by applicant]
US 20160373251A1 · Kumar · 2016 [cited by applicant]
US 20170093923A1 · Duan · 2017 [cited by examiner]
US 20180176189A1 · Paul · 2018 [cited by examiner]
US 20180278639A1 · Bernstein · 2018 [cited by examiner]
US 20190342315A1 · Smelov · 2019 [cited by examiner]