IP Library Granted Patent US 11,683,291
Granted Patent B2
US 11,683,291 · App. 17/307,713 · Granted Jun 20, 2023

Automatically generating firewall configuration profiles using learning mode

Inventors: Kasirao Velugu (Bengaluru, IN); Priya Bagaria (Kolkata, IN); Ganesh Kathiresan (Bangalore, IN); Thirumoorthi Thangamani (Pallipalayam, IN)
H04L63/0263G06N20/00H04L63/10H04L63/1433
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,683,291
App. No.
17/307,713
Granted
Jun 20, 2023
Kind
B2
Abstract

Described embodiments provide systems and methods for generating firewall configuration profiles for firewalls. An intermediary device may modify a request from a client to access the server to include a payload provided by the device. The payload may include an action type selected from a plurality of action types used to probe the server for a corresponding security vulnerability of a plurality of security vulnerabilities. The device may transmit, to the server, the request including the payload to cause the server to provide a response to the device. The device may determine that the server is susceptible to a security vulnerability of the plurality of security vulnerabilities corresponding to the action type based at least on the response. The device may generate a configuration profile for the firewall to restrict requests of the action type to access the server from clients.

Claims (66)

1. A method of generating a configuration profile for a firewall, comprising:

modifying, by a device that is intermediary between a plurality of clients and a server, a request from a client of the plurality of clients to access the server to include a payload provided by the device, the payload comprising an action type selected from a plurality of action types used to probe the server for a corresponding security vulnerability of a plurality of security vulnerabilities;

transmitting, by the device to the server, the request including the payload to cause the server to provide a response to the device;

determining, by the device, that the server is susceptible to a security vulnerability of the plurality of security vulnerabilities corresponding to the action type based at least on the response; and

generating, by the device, the configuration profile for the firewall to restrict requests of the action type to access the server from the plurality of clients;

wherein modifying the request to access further comprises modifying, in response to setting the device to a mode for generation of the configuration profile using requests from a subset of the plurality of clients, the request from the client to access the server to include the payload.

2. The method of claim 1 , further comprising:

determining, by the device, that the server is not susceptible to a second vulnerability of the plurality of security vulnerabilities corresponding to a second action type of the plurality of action types based at least on a second response to a second request including a second payload comprising the second action type; and

generating, by the device, a second configuration profile for the firewall to permit requests of the second action type to access the server from the plurality of clients.

3. The method of claim 1 , further comprising:

determining, by the device, that a second response from a server is to be restricted in accordance with the configuration profile for the firewall;

identifying, by the device based at least on the determination that the second response is to be restricted, a level of violation of the second response; and

modifying, by the device, the configuration profile using the level of violation determined for the second response.

4. The method of claim 1 , further comprising identifying, by the device responsive to determining that the server is susceptible to the security vulnerability, at least one of a level of security check or a level of counteraction for the security vulnerability based at least on the response, and

wherein generating the configuration profile further comprises generating the configuration profile for the firewall in accordance with at least one of the level of security check or the level of counteraction.

5. The method of claim 1 , further comprising:

identifying, by the device from the plurality of clients, the client as trusted for generation of the configuration profile and a second client as not trusted; and

selecting, by the device, the request to access the server from the client identified as a trusted client and modifying the request to include the payload, concurrent with not selecting a second request to access the server from the second client not identified as a trusted client.

6. The method of claim 1 , further comprising:

determining, by the device, that a second response from the server is transmitted in response to a second request from a second client device of the plurality of clients, the second client device not identified as a trusted client device; and

applying, by the device, a default configuration profile of the firewall to determine whether to permit or restrict the second response from the server.

7. The method of claim 1 , wherein determining that the server is susceptible further comprises determining that the response includes data matches at least one pattern defined for the security vulnerability.

8. The method of claim 1 , further comprising applying, by the device in response to setting the device to a mode for use of the configuration profile, the configuration profile to the firewall to restrict responses from the server transmitted in response to corresponding requests from at least one of the plurality of clients.

9. The method of claim 1 , further comprising providing, by the device for display, information identifying the configuration profile for the firewall to restrict requests of the action type.

10. A system for generating a configuration profile for a firewall, comprising:

a device having one or more processors coupled with memory that is intermediary between a plurality of clients and a server, configured to:

modify a request from a client of the plurality of clients to access the server to include a payload provided by the device, the payload comprising a content type selected from a plurality of content types used to probe the server for a corresponding security vulnerability of a plurality of security vulnerabilities;

transmit, to server, the request including the payload to cause the server to provide a response to the device;

determine that the server is susceptible to a security vulnerability of the plurality of security vulnerability corresponding to the content type based at least on the response; and

generate the configuration profile for the firewall to restrict requests of the content type to access the server from the plurality of clients;

wherein modifying the request to access further comprises modifying, in response to setting the device to a mode for generation of the configuration profile using requests from a subset of the plurality of clients, the request from the client to access the server to include the payload.

11. The system of claim 10 , wherein the device is further configured to:

determine that the server is not susceptible to a second vulnerability of the plurality of security vulnerabilities corresponding to a second action type of the plurality of action types based at least on a second response to a second request including a second payload comprising the second action type; and

generate a second configuration profile for the firewall to permit requests of the second action type to access the server from the plurality of clients.

12. The system of claim 10 , wherein the device is further configured to:

determine that a second response from a server is to be restricted in accordance with the configuration profile for the firewall;

identify, based at least on the determination that the second response is to be restricted, a level of violation of the second response; and

modify the configuration profile using the level of violation determined for the second response.

13. The system of claim 10 , wherein the device is further configured to:

identify, responsive to determining that the server is susceptible to the security vulnerability, at least one of a level of security check or a level of counteraction for the security vulnerability based at least on the response, and

generate the configuration profile for the firewall in accordance with at least one of the level of security check or the level of counteraction.

14. The system of claim 10 , wherein the device is further configured to:

identify, from the plurality of clients, the client as trusted for generation of the configuration profile and a second client as not trusted; and

select the request to access the server from the client identified as trusted to modify to include the payload, concurrent with not selecting a second request to access the server from the second client not identified as a trusted client.

15. The system of claim 10 , wherein the device is further configured to:

determine that a second response from the server is transmitted in response to a second request from a second client device of the plurality of clients, the second client device not identified as a trusted client device; and

apply a default configuration profile of the firewall to determine whether to permit or restrict the second response from the server.

16. The system of claim 10 , wherein the device is further configured to provide, for display, information identifying the configuration profile for the firewall to restrict requests of the action type.

17. A non-transitory computer readable medium storing program instructions for causing one or more processors to:

modify a request from a client of a plurality of clients to access a server to include a payload provided by the one or more processors, the payload comprising a content type selected from a plurality of content types used to probe the server for a corresponding security vulnerability of a plurality of security vulnerabilities;

transmit, to server, the request including the payload to cause the server to provide a response to the one or more processors;

determine that the server is susceptible to a security vulnerability of the plurality of security vulnerability corresponding to the content type based at least on the response; and

generate a configuration profile for the firewall to restrict requests of the content type to access the server from the plurality of clients;

wherein the program instructions to modify the request comprise instructions to modifying, in response to setting the device to a mode for generation of the configuration profile using requests from a subset of the plurality of clients, the request from the client to access the server to include the payload.

18. The non-transitory computer readable medium of claim 17 , wherein the program instructions further cause the one or more processors to:

determine that the server is not susceptible to a second vulnerability of the plurality of security vulnerabilities corresponding to a second action type of the plurality of action types based at least on a second response to a second request including a second payload comprising the second action type; and

generate a second configuration profile for the firewall to permit requests of the second action type to access the server from the plurality of clients.

19. The non-transitory computer readable medium of claim 17 , wherein the program instructions further cause the one or more processors to:

identify, from the plurality of clients, the client as trusted for generation of the configuration profile and a second client as not trusted; and

select the request to access the server from the client identified as trusted to modify to include the payload, concurrent with not selecting a second request to access the server from the second client not identified as a trusted client.

20. A method of generating a configuration profile for a firewall, comprising:

modifying, by a device that is intermediary between a plurality of clients and a server, a request from a client of the plurality of clients to access the server to include a payload provided by the device, the payload comprising an action type selected from a plurality of action types used to probe the server for a corresponding security vulnerability of a plurality of security vulnerabilities;

transmitting, by the device to the server, the request including the payload to cause the server to provide a response to the device;

determining, by the device, that the server is susceptible to a security vulnerability of the plurality of security vulnerabilities corresponding to the action type based at least on the response;

generating, by the device, the configuration profile for the firewall to restrict requests of the action type to access the server from the plurality of clients; and

applying, by the device in response to setting the device to a mode for use of the configuration profile, the configuration profile to the firewall to restrict responses from the server transmitted in response to corresponding requests from at least one of the plurality of clients.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2021
From: VELUGU, KASIRAO; BAGARIA, PRIYA; KATHIRESAN, GANESH; THANGAMANI, THIRUMOORTHI
To: CITRIX SYSTEMS, INC.
Reel/Frame 056133/0126 →
Continuity (1)
Related Publication 20220360560A1 · Nov 10, 2022
Cited By (1)
US 12,481,765