IP Library Granted Patent US 12,041,079
Granted Patent B2
US 12,041,079 · App. 17/743,215 · Granted Jul 16, 2024

Detecting patterns in network traffic responses for mitigating DDOS attacks

Inventors: Steinthor Bjarnason (Fjerdingby, NO); Ellis Roland Dobbins (Sarasota, FL)
Assignee: ARBOR NETWORKS, INC.
H04L63/1458H04L63/1416H04L63/1425H04L67/02
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,041,079
App. No.
17/743,215
Granted
Jul 16, 2024
Kind
B2
Abstract

A computer system and process for mitigating a Distributed Denial of Service (DDoS) attack to one or more protected computer networks by determining keywords and/or patterns in HyperText Transfer Protocol (HTTP) responses. Stored HTTP responses are analyzed to extract one or more HTTP characteristics for each stored HTTP response. One or more patterns having one or more keywords in each stored HTTP response is determined utilizing the extracted one or more HTTP characteristics for each stored HTTP response. A hash value is determined for each determined pattern, which is preferably stored in a hash structure accompanied by its respective determined HTTP characteristics. Each hash value accompanied by its respective determined HTTP characteristics is stored as a mitigation filter candidate if the hash value contains a determined pattern consisting of at least a predetermined percentage of all determined patterns stored in the hash structure. A determination is then made as to whether if each stored filter candidate contains an acceptable pattern, whereby filter candidates having acceptable patterns are removed from being a mitigation filter candidate. A regular expression is then generated for each stored filter candidate adaptable to be utilized as keywords in a DDOS mitigation filter.

Claims (40)

1. A method performed by a computer system having one or more processors and memory storing one or more programs for execution by the one or more processors for mitigating a Distributed Denial of Service (DDOS) attack to one or more protected computer networks by determining keywords for DDOS mitigation filter settings, the method comprising the steps of:

analyzing stored HyperText Transfer Protocol (HTTP) responses to extract one or more HTTP characteristics for each stored HTTP response;

determining one or more patterns having one or more keywords in each stored HTTP response utilizing the extracted one or more HTTP characteristics for each stored HTTP response;

determining a hash value for each determined pattern;

storing each hash value in a hash structure accompanied by its respective determined HTTP characteristics;

storing, as a mitigation filter candidate, each hash value accompanied by its respective determined HTTP characteristics only when the hash value contains a determined pattern consisting of at least a predetermined percentage of all determined patterns stored in the hash structure;

determining whether each stored filter candidate contains an acceptable pattern, whereby filter candidates having acceptable patterns are removed from being a mitigation filter candidate; and

generate a regular expression for the each stored filter candidate utilized as keywords in a DDOS mitigation filter.

2. The method as recited in claim 1 , wherein the DDOS attack is one of a Reflection attack or Amplification attack.

3. The method as recited in claim 1 , further including:

intercepting network traffic packets flowing from one or more external computers to the one or more protected computer networks, the intercepted network traffic packets including HTTP responses including either Transmission Control Protocol (TCP) packets or Datagram Protocol (UDP) packets; and

storing the intercepted HTTP responses in a storage device.

4. The method as recited in claim 3 , wherein the storage device contains Packet Capture (PCAP) files.

5. The method as recited in claim 4 , wherein a predetermined number of HTTP responses are stored in the PCAP.

6. The method as recited in claim 1 , wherein only stored HTTP responses having a payload value greater than zero are analyzed.

7. The method as recited in claim 6 , wherein extracting HTTP characteristics includes extracting: TCP/UDP source ports and destination ports; packet length; payload length and actual payload.

8. The method as recited in claim 1 , wherein the determined patterns includes one or more of: IP addresses; Uniform Resource Identifiers (URIs); and structured headers in HTTP replies.

9. The method as recited in claim 1 , further including prescribing a counter for each hash value stored in the hash structure wherein a counter is incremented when a same determined pattern is stored.

10. The method as recited in claim 9 , further including sorting the hash value structure utilizing the counter value for each stored hash value such that the hash structure contains a list of all keyword combinations accompanied by a counter indicating how many times each determined pattern is present in the stored HTTP responses.

11. The method as recited in claim 1 , wherein determining if a filter candidate contains an acceptable pattern includes comparing a filter candidate to a whitelist of acceptable patterns that are not indicative of a DDOS attack.

12. A computer system for mitigating a Distributed Denial of Service (DDOS) attack to one or more protected computer networks by determining patterns in HyperText Transfer Protocol (HTTP) responses, the method comprising the steps of: comprising:

one or more data bases having memory configured to store instructions;

a processor disposed in communication with said memory, wherein said processor upon execution of the instructions is configured to:

analyze stored HTTP responses to extract one or more HTTP characteristics for each stored HTTP response;

determine one or more patterns having one or more keywords in each stored HTTP response utilizing the extracted one or more HTTP characteristics for each stored HTTP response;

determine a hash value for each determined pattern;

store each hash value in a hash structure accompanied by its respective determined HTTP characteristics;

store, as a mitigation filter candidate, each hash value accompanied by its respective determined HTTP characteristics only when the hash value contains a determined pattern consisting of at least a predetermined percentage of all determined patterns stored in the hash structure;

determine whether each stored filter candidate contains an acceptable pattern, whereby filter candidates having acceptable patterns are removed from being a mitigation filter candidate; and

generate a regular expression for the each stored filter candidate utilized as keywords in a DDOS mitigation filter.

13. The computer system as recited in claim 12 , wherein the DDOS attack is one of a Reflection attack or Amplification attack.

14. The computer system as recited in claim 12 , wherein the processor is further configured to:

intercept network traffic packets flowing from one or more external computers to the one or more protected computer networks, the intercepted network traffic packets including HTTP responses including either Transmission Control Protocol (TCP) packets or Datagram Protocol (UDP) packets; and

store the intercepted HTTP responses in a storage device.

15. The computer system as recited in claim 14 , wherein the storage device contains Packet Capture (PCAP) files whereby a predetermined number of HTTP responses are stored in the PCAP.

16. The computer system as recited in claim 12 , wherein only stored HTTP responses having a payload value greater than zero are analyzed.

17. The computer system as recited in claim 16 , wherein extracting HTTP characteristics includes extracting: TCP/UDP source ports and destination ports; packet length; payload length and actual payload.

18. The computer system as recited in claim 12 , wherein the determined patterns includes one or more of: IP addresses; Uniform Resource Identifiers (URIs); and structured headers in HTTP replies.

19. The computer system as recited in claim 12 , wherein the processor is further configured to prescribe a counter for each hash value stored in the hash structure wherein a counter is incremented when a same determined pattern is stored.

20. The computer system as recited in claim 19 , wherein the processor is further configured to sort the hash value structure utilizing the counter value for each stored hash value such that the hash structure contains a list of all keyword combinations accompanied by a counter indicating how many times each determined pattern is present in the stored HTTP responses.

Assignments (2)
SECURITY INTEREST Recorded Oct 22, 2024
From: NETSCOUT SYSTEMS, INC.; ARBOR NETWORKS LLC; NETSCOUT SYSTEMS TEXAS, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 069216/0007 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2024
From: BJARNASON, STEINTHOR; DOBBINS, ELLIS ROLAND
To: ARBOR NETWORKS, INC.
Reel/Frame 067231/0431 →
Continuity (2)
Provisional Application 63315765 · Mar 2, 2022
Related Publication 20230283631A1 · Sep 7, 2023