IP Library Granted Patent US 11,924,167
Granted Patent B2
US 11,924,167 · App. 17/662,444 · Granted Mar 5, 2024

Remote session based micro-segmentation

Inventor: Sisimon Soman (Sunnyvale, CA)
Assignee: VMware, Inc.
H04L63/0263G06F8/65G06F9/45558H04L47/20H04L63/0236H04L63/20H04L67/141G06F2009/45579G06F2009/45583G06F2009/45595H04L67/146
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,924,167
App. No.
17/662,444
Granted
Mar 5, 2024
Kind
B2
Abstract

The disclosure provides an approach for implementing a distributed firewall within a data center. The firewall is implemented as a kernel space filter driver within the operating system of virtual machines. Each virtual machine hosts several user sessions. The firewall may be dynamically updated with new security policies, either by an administrator or a component of the data center.

Claims (48)

1. A method of filtering network packets, comprising:

creating a first user session and a second user session; setting a first security policy pertaining to the first user session, wherein setting the first security policy pertaining to the first user session comprises mapping, within a data structure, the first security policy to an identifier (ID) of the first user session;

setting a second security policy pertaining to the second user session, wherein the setting the second security policy pertaining to the second user session comprises mapping, within the data structure, the second security policy to an ID of the second user session, wherein the ID of the first security policy and the second security policy are assigned within a kernel space of an operating system and assigned to refer to a session of a user within the operating system of a virtual machine and wherein the first security policy or the second security policy define per-user access privileges, the per-user access privileges including a limitation specifying that the user is limited from accessing at least one of a file or a server;

receiving a network packet, by a filter driver, the network packet originating from the first user session or destined for the first user session or originating from the second user session or destined for the second user session; in an instance in which the network packet originated from the first user session or is destined for the first user session, comparing packet attributes of the network packet to the first security policy;

in an instance in which the network packet originated from the second user session or is destined for the second user session, comparing packet attributes of the network packet to the second security policy; and responsive to the comparing, blocking the network packet or transmitting the network packet.

2. The method of claim 1 , wherein the filter driver is configured to intercept network packets generated by the first user session and the second user session.

3. The method of claim 1 , further comprising:

receiving a security update;

determining whether the security update applies to the first user session, the second user session, or neither; and

responsive to the determining, if the security update applies to the first user session or the second user session, updating the data structure.

4. The method of claim 1 , wherein a first copy of the first security policy is stored within a central storage repository and a second copy of the first security policy is stored within memory of the virtual machine.

5. The method of claim 1 , wherein a container object operates in conjunction with the first user session and the second user session.

6. A non-transitory computer readable medium comprising instructions to be executed in a processor of a computer system, wherein the instructions when executed in the processor cause the computer system to at least:

create a first user session and a second user session;

set a first security policy pertaining to the first user session, wherein setting the first security policy pertaining to the first user session comprises mapping, within a data structure, the first security policy to an identifier (ID) of the first user session;

set a second security policy pertaining to the second user session, wherein the setting the second security policy pertaining to the second user session comprises mapping, within the data structure, the second security policy to an ID of the second user session, wherein the ID of the first security policy and the second security policy are assigned within a kernel space of an operating system and assigned to refer to a session of a user within the operating system of a virtual machine and wherein the first security policy or the second security policy define per-user access privileges, the per-user access privileges including a limitation specifying that the user is limited from accessing at least one of a file or a server;

receive a network packet, by a filter driver, the network packet originating from the first user session or destined for the first user session or originating from the second user session or destined for the second user session;

in an instance in which the network packet originated from the first user session or is destined for the first user session, compare packet attributes of the network packet to the first security policy;

in an instance in which the network packet originated from the second user session or is destined for the second user session, compare packet attributes of the network packet to the second security policy; and

responsive to the comparing, block the network packet or transmitting the network packet.

7. The non-transitory computer readable medium of claim 6 , wherein the filter driver is configured to intercept network packets generated by the first user session and the second user session.

8. The non-transitory computer readable medium of claim 6 , further comprising:

receiving a security update;

determining whether the security update applies to the first user session, the second user session, or neither; and

responsive to the determining, if the security update applies to the first user session or the second user session, updating the data structure.

9. The non-transitory computer readable medium of claim 6 , wherein the data structure contains a mapping of a second ID of a second user session to a second security policy.

10. The non-transitory computer readable medium of claim 6 , wherein a first copy of the first security policy is stored within a central storage repository and a second copy of the first security policy is stored within memory of the virtual machine.

11. The non-transitory computer readable medium of claim 6 , wherein a container object operates in conjunction with the first user session and the second user session.

12. A computer system comprising:

a network;

a host machine;

a virtual machine running on the host machine, the virtual machine comprising a filter driver, the host machine comprising a processor and system memory, wherein the processor is programmed to at least:

create a first user session and a second user session;

set a first security policy pertaining to the first user session, wherein setting the first security policy pertaining to the first user session comprises mapping, within a data structure, the first security policy to an identifier (ID) of the first user session;

set a second security policy pertaining to the second user session, wherein the setting the second security policy pertaining to the second user session comprises mapping, within the data structure, the second security policy to an ID of the second user session, wherein the ID of the first security policy and the second security policy are assigned within a kernel space of the operating system and assigned to refer to a session of a user within the operating system of the virtual machine and wherein the first security policy or the second security policy define per-user access privileges, the per-user access privileges including a limitation specifying that the user is limited from accessing at least one of a file or a server;

receive a network packet, by a filter driver, the network packet originating from the first user session or destined for the first user session or originating from the second user session or destined for the second user session;

in an instance in which the network packet originated from the first user session or is destined for the first user session, compare packet attributes of the network packet to the first security policy;

in an instance in which the network packet originated from the second user session or is destined for the second user session, compare packet attributes of the network packet to the second security policy; and

responsive to the comparing, block the network packet or transmitting the network packet.

13. The computer system of claim 12 , wherein the filter driver is configured to intercept network packets generated by the first user session and the second user session.

14. The computer system of claim 12 , wherein setting the first security policy pertaining to the first user session comprises mapping, within a data structure, the first security policy to an ID of the first user session, and wherein the setting the second security policy pertaining to the second user session comprises mapping, within the data structure, the second security policy to an ID of the second user session.

15. The computer system of claim 14 , further comprising:

receiving a security update;

determining whether the security update applies to the first user session, the second user session, or neither; and

responsive to the determining, if the security update applies to the first user session or the second user session, updating the data structure.

16. The computer system of claim 14 , wherein the data structure contains a mapping of a second ID of a second user session to a second security policy.

17. The computer system of claim 12 , wherein a first copy of the first security policy is stored within a central storage repository and a second copy of the first security policy is stored within memory of the virtual machine.

18. The computer system of claim 12 , wherein a container object operates in conjunction with the first user session and the second user session.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →