US20020112061A1 - Web-site admissions control with denial-of-service trap for incomplete HTTP requests - Google Patents

Web-site admissions control with denial-of-service trap for incomplete HTTP requests Download PDF

Info

Publication number
US20020112061A1
US20020112061A1 US09/780,308 US78030801A US2002112061A1 US 20020112061 A1 US20020112061 A1 US 20020112061A1 US 78030801 A US78030801 A US 78030801A US 2002112061 A1 US2002112061 A1 US 2002112061A1
Authority
US
United States
Prior art keywords
request
queue
incomplete
requests
http requests
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US09/780,308
Inventor
Fu-Tai Shih
Sandya Bhoajaraj
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Priority to US09/780,308 priority Critical patent/US20020112061A1/en
Assigned to HEWLETT-PACKARD COMPANY reassignment HEWLETT-PACKARD COMPANY ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BHOAJARAJ, SANDYA, SHIH, FU-TAI
Publication of US20020112061A1 publication Critical patent/US20020112061A1/en
Assigned to HEWLETT-PACKARD DEVELOPMENT COMPANY L.P. reassignment HEWLETT-PACKARD DEVELOPMENT COMPANY L.P. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HEWLETT-PACKARD COMPANY
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Definitions

  • the present invention relates to computers and, more particularly, to computers configured as servers on the World Wide Web.
  • a major objective of the present invention is to reduce vulnerability of web sites to HTTP-level denial-of-service attacks.
  • the World Wide Web has grown as a major enabler for research, entertainment, social interaction and business.
  • the World Wide Web comprises a large number of web sites, each with its own purpose, which is effected by responding to requests from remote client computers.
  • the hardware underlying each site inherently has limits on the number of requests it can respond to at any one time. As that number is approached or when it is exceeded, a web site may lose the ability to respond promptly to client requests and even hang up or break down. Such failures typically impair the purpose of the site, e.g., desired traffic and/or profits may be lost.
  • Phaal 6,006,269 and 6,055,564 to Phaal, in which clients are informed of a time that they can resubmit a request that has been deferred; a request so resubmitted is assigned a higher priority than comparable first submissions. Effective as Phaal's admission control system is, it is not designed to handle malicious denial-of-service attacks.
  • TCP Transmission Control Protocol
  • TCP Transmission Control Protocol
  • TCP requires three-way handshaking: 1) a client request for a synchronized connection, 2) an host acknowledgment of the client request plus a host request for a synchronized connection, and 3) a client acknowledgment of the host request.
  • the host sends its acknowledgement/request, it dedicates connection resources waiting for the client's acknowledgement. If the client fails to send the acknowledgement, the dedicated resource is not available for other tasks. Typically, the host will free the resource after some predetermined time-out interval.
  • connection resources can be tied up at once. If the attacker continues to send requests, connection resources freed upon timeout can be immediately tied up again. The results may crash the host site; in any event, legitimate clients are denied prompt service and the site's purpose is frustrated.
  • Firewalls can be used to protect a site against many malicious attacks.
  • Packet-filtering firewalls are routers that filter out some requests according to TCP header information, for example, packet source, destination, and type (FTP (File Transfer Protocol), TELNET, HTTP (Hypertext Transfer Protocol)).
  • FTP File Transfer Protocol
  • TELNET TELNET
  • HTTP Hypertext Transfer Protocol
  • a denial-of-service attack can be effected by sending the connection requests and then withholding all or part of the header needed to complete the request.
  • a firewall may serve many web sites and the optimal filtering criteria may be different for different sites.
  • a firewall could tailor filtering according to packet destination.
  • administrators of web servers may not have access to the router so as to be able to configure the firewall.
  • a firewall can service many web servers, it may be cumbersome for it to preserve sufficient information for a site-by-site diagnosis of failures. Accordingly, a more flexible and convenient method of preventing site failures due to HTTP-level denial-of-service attacks and other extraordinary events is desired.
  • the present invention provides an admission control system with a denial-of-service trap for an HTTP server.
  • the admissions control system includes a filter for incomplete HTTP requests (e.g., connections without headers and connections with incomplete headers).
  • the filter allows complete HTTP requests to pass toward an HTTP request processor; incomplete requests are forwarded to a request assembler.
  • “Toward” here, means either directly to the request processor or to an intermediate function, e.g., a deferral manager and/or a decryption engine, for subsequent transmission to the request processor.
  • the request assembler stores each received incomplete HTTP request in a queue. When the queue is full, a previously stored incomplete HTTP request can be retired to make room for a new one. A retired incomplete HTTP request is not passed on to the request processor, but is merely dropped from the system. In addition, an incomplete request can be retired upon a time out; a message notifying the client that made the request and/or a management system can be generated.
  • a request “expires” when it is retired due to a time out, and a request is “bumped” when it is retired to make room for a new request when a queue is full.
  • separate queues are provided for requests without headers and requests with incomplete headers. Separate notifications are provided indicating when the incomplete-header queue is full and when the no-header queue is full. This can help diagnostics, e.g., in the determination of the nature of a denial-of-service attack.
  • a method of the invention involves withholding incomplete requests from a request processor and storing them, retiring a previously stored incomplete request as necessary when the storage is full.
  • a timeout can be used to determine when to retire requests.
  • a notification can be generated to the client that is the source of the dumped message; alternatively or in addition, a record can be made as an alert to the site administrator and/or for diagnostic purposes.
  • the incomplete requests can be stored in a queue, with the oldest retired first when additional locations are required. If there are plural queues, an additional step of selecting a queue can be employed. For example, a first queue can be selected for storing requests without headers, while a second queue can be selected for storing requests that have incomplete headers.
  • a major advantage of the present invention is the reduction in vulnerability to denial-of-service attacks. Due to the location at the web server, incomplete requests can be stored pending completion without tying up router resources. A firewall, to the contrary, would tend to be more resource constrained in storing and assembling requests. Another advantage of the present invention is that the request trap can be cost-effectively implemented in the context of other admissions control functions, such as deferral management, which are based on the same header information.
  • FIG. 1 is a schematic block diagram of a host site with a denial-of-service trap in accordance with the present invention.
  • FIG. 2 is a flow chart of a denial-of-service counter method of the invention practiced in the context of the host site of FIG. 1.
  • a host site AP 1 comprises an operating system kernel 11 , an admissions control module 13 , a request processor 15 , and a web-page (HTTP) generator 17 .
  • Host site AP 1 can be accessed by a large number of client computers 90 , e.g., client computers 91 , 92 , 93 , and 94 , via the Internet, indicated by connection 99 .
  • Admissions control module 13 includes a deferral manager 21 , and a resource monitor 23 for monitoring utilization resource parameters 25 , a denial-of-service (DoS) trap 30 .
  • DoS trap 30 includes a request filter 31 and a request assembler 33 .
  • Request assembler 33 includes a “no-header” queue Q 1 , an “incomplete-header” queue Q 2 , and a queue manager 35 .
  • Request processor can handle 1024 connections; each queue Q 1 , Q 2 can handle half that many requests, in this case, each queue is 512 requests deep.
  • a client computer e.g., computer 91
  • the request is received at kernel 11 .
  • DoS trap 30 Assuming the request is complete, it is passed by DoS trap 30 to deferral manager 21 , which normally passes the request to request processor 15 .
  • Request processor 15 generates an appropriate response to the request.
  • HTTP generator 17 conforms the response to the HTTP protocol, which is then transmitted to kernel 11 for communication to client computer 91 .
  • HTTP generator 17 can also encrypt messages.
  • deferral manager 21 may defer some requests.
  • Resource monitor 23 monitors resource parameter 25 , e.g., CPU utilization, on an ongoing basis.
  • resource parameter 25 e.g., CPU utilization
  • deferral manager 21 implements a predetermined admissions policy. For example, requests associated with on-going sessions can be given priority over requests initiating new sessions. Also, some clients may be given priority over others.
  • deferral manager 21 can send a deferral message indicating to the deferred client when its request should be reasserted.
  • HTTP generator 17 can, for example, associate a unique URL with a link as it conforms the deferral message to the HTTP protocol. If the requestor activates the link after the appropriate interval, deferral manager 21 recognizes this is a reassertion of a deferred request and assigns a high priority to the request so that it is passed to request processor 15 .
  • admission control module 13 can perform other functions, such as decryption.
  • Incomplete requests are handled by DoS trap 30 , which implements a method M 1 , which is flow-charted in FIG. 2.
  • a request is received a step S 11 by request filter 31 .
  • Filter 31 examines the request for completeness at step S 12 . If it is complete, it is passed toward request processor 15 ; specifically, the complete request is passed to deferral manager 21 , which acts on the request as described above at step S 13 .
  • request assembler 33 selects a queue for storing the incomplete request. Specifically, a request with no header is stored in queue Q 1 , while a request with an incomplete header is stored in queue Q 2 .
  • queue manager 35 determines whether or not the selected queue is full. If it is, a previously stored request is bumped at step S 23 . In the illustrated embodiment, the request that has been stored the longest time is bumped. However, in alternative embodiments, other factors can be considered in determining which previously stored request to “bump”. Whether or not a previously stored request is bumped, the present request is stored in the selected queue at step S 24 . Concomitantly, a timer in queue manager 35 is started, and request assembler 33 polls kernel 11 for packets associated with the request.
  • a request remains in the queue until, at step S 25 , one of three things happens: mating, bumping or timeout. If no associated packet is received by kernel 11 in time, a request will either time out or be bumped. In either case, the request is retired, in other words, not stored anymore.
  • a retirement notice can be sent to the client that sent the request. For example, the notice can be “the requested site is not responding due to high Internet traffic, please try again later”.
  • kernel 11 responds to the polling initiated at step S 24 with a packet that provides all or part of the header for the request, request assembler 33 mates the original request with the new packet at step and forwards the augmented request to request filter 31 at step 26 . This returns method M 1 to step S 11 .
  • the request is either complete or has an incomplete header. Presumably, the request does not completely lack a header. If the request is complete, as determined at step S 12 , it is passed toward request processor 15 at step S 13 . If it is incomplete, queue Q 2 is selected. Depending on the original status of the request, this may be the same as the prior queue for this request or different. In any event, if queue Q 2 is full, the oldest previously stored request is bumped at step S 23 . Also, a timer is started anew for the request and polling of kernel 11 for associated packets is resumed. The exit options are the same as in the first iteration: mating, time-out, and bumping.
  • a DoS trap can be built into a request processor or into an operating system kernel. It can run on the same or different hardware than the request processor. However, including a DoS trap in an admissions control module brings a certain efficiency, since similar information is used for DoS traps and deferral managers. Where the DoS trap is included in the request processor, upgrading the DoS trap for new types of attacks would require upgrading the request processor—which can vary from server to server. Including the DoS trap at the server instead of the router, e.g., as part of a firewall, makes it easier to customize on a server-by-server basis. For example, servers may require different time out periods and queue depths for optimal effectiveness.
  • the present invention has applicability in the fields of computer networking, e-commerce, and Internet appliances. Depending on the particular context, the filtering can be more or less severe. Also, a choice is available whether to notify clients of retired requests.
  • the DoS trap can be programmed with a knowledge base to help distinguish likely from unlikely sources of DoS attacks.

