IP Library Granted Patent US 10,051,001
Granted Patent B1
US 10,051,001 · App. 14/815,354 · Granted Aug 14, 2018

Efficient and secure user credential store for credentials enforcement using a firewall

Inventors: Robert Earle Ashley (Santa Clara, CA); Ho Yu Lam (Santa Clara, CA); Xuanyu Jin (San Jose, CA); Suiqiang Deng (Fremont, CA); Taylor Ettema (San Jose, CA); Robert Tesh (Morgan Hill, CA)
Assignee: Palo Alto Networks, Inc.
H04L63/20G06F17/30864G06F17/30902H04L63/02H04L63/083H04L63/14H04L63/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 10,051,001
App. No.
14/815,354
Granted
Aug 14, 2018
Kind
B1
Abstract

Techniques for an efficient and secure store for credentials enforcement using a firewall are disclosed. In some embodiments, a system, process, and/or computer program product for an efficient and secure store for credentials enforcement using a firewall includes receiving a space-efficient and secure data structure, such as bloom filter, from an agent executed on an authentication server, in which the bloom filter is generated by the agent based on a transformation of a plurality of user credentials extracted from the authentication server and/or intercepted at the authentication server; storing the bloom filter on the network device (e.g., in a cache on the network device); and monitoring network traffic at the network device to perform credentials enforcement using the bloom filter.

Claims (60)

1. A system for a credentials store for credentials enforcement using a firewall, comprising:

a processor of a network device configured to:

receive a plurality of user credentials from an authentication server;

transform the plurality of user credentials for storage at the network device, comprising to:

transform the plurality of user credentials into a bloom filter; and

store the plurality of user credentials in a cache on the network device, wherein network traffic is monitored at the network device to perform credentials enforcement based on one or more of the plurality of user credentials, wherein the bloom filter is stored in the cache;

monitor network communications between a client and an external site;

determine if the client sends a request that includes user credentials for authentication at the external site using the bloom filter; and

perform an action in response to a determination that the client sent the request that includes user credentials for authentication at the external site that match one or more of the plurality of user credentials stored at the network device, wherein the action includes activating an additional authentication request based on a two-factor authentication when an attempt to access a protected resource is detected; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system recited in claim 1 , wherein one or more of the plurality of user credentials includes a password.

3. The system recited in claim 1 , wherein one or more of the plurality of user credentials includes a username and a password.

4. The system recited in claim 1 , wherein the plurality of user credentials is received from an agent executed on the authentication server.

5. The system recited in claim 1 , wherein the processor is further configured to:

monitor session traffic between a client and an external site based on a firewall policy; and

block the session traffic if a violation of the firewall policy is determined, wherein the firewall policy includes a policy for credentials enforcement used in the external site authentication.

6. The system recited in claim 1 , wherein the processor is further configured to:

monitor session traffic between a client and an external site based on a firewall policy; and

generate an alert if a violation of the firewall policy is determined, wherein the firewall policy includes a policy for credentials enforcement used in the external site authentication.

7. The system recited in claim 1 , wherein the processor is further configured to:

monitor session traffic between a client and an external site based on a firewall policy; and

log the session traffic if a violation of the firewall policy is determined, wherein the firewall policy includes a policy for credentials enforcement used in the external site authentication.

8. The system recited in claim 1 , wherein the processor is further configured to:

extract a username and/or password from user credentials submitted in the request to perform credentials enforcement using the bloom filter.

9. The system recited in claim 1 , wherein the processor is further configured to:

extract a username and/or password from user credentials submitted in the request; and

determine if the username and/or password matches one or more of the plurality of user credentials to perform credentials enforcement using the bloom filter.

10. The system recited in claim 1 , wherein the processor is further configured to:

extract a username and/or password from user credentials submitted in the request;

determine if the username and/or password matches one or more of the plurality of user credentials to perform credentials enforcement using the bloom filter; and

if the username and/or password is determined to match one or more of the plurality of user credentials, then perform a responsive action.

11. The system recited in claim 1 , wherein the processor is further configured to:

extract a username and password from user credentials submitted in the request;

determine if the username and password match one or more of the plurality of user credentials to perform credentials enforcement using the bloom filter; and

if the username and password are determined to match one or more of the plurality of user credentials, then verify whether the username and password match one or more of the plurality of user credentials by querying the authentication server using the username and password.

12. A method for a credentials store for credentials enforcement using a firewall, comprising:

receiving a plurality of user credentials from an authentication server;

transforming the plurality of user credentials for storage at a network device, comprising:

transforming the plurality of user credentials into a bloom filter; and

storing the plurality of user credentials in a cache on the network device, wherein network traffic is monitored at the network device to perform credentials enforcement based on one or more of the plurality of user credentials, wherein the bloom filter is stored in the cache;

monitoring network communications between a client and an external site;

determining if the client sends a request that includes user credentials for authentication at the external site using the bloom filter; and

performing an action in response to a determination that the client sent the request that includes user credentials for authentication at the external site that match one or more of the plurality of user credentials stored at the network device, wherein the action includes activating an additional authentication request based on a two-factor authentication when an attempt to access a protected resource is detected.

13. A computer program product for a credentials store for credentials enforcement using a firewall, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

receiving a plurality of user credentials from an authentication server;

transforming the plurality of user credentials for storage at the network device, comprising:

transforming the plurality of user credentials into a bloom filter; and

storing the plurality of user credentials in a cache on a network device, wherein network traffic is monitored at the network device to perform credentials enforcement based on one or more of the plurality of user credentials, wherein the bloom filter is stored in the cache;

monitoring network communications between a client and an external site;

determining if the client sends a request that includes user credentials for authentication at the external site using the bloom filter; and

performing an action in response to a determination that the client sent the request that includes user credentials for authentication at the external site that match one or more of the plurality of user credentials stored at the network device, wherein the action includes activating an additional authentication request based on a two-factor authentication when an attempt to access a protected resource is detected.

14. A system for a credentials store for credentials enforcement using a firewall, comprising:

a processor of a network device configured to:

receive a bloom filter from an agent executed on an authentication server, wherein the bloom filter is generated by the agent based on a transformation of a plurality of user credentials extracted from the authentication server and/or intercepted at the authentication server;

store the bloom filter in a cache on the network device; and

monitor network traffic at the network device to perform credentials enforcement using the bloom filter;

monitor network communications between a client and an external site;

determine if the client sends a request that includes user credentials for authentication at the external site using the bloom filter; and

perform an action in response to a determination that the client sent the request that includes user credentials for authentication at the external site that match one or more of the plurality of user credentials stored at the network device, wherein the action includes activating an additional authentication request based on a two-factor authentication when an attempt to access a protected resource is detected; and

a memory coupled to the processor and configured to provide the processor with instructions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2015
From: ASHLEY, ROBERT EARLE; LAM, HO YU; JIN, XUANYU; DENG, SUIQIANG; ETTEMA, TAYLOR; TESH, ROBERT
To: PALO ALTO NETWORKS, INC.
Reel/Frame 036825/0829 →
Cited By (10)
US 12,192,205 US 12,244,641 US 12,267,330 US 12,273,382 US 12,309,200 US 12,362,916 US 12,513,115 US 12,532,183 US 12,651,267 US 12,719,868