German Cybersecurity researchers from Cologne University & the University of Hamburg coined a new class of web cache poisoning attack dubbed CPDoS that let an attacker force a particular website to deliver an error page instead of the legitimate one.
Web caching is a key component of modern architecture, the cache promotes the performance of the website and offers additional protection such as DoS attack.
The attack impacts reverse proxy and cache servers such as Apache TS & Varnish, popular CDNs such as Akamai, Azure, CDN77, Cloudflare, CloudFront and Fastly.
According to researchers, a simple request is sufficient to replace the genuine content in the cache by an error page and the attack remains under the radar as web application firewalls scan for huge irregular network traffic.
CPDoS expanded as Cache-Poisoned Denial-of-Service, exploits the semantic gap between the shared cache and the origin server.
The attacker can initiate the attack by sending an HTTP request with a malicious header targeting a specific victim domain. The request will get processed by intermediate cache and remains undetected.
Then the cache request will be forwarded to the origin server and the origin server provokes error because of malicious header.
The origin server returns with an error message and the error will get stored in the cache instead of the legitimate content.
If the attack is successful then the attacker will retrieve an error page in response and the Legitimate users reaching the website will get the cached error page.
Attackers can send the Malformed request in the following three types.
The HHO attack works by sending a larger header than the size supported by the origin server, the attack works in the case that web application uses a cache that accepts a larger header size limit than the origin server limit.
With the HMC CPDoS attack, instead of sending the oversized header, the attacker bypasses the cache bypassing invalid meta characters, e.g., control characters such as line break/carriage return (\n), line feed (\r) or bell (\a).
HTTP Method Override (HMO) method used by attackers to override the blocked requests such as DELETE, PUT and PATCH.
If the error page was injected then the CDN will distribute the error page to all of the edge locations within the CDN.
“We analyze the caching behavior of error pages of fifteen web caching solutions and contrast them to the HTTP specifications [13]. We identify one proxy cache product and five CDN services that are vulnerable to CPDoS.”
With the analysis, researchers found that one proxy cache product and five CDN services that are vulnerable to CPDoS.
Researchers published a paper titled “Your Cache Has Fallen: Cache-Poisoned Denial-of-Service Attack” with complete details.
The vulnerability was reported to the affected vendors.
Amazon confirms the vulnerability in CloudFront and fixed the issue by stopping caching error pages with the status code 400 Bad Request by default.
Microsoft Fixed the Vulnerability CVE-2019-0941, by changing the way requests processed by filters.
Play 1 developers confirmed the issue and fixed by providing a security patch that limits the XHTTP-Method-Override header.
Researchers contacted other vendors including Flask, but no response from them, so the Flask-based web applications are still vulnerable to CPDoS.
You can follow us on Linkedin, Twitter, Facebook for daily Cybersecurity and Hacking News update.
Cybersecurity researchers at Cisco Talos have uncovered a large-scale smishing campaign targeting toll road users…
A significant security vulnerability has been identified in IBM Aspera Faspex 5, a popular file…
In a concerning report from cybersecurity firm TeamT5, it has been revealed that a Chinese…
VMware has announced that ESXi 8.0 Update 3e, the latest version of its industry-leading hypervisor, is…
A North Korean state-sponsored threat group known as "Slow Pisces" has been orchestrating sophisticated cyberattacks…
The U.S. Department of Justice has launched a landmark initiative to block foreign adversaries—including China,…