Lab: Web cache poisoning via an unkeyed query parameter
Summary: PortSwigger's lab demonstrates web cache poisoning on a site that excludes a certain parameter from the cache key, and notes that sites often exclude UTM analytics parameters such as utm_content. The exercise is solved by sending a request with a utm_content parameter that breaks out of the reflected string and injects an XSS payload, poisoning the cache so a regular Chrome visitor to the home page executes alert(1).
Why it matters: The parameter left out of the cache key is the whole attack surface: one crafted utm_content request can plant a payload that every subsequent visitor to the home page receives, and analytics parameters are routinely excluded by design.
Read the original at PortSwigger Research ↗
- Topics
- Vulnerabilities & Patching
- Related
- Attackers Exploit UnrealIRCd Flaw That Enables Server-Level Command Injection Cyber Risks · Nov 14, 2026U.S. CISA adds Check Point and UnrealIRCd flaws to its Known Exploited Vulnerabilities catalog Cyber Risks · Nov 14, 2026PostgreSQL Patches 52 Flaws, Including 22-Year-Old Bug Enabling Authenticated RCE Cyber Risks · Nov 13, 2026