Abstract

A web site includes a denial-of-service trap as part of its admission control module. The trap forwards client requests with incomplete headers to a request assembler, where they are queued. If a selected queue is full, the oldest request is bumped. A request remains in the queue until it is matched with an incoming packet (which would provide, extend, or possibly complete the header), or until a timeout occurs or until it is bumped. Complete requests are passed toward a request processor for normal processing. In the event of an HTTP-level denial-of-service attack, requests with deliberately incomplete headers do not encumber the request processor, so normal service can continue.

Description

    BACKGROUND OF THE INVENTION
  • The present invention relates to computers and, more particularly, to computers configured as servers on the World Wide Web. A major objective of the present invention is to reduce vulnerability of web sites to HTTP-level denial-of-service attacks. [0001]
  • Over the past several years, the World Wide Web has grown as a major enabler for research, entertainment, social interaction and business. The World Wide Web comprises a large number of web sites, each with its own purpose, which is effected by responding to requests from remote client computers. The hardware underlying each site inherently has limits on the number of requests it can respond to at any one time. As that number is approached or when it is exceeded, a web site may lose the ability to respond promptly to client requests and even hang up or break down. Such failures typically impair the purpose of the site, e.g., desired traffic and/or profits may be lost. [0002]
  • While ideally a web site would have sufficient capacity to handle its peak load, it is in general not cost effective to maintain continuously sufficient capacity to handle infrequent surges in demand. In addition, the peak level may be underestimated. Thus, many web sites experience excessive traffic from time to time. To avoid severe disruption of service, admission control can be implemented whereby requests are prioritized (e.g. requests associated with continuing sessions are given priority over requests beginning sessions), with some lower priority requests being rejected or deferred. A particularly effective deferral scheme is disclosed in U.S. Pat. Nos. 6,006,269 and 6,055,564 to Phaal, in which clients are informed of a time that they can resubmit a request that has been deferred; a request so resubmitted is assigned a higher priority than comparable first submissions. Effective as Phaal's admission control system is, it is not designed to handle malicious denial-of-service attacks. [0003]
  • Malicious attacks on web sites take many forms. In some cases, information is stolen and/or altered; in others, the software running the site is destroyed. A “denial-of-service” attack involves flooding a site with requests so that legitimate requests are not serviced. Denial-of-service attacks can occur at the network (TCP or “Transmission Control Protocol”) level. For example, TCP requires three-way handshaking: 1) a client request for a synchronized connection, 2) an host acknowledgment of the client request plus a host request for a synchronized connection, and 3) a client acknowledgment of the host request. When the host sends its acknowledgement/request, it dedicates connection resources waiting for the client's acknowledgement. If the client fails to send the acknowledgement, the dedicated resource is not available for other tasks. Typically, the host will free the resource after some predetermined time-out interval. [0004]
  • However, if a malicious attacker sends many requests within the time-out interval, all available connection resources can be tied up at once. If the attacker continues to send requests, connection resources freed upon timeout can be immediately tied up again. The results may crash the host site; in any event, legitimate clients are denied prompt service and the site's purpose is frustrated. [0005]
  • Firewalls can be used to protect a site against many malicious attacks. Packet-filtering firewalls are routers that filter out some requests according to TCP header information, for example, packet source, destination, and type (FTP (File Transfer Protocol), TELNET, HTTP (Hypertext Transfer Protocol)). Such firewalls can be effective against network-level denial-of-service attacks. However, more sophisticated HTTP level denial-of-service attacks can get through packet-filtering firewalls. [0006]
  • In an HTTP-level denial-of-service attack, the TCP connection is completed and a connection made available to the HTTP application. The HTTP application then devotes a resource to that connection, waiting for a header to arrive. A denial-of-service attack can be effected by sending the connection requests and then withholding all or part of the header needed to complete the request. [0007]
  • However, a firewall may serve many web sites and the optimal filtering criteria may be different for different sites. In principle, a firewall could tailor filtering according to packet destination. As a practical matter, however, administrators of web servers may not have access to the router so as to be able to configure the firewall. Also, because a firewall can service many web servers, it may be cumbersome for it to preserve sufficient information for a site-by-site diagnosis of failures. Accordingly, a more flexible and convenient method of preventing site failures due to HTTP-level denial-of-service attacks and other extraordinary events is desired. [0008]
  • SUMMARY OF THE INVENTION
  • The present invention provides an admission control system with a denial-of-service trap for an HTTP server. The admissions control system includes a filter for incomplete HTTP requests (e.g., connections without headers and connections with incomplete headers). The filter allows complete HTTP requests to pass toward an HTTP request processor; incomplete requests are forwarded to a request assembler. “Toward” here, means either directly to the request processor or to an intermediate function, e.g., a deferral manager and/or a decryption engine, for subsequent transmission to the request processor. [0009]
  • The request assembler stores each received incomplete HTTP request in a queue. When the queue is full, a previously stored incomplete HTTP request can be retired to make room for a new one. A retired incomplete HTTP request is not passed on to the request processor, but is merely dropped from the system. In addition, an incomplete request can be retired upon a time out; a message notifying the client that made the request and/or a management system can be generated. Herein, a request “expires” when it is retired due to a time out, and a request is “bumped” when it is retired to make room for a new request when a queue is full. [0010]
  • In one embodiment, separate queues are provided for requests without headers and requests with incomplete headers. Separate notifications are provided indicating when the incomplete-header queue is full and when the no-header queue is full. This can help diagnostics, e.g., in the determination of the nature of a denial-of-service attack. [0011]
  • A method of the invention involves withholding incomplete requests from a request processor and storing them, retiring a previously stored incomplete request as necessary when the storage is full. In addition, a timeout can be used to determine when to retire requests. Optionally, a notification can be generated to the client that is the source of the dumped message; alternatively or in addition, a record can be made as an alert to the site administrator and/or for diagnostic purposes. The incomplete requests can be stored in a queue, with the oldest retired first when additional locations are required. If there are plural queues, an additional step of selecting a queue can be employed. For example, a first queue can be selected for storing requests without headers, while a second queue can be selected for storing requests that have incomplete headers. [0012]
  • A major advantage of the present invention is the reduction in vulnerability to denial-of-service attacks. Due to the location at the web server, incomplete requests can be stored pending completion without tying up router resources. A firewall, to the contrary, would tend to be more resource constrained in storing and assembling requests. Another advantage of the present invention is that the request trap can be cost-effectively implemented in the context of other admissions control functions, such as deferral management, which are based on the same header information. These and other features and advantages of the invention are apparent from the description below with reference to the following drawings. [0013]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic block diagram of a host site with a denial-of-service trap in accordance with the present invention. [0014]
  • FIG. 2 is a flow chart of a denial-of-service counter method of the invention practiced in the context of the host site of FIG. 1.[0015]
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • In accordance with the present invention, a host site AP[0016] 1 comprises an operating system kernel 11, an admissions control module 13, a request processor 15, and a web-page (HTTP) generator 17. Host site AP1 can be accessed by a large number of client computers 90, e.g., client computers 91, 92, 93, and 94, via the Internet, indicated by connection 99. Admissions control module 13 includes a deferral manager 21, and a resource monitor 23 for monitoring utilization resource parameters 25, a denial-of-service (DoS) trap 30. DoS trap 30 includes a request filter 31 and a request assembler 33. Request assembler 33 includes a “no-header” queue Q1, an “incomplete-header” queue Q2, and a queue manager 35. Request processor can handle 1024 connections; each queue Q1, Q2 can handle half that many requests, in this case, each queue is 512 requests deep.
  • During normal operation, a client computer, e.g., [0017] computer 91, sends a request to host site AP1 via the Internet 99. The request is received at kernel 11. Assuming the request is complete, it is passed by DoS trap 30 to deferral manager 21, which normally passes the request to request processor 15. Request processor 15 generates an appropriate response to the request. HTTP generator 17 conforms the response to the HTTP protocol, which is then transmitted to kernel 11 for communication to client computer 91. As appropriate, HTTP generator 17 can also encrypt messages.
  • During a traffic peak, [0018] deferral manager 21 may defer some requests. Resource monitor 23 monitors resource parameter 25, e.g., CPU utilization, on an ongoing basis. When utilization reaches a level where it is difficult to respond to all requests reasonably quickly, deferral manager 21 implements a predetermined admissions policy. For example, requests associated with on-going sessions can be given priority over requests initiating new sessions. Also, some clients may be given priority over others.
  • Rather than rejecting low priority requests outright, [0019] deferral manager 21 can send a deferral message indicating to the deferred client when its request should be reasserted. HTTP generator 17 can, for example, associate a unique URL with a link as it conforms the deferral message to the HTTP protocol. If the requestor activates the link after the appropriate interval, deferral manager 21 recognizes this is a reassertion of a deferred request and assigns a high priority to the request so that it is passed to request processor 15. In addition to DoS trapping and deferral management, admission control module 13 can perform other functions, such as decryption.
  • Incomplete requests are handled by [0020] DoS trap 30, which implements a method M1, which is flow-charted in FIG. 2. A request is received a step S11 by request filter 31. Filter 31 examines the request for completeness at step S12. If it is complete, it is passed toward request processor 15; specifically, the complete request is passed to deferral manager 21, which acts on the request as described above at step S13.
  • If, at step S[0021] 12, the request is determined to be incomplete, it is forwarded to request assembler 33. At step S21, request assembler 33 selects a queue for storing the incomplete request. Specifically, a request with no header is stored in queue Q1, while a request with an incomplete header is stored in queue Q2.
  • Once the queue is selected, [0022] queue manager 35 determines whether or not the selected queue is full. If it is, a previously stored request is bumped at step S23. In the illustrated embodiment, the request that has been stored the longest time is bumped. However, in alternative embodiments, other factors can be considered in determining which previously stored request to “bump”. Whether or not a previously stored request is bumped, the present request is stored in the selected queue at step S24. Concomitantly, a timer in queue manager 35 is started, and request assembler 33 polls kernel 11 for packets associated with the request.
  • A request remains in the queue until, at step S[0023] 25, one of three things happens: mating, bumping or timeout. If no associated packet is received by kernel 11 in time, a request will either time out or be bumped. In either case, the request is retired, in other words, not stored anymore. Optionally, a retirement notice can be sent to the client that sent the request. For example, the notice can be “the requested site is not responding due to high Internet traffic, please try again later”.
  • If, before a request is retired, [0024] kernel 11 responds to the polling initiated at step S24 with a packet that provides all or part of the header for the request, request assembler 33 mates the original request with the new packet at step and forwards the augmented request to request filter 31 at step 26. This returns method M1 to step S11.
  • In this iteration of step S[0025] 11, the request is either complete or has an incomplete header. Presumably, the request does not completely lack a header. If the request is complete, as determined at step S12, it is passed toward request processor 15 at step S13. If it is incomplete, queue Q2 is selected. Depending on the original status of the request, this may be the same as the prior queue for this request or different. In any event, if queue Q2 is full, the oldest previously stored request is bumped at step S23. Also, a timer is started anew for the request and polling of kernel 11 for associated packets is resumed. The exit options are the same as in the first iteration: mating, time-out, and bumping.
  • The present invention provides for many alternatives to the embodiments described above. A DoS trap can be built into a request processor or into an operating system kernel. It can run on the same or different hardware than the request processor. However, including a DoS trap in an admissions control module brings a certain efficiency, since similar information is used for DoS traps and deferral managers. Where the DoS trap is included in the request processor, upgrading the DoS trap for new types of attacks would require upgrading the request processor—which can vary from server to server. Including the DoS trap at the server instead of the router, e.g., as part of a firewall, makes it easier to customize on a server-by-server basis. For example, servers may require different time out periods and queue depths for optimal effectiveness. [0026]
  • The present invention has applicability in the fields of computer networking, e-commerce, and Internet appliances. Depending on the particular context, the filtering can be more or less severe. Also, a choice is available whether to notify clients of retired requests. The DoS trap can be programmed with a knowledge base to help distinguish likely from unlikely sources of DoS attacks. These and other variations upon and modifications to the described embodiments are provided for by the present invention, the scope of which is defined by the following claims.[0027]

