This is a exploit demo of a vulnerable server side input validation.
The vulnerable page (see full source) accepts JSON data posted in a form and then uses it in Javascript.
To protect from XSS, it validates server-side and only allows certain characters: -a-zA-Z0-9,.:"{} and a space, making it very tricky to find
a bypass. But theoretically it's possible in all browsers and, thanks to Sidarckcat and Thornmaker research
there's a working vector for IE.
Lessons to learn:
json_decode()JSON.parse() built into newer browsers, for older - use this.Read more: