6 min read
|
Saved February 14, 2026
|
Copied!
Do you care about this?
This article examines early instances of cache poisoning vulnerabilities from various platforms like HackerOne and GitHub. It details how attackers exploited misconfigurations to compromise web applications, leading to severe impacts, including redirects, denial of service, and XSS attacks.
If you do, here's more
Cache poisoning is a significant vulnerability in web security, affecting various platforms like CDNs and SaaS providers. The article outlines early case studies that highlight foundational attacks, demonstrating how simple misconfigurations can lead to serious security breaches. These attacks have evolved into a lucrative vector for exploitation, with impacts ranging from data hijacking to denial of service.
One notable case from HackerOne in 2014 involved the misuse of the X-Forwarded-Host header. Attackers manipulated this header without validation, redirecting users to malicious sites. GitHub faced a similar issue where it treated the Content-Type header as part of its redirect logic but didnโt include it in the cache key for unauthenticated users. This oversight allowed attackers to create a denial of service for unauthenticated users, with a bounty of $4,850 awarded for the discovery.
Shopify's attack showcased how cache poisoning could persist across multiple hosts, which significantly raised the bounty to $6,300. Attackers sent repeated requests to poison the cache, demonstrating that some caches require multiple hits for successful exploitation. The article also describes a critical stored XSS vulnerability in a private program where a simple redirect cached a malicious script, affecting 21 subdomains. GitLab's scenario involved method override headers that inadvertently led to a denial of service by overwriting cached entries with empty responses.
The case studies illustrate the need for developers to scrutinize how headers are handled in caching mechanisms. Techniques like testing for dangerous methods, understanding the behavior of authenticated versus unauthenticated requests, and recognizing the potential for cross-domain impacts are vital for enhancing security. These examples serve as cautionary tales for developers to review their caching strategies and prevent similar vulnerabilities.
Questions about this article
No questions yet.