Mitigating application-level denial of service attacks on Web servers: A client-transparent approach

  • Authors:
  • Mudhakar Srivatsa;Arun Iyengar;Jian Yin;Ling Liu

  • Affiliations:
  • IBM T. J. Watson Research Center, Yorktown, NY;IBM T. J. Watson Research Center, Yorktown, NY;IBM T. J. Watson Research Center, Yorktown, NY;Georgia Institute of Technology, Atlanta, GA

  • Venue:
  • ACM Transactions on the Web (TWEB)
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recently, we have seen increasing numbers of denial of service (DoS) attacks against online services and Web applications either for extortion reasons or for impairing and even disabling the competition. These DoS attacks have increasingly targeted the application level. Application-level DoS attacks emulate the same request syntax and network-level traffic characteristics as those of legitimate clients, thereby making the attacks much harder to detect and counter. Moreover, such attacks often target bottleneck resources such as disk bandwidth, database bandwidth, and CPU resources. In this article, we propose handling DoS attacks by using a twofold mechanism. First, we perform admission control to limit the number of concurrent clients served by the online service. Admission control is based on port hiding that renders the online service invisible to unauthorized clients by hiding the port number on which the service accepts incoming requests. Second, we perform congestion control on admitted clients to allocate more resources to good clients. Congestion control is achieved by adaptively setting a client's priority level in response to the client's requests in a way that can incorporate application-level semantics. We present a detailed evaluation of the proposed solution using two sample applications: Apache HTTPD and the TPCW benchmark (running on Apache Tomcat and IBM DB2). Our experiments show that the proposed solution incurs low performance overhead and is resilient to DoS attacks.