Your Cache Has Fallen: Cache-Poisoned Denial-of-Service Attack Hoai Viet Nguyen, Luigi Lo Iacono Hannes Federrath Data & Application Security Group Security in Distributed Systems Group Cologne University of Applied Sciences, Germany University of Hamburg, Germany {viet.nguyen,luigi.lo_iacono}@th-koeln.de
[email protected] ABSTRACT 1 INTRODUCTION Web caching enables the reuse of HTTP responses with the aim Contemporary distributed software systems require to scale at large to reduce the number of requests that reach the origin server, the in order to efficiently handle the sheer magnitude of requests stem- volume of network traffic resulting from resource requests, and ming, e.g., from human users all over the globe or sensors scattered the user-perceived latency of resource access. For these reasons, around in an environment. A common architectural approach to a cache is a key component in modern distributed systems as it cope with this requirement is to design the system in layers com- enables applications to scale at large. In addition to optimizing posed of distinct intermediaries. Application-level messages travel performance metrics, caches promote additional protection against through such intermediate systems on their path between a client Denial of Service (DoS) attacks. and a server. Common intermediaries include caches, firewalls, load In this paper we introduce and analyze a new class of web cache balancers, document routers and filters. poisoning attacks. By provoking an error on the origin server that The caching of frequently used resources reduces network traffic is not detected by the intermediate caching system, the cache gets and optimizes application performance and is one major pillar of poisoned with the server-generated error page and instrumented success of the web.