Cyber Risks · PortSwigger Research

Provoking browser quirks with behavioural fuzzing

Summary: PortSwigger researcher Gareth Heyes used behavioural fuzzing in Firefox version 67 to find that newline characters (\n and \r) after the ! can close an HTML comment, and that the NULL character lets the sequence <!-NULL- open a comment. Fuzzing JavaScript with eval across the full 0x10ffff unicode range showed Firefox ignoring many characters after an in or instanceof operator, which he assembled into XSS vectors including an SVG script payload using code point 0x10fffe.

What's compelling: These parser quirks let an attacker slip past filters and JavaScript sandboxes that assume only documented comment syntax and standard whitespace are valid, and Heyes notes the NULL-character behaviour was still present in Firefox 67 at the time of writing.

Read the original at PortSwigger Research ↗

Topics
Vulnerabilities & Patching
Related