Evading defences using VueJS script gadgets
Summary: PortSwigger researchers Gareth Heyes, Lewis Ardern, and PwnFunction documented how VueJS features create script gadgets that enable XSS, including a 23-character, 27-byte payload using dynamic components that they call the shortest vector found for VueJS v2. They also showed that VueJS parses and alters HTML, so reflected input passing an HTML filter can mutate into mXSS, and that VueJS special events like @error can execute after mutation to bypass CSP.
What's compelling: The research shows a payload of 27 bytes and mutation-based vectors that bypass WAFs and CSP, so a filter or policy that blocks conventional XSS may not stop an attacker who knows VueJS is rendering the page.
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