Claims (8)

What is claimed is:
1. An admissions control system for a host site comprising a trap that withholds from a request processor incomplete HTTP requests and that retires incomplete HTTP requests to avoid exceeding a storage limitation.
2. A system as recited in claim 1 further comprising a deferral manager, said trap sending complete HTTP requests to said deferral manager, said deferral manager sending some of said complete HTTP requests to said request processor and responding with deferral messages to some others of said complete HTTP requests.
3. A system as recited in claim 1 wherein said trap includes at least one queue and a queue manager, said queue manager storing incomplete HTTP requests in said queue, said queue manager retiring a previously stored recent incomplete HTTP request when necessary to make room for a new incomplete HTTP request.
4. A system as recited in claim 3 wherein said trap includes first and second queues, said queue manager storing requests without headers in said first queue and requests with incomplete headers in said second queue.
5. A method of admissions control for a host site, said method comprising
withholding incomplete HTTP requests from a request processor until they are complete; and
retiring incomplete HTTP requests when associated storage limits are reached.
6. A method as recited in claim 5 further comprising:
passing complete HTTP requests to a deferral manager;
admitting some of said HTTP requests to a request processor; and
sending a deferral response to some others of said complete HTTP requests.
7. A method as recited in claim 5 further comprising:
storing a first incomplete HTTP request in a queue; and
retiring a previously stored incomplete HTTP request in said queue when necessary to make room for said first incomplete HTTP request.
8. A method as recited in claim 7 wherein, in said storing step, HTTP requests without headers are stored in a first queue and HTTP requests with incomplete headers are store in a second queue.
US09/780,308 2001-02-09 2001-02-09 Web-site admissions control with denial-of-service trap for incomplete HTTP requests Abandoned US20020112061A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/780,308 US20020112061A1 (en) 2001-02-09 2001-02-09 Web-site admissions control with denial-of-service trap for incomplete HTTP requests

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/780,308 US20020112061A1 (en) 2001-02-09 2001-02-09 Web-site admissions control with denial-of-service trap for incomplete HTTP requests

Publications (1)

Publication Number Publication Date
US20020112061A1 true US20020112061A1 (en) 2002-08-15

Family

ID=25119224

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/780,308 Abandoned US20020112061A1 (en) 2001-02-09 2001-02-09 Web-site admissions control with denial-of-service trap for incomplete HTTP requests

Country Status (1)

Country Link
US (1) US20020112061A1 (en)

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041667A1 (en) * 2002-11-19 2006-02-23 Gaeil Ahn Method and apparatus for protecting legitimate traffic from dos and ddos attacks
US20080306816A1 (en) * 2007-06-06 2008-12-11 Nebuad, Inc. Network devices for replacing an advertisement with another advertisement
US20110047276A1 (en) * 2009-08-18 2011-02-24 International Business Machines Corporation Accept and receive enhancements
US7899817B2 (en) 2005-10-05 2011-03-01 Microsoft Corporation Safe mode for inverse query evaluations
US7975047B2 (en) 2008-12-19 2011-07-05 Oracle International Corporation Reliable processing of HTTP requests
US20120096175A1 (en) * 2009-04-20 2012-04-19 Diamantis Kourkouzelis Dynamic adjustment of connection setup request parameters
WO2013032775A1 (en) * 2011-08-29 2013-03-07 Arbor Networks, Inc. Method and protection system for mitigating slow http attacks using rate and time monitoring
US9231879B1 (en) * 2012-02-20 2016-01-05 F5 Networks, Inc. Methods for policy-based network traffic queue management and devices thereof
US9270766B2 (en) 2011-12-30 2016-02-23 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US9554276B2 (en) 2010-10-29 2017-01-24 F5 Networks, Inc. System and method for on the fly protocol conversion in obtaining policy enforcement information
US9647954B2 (en) 2000-03-21 2017-05-09 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
USRE47019E1 (en) 2010-07-14 2018-08-28 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US10097616B2 (en) 2012-04-27 2018-10-09 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US20200372183A1 (en) * 2019-05-21 2020-11-26 Hewlett Packard Enterprise Development Lp Digitally Signing Software Packages With Hash Values
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892979A (en) * 1994-07-20 1999-04-06 Fujitsu Limited Queue control apparatus including memory to save data received when capacity of queue is less than a predetermined threshold
US5991881A (en) * 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US20010039579A1 (en) * 1996-11-06 2001-11-08 Milan V. Trcka Network security and surveillance system
US6317837B1 (en) * 1998-09-01 2001-11-13 Applianceware, Llc Internal network node with dedicated firewall
US20020019869A1 (en) * 2000-07-14 2002-02-14 Moises Goldszmidt System and method for modeling and provisioning information system capacity
US6389460B1 (en) * 1998-05-13 2002-05-14 Compaq Computer Corporation Method and apparatus for efficient storage and retrieval of objects in and from an object storage device
US20020083117A1 (en) * 2000-11-03 2002-06-27 The Board Of Regents Of The University Of Nebraska Assured quality-of-service request scheduling
US20030046361A1 (en) * 1996-02-21 2003-03-06 Infoseek Corporation Method and apparatus for redirection of server external hyper-link references
US6714553B1 (en) * 1998-04-15 2004-03-30 Top Layer Networks, Inc. System and process for flexible queuing of data packets in network switching
US6725378B1 (en) * 1998-04-15 2004-04-20 Purdue Research Foundation Network protection for denial of service attacks
US20040103167A1 (en) * 1998-02-10 2004-05-27 Grooters Brandon A. Convergence events notification system

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892979A (en) * 1994-07-20 1999-04-06 Fujitsu Limited Queue control apparatus including memory to save data received when capacity of queue is less than a predetermined threshold
US20030046361A1 (en) * 1996-02-21 2003-03-06 Infoseek Corporation Method and apparatus for redirection of server external hyper-link references
US20010039579A1 (en) * 1996-11-06 2001-11-08 Milan V. Trcka Network security and surveillance system
US5991881A (en) * 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US20040103167A1 (en) * 1998-02-10 2004-05-27 Grooters Brandon A. Convergence events notification system
US6714553B1 (en) * 1998-04-15 2004-03-30 Top Layer Networks, Inc. System and process for flexible queuing of data packets in network switching
US6725378B1 (en) * 1998-04-15 2004-04-20 Purdue Research Foundation Network protection for denial of service attacks
US6389460B1 (en) * 1998-05-13 2002-05-14 Compaq Computer Corporation Method and apparatus for efficient storage and retrieval of objects in and from an object storage device
US6317837B1 (en) * 1998-09-01 2001-11-13 Applianceware, Llc Internal network node with dedicated firewall
US20020019869A1 (en) * 2000-07-14 2002-02-14 Moises Goldszmidt System and method for modeling and provisioning information system capacity
US20020083117A1 (en) * 2000-11-03 2002-06-27 The Board Of Regents Of The University Of Nebraska Assured quality-of-service request scheduling

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9647954B2 (en) 2000-03-21 2017-05-09 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US7882556B2 (en) 2002-11-19 2011-02-01 Electronics And Telecommunications Research Institute Method and apparatus for protecting legitimate traffic from DoS and DDoS attacks
US20060041667A1 (en) * 2002-11-19 2006-02-23 Gaeil Ahn Method and apparatus for protecting legitimate traffic from dos and ddos attacks
US7899817B2 (en) 2005-10-05 2011-03-01 Microsoft Corporation Safe mode for inverse query evaluations
US9165301B2 (en) * 2007-06-06 2015-10-20 Core Audience, Inc. Network devices for replacing an advertisement with another advertisement
US20080306816A1 (en) * 2007-06-06 2008-12-11 Nebuad, Inc. Network devices for replacing an advertisement with another advertisement
US7975047B2 (en) 2008-12-19 2011-07-05 Oracle International Corporation Reliable processing of HTTP requests
US8223636B2 (en) * 2009-04-20 2012-07-17 Telefonaktiebolaget L M Ericsson (Publ) Dynamic adjustment of number of connection setup requests to be initiated to be processed
US20120096175A1 (en) * 2009-04-20 2012-04-19 Diamantis Kourkouzelis Dynamic adjustment of connection setup request parameters
US20110047276A1 (en) * 2009-08-18 2011-02-24 International Business Machines Corporation Accept and receive enhancements
US8230078B2 (en) * 2009-08-18 2012-07-24 International Business Machines Corporation Accept and receive enhancements
US11108815B1 (en) 2009-11-06 2021-08-31 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
USRE47019E1 (en) 2010-07-14 2018-08-28 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US9554276B2 (en) 2010-10-29 2017-01-24 F5 Networks, Inc. System and method for on the fly protocol conversion in obtaining policy enforcement information
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
WO2013032775A1 (en) * 2011-08-29 2013-03-07 Arbor Networks, Inc. Method and protection system for mitigating slow http attacks using rate and time monitoring
US9985976B1 (en) 2011-12-30 2018-05-29 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US9270766B2 (en) 2011-12-30 2016-02-23 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US9231879B1 (en) * 2012-02-20 2016-01-05 F5 Networks, Inc. Methods for policy-based network traffic queue management and devices thereof
US10097616B2 (en) 2012-04-27 2018-10-09 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US20200372183A1 (en) * 2019-05-21 2020-11-26 Hewlett Packard Enterprise Development Lp Digitally Signing Software Packages With Hash Values

Similar Documents

Publication Publication Date Title
US20020112061A1 (en) Web-site admissions control with denial-of-service trap for incomplete HTTP requests
US10511624B2 (en) Mitigating a denial-of-service attack in a cloud-based proxy service
US7725939B2 (en) System and method for identifying an efficient communication path in a network
US7707637B2 (en) Distributed threat management
US9332066B2 (en) Connection rate limiting for server load balancing and transparent cache switching
US7707295B1 (en) Connection rate limiting
US7359962B2 (en) Network security system integration
US6301668B1 (en) Method and system for adaptive network security using network vulnerability assessment
EP2139199B1 (en) Dynamic policy provisioning within network security devices
US20110099622A1 (en) Apparatus for detecting and filtering application layer ddos attack of web service
US20060282893A1 (en) Network information security zone joint defense system
RU2666289C1 (en) System and method for access request limits
JP2004507978A (en) System and method for countering denial of service attacks on network nodes
WO2005038598A2 (en) Policy-based network security management
US11856008B2 (en) Facilitating identification of compromised devices by network access control (NAC) or unified threat management (UTM) security services by leveraging context from an endpoint detection and response (EDR) agent
US8543807B2 (en) Method and apparatus for protecting application layer in computer network system
US20030074434A1 (en) Determination of message source in network communications
US20220166783A1 (en) Enabling enhanced network security operation by leveraging context from multiple security agents
US6904529B1 (en) Method and system for protecting a security parameter negotiation server against denial-of-service attacks
WO2007122495A2 (en) A framework for protecting resource-constrained network devices from denial-of-service attacks
KR100432166B1 (en) Apparatus for transmission message for the transmission of security policy for global intrusion detection system and method for processing transmission of security policy
JP5160652B2 (en) Method and system for controlling computer application programs
US20220030011A1 (en) Demand management of sender of network traffic flow
Kashiwa et al. Active countermeasure platform against DDoS attacks
WO2002035755A2 (en) System and method for handling denial of service server attacks

Legal Events

Date Code Title Description
AS Assignment

Owner name: HEWLETT-PACKARD COMPANY, COLORADO

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHIH, FU-TAI;BHOAJARAJ, SANDYA;REEL/FRAME:012394/0679

Effective date: 20010208

AS Assignment

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P., TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:014061/0492

Effective date: 20030926

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P.,TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:014061/0492

Effective date: 20030926

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION