ARC: protecting against HTTP parameter pollution attacks using application request caches

  • Authors:
  • Elias Athanasopoulos;Vasileios P. Kemerlis;Michalis Polychronakis;Evangelos P. Markatos

  • Affiliations:
  • Department of Computer Science, Columbia University, New York, NY;Department of Computer Science, Columbia University, New York, NY;Department of Computer Science, Columbia University, New York, NY;Institute of Computer Science, Foundation for Research and Technology --- Hellas, Greece

  • Venue:
  • ACNS'12 Proceedings of the 10th international conference on Applied Cryptography and Network Security
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

HTTP Parameter Pollution (HPP) vulnerabilities allow attackers to exploit web applications by manipulating the query parameters of the requested URLs. In this paper, we present Application Request Cache (ARC), a framework for protecting web applications against HPP exploitation. ARC hosts all benign URL schemas, which act as generators of the complete functional set of URLs that compose the application's logic. For each incoming request, ARC exports the URL, extracts the associated schema, and searches for it in the set of already known benign schemas. In case the schema is not found, the request is rejected, and the event is recorded. ARC can be transparently integrated with existing web applications without any modifications to the server and client code. It is implemented in Google's Go language and uses efficient data structures for storing the URL schemas, imposing negligible computational overhead on the web application server. When running on a 4-core Linux server, ARC can process hundreds of thousands of URL requests per second. A typical URL resolution is in the scale of microseconds.