| name | performing-web-cache-poisoning-attack |
| description | Exploiting web cache mechanisms to serve malicious content to other users by poisoning cached responses through unkeyed headers and parameters during authorized security tests. Use when working with performing web cache poisoning attack. |
| domain | cybersecurity |
| tags | ["penetration-testing","cache-poisoning","web-security","cdn","burpsuite","owasp"] |
| subdomain | web-application-security |
| version | 1.0 |
| author | oyi77 |
| license | Apache-2.0 |
| nist_csf | ["PR.PS-01","ID.RA-01","PR.DS-10","DE.CM-01"] |
Performing Web Cache Poisoning Attack
Overview
Cybersecurity skill for performing web cache poisoning attack. Follows industry best practices and security standards.
When to Use
Trigger phrases:
-
"performing web cache poisoning attack"
-
"Exploiting web cache mechanisms to serve malicious content to other users by poi"
-
During authorized penetration tests when the application uses CDN or reverse proxy caching (Cloudflare, Akamai, Varnish, Nginx)
-
When assessing web applications for cache-based vulnerabilities that could affect all users
-
For testing whether unkeyed HTTP headers are reflected in cached responses
-
When evaluating cache key behavior and cache deception vulnerabilities
-
During security assessments of applications with aggressive caching policies
When NOT to Use
- When you lack proper authorization for testing
- For production systems without change management
- When the task requires legal or compliance expertise beyond technical scope
Prerequisites
- Authorization: Written penetration testing agreement explicitly covering cache poisoning testing
- Burp Suite Professional: With Param Miner extension for automated unkeyed header discovery
- curl: For manual cache testing with precise header control
- Target knowledge: Understanding of the caching layer (CDN provider, cache headers)
- Cache buster: Unique query parameter to isolate test requests from other users
- Caution: Cache poisoning affects all users; test with cache-busting parameters first
Legal Notice: This skill is for authorized security testing and educational purposes only. Unauthorized use against systems you do not own or have written permission to test is illegal and may violate computer fraud laws.
Workflow
import re
IOC_PATTERNS = {
"ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",
"domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",
"hash_md5": ,
: ,
}
() -> :
{k: re.findall(v, text) k, v IOC_PATTERNS.items()}