Sec Hotspot 首页  排行榜  收藏本站  技术博客  RSS
统计信息
已收录文章数量:17822 篇
已收录公众号数量:91 个
本站文章为爬虫采集,如有侵权请告知
已收录微信公众号
阿里云先知 网安寻路人 网信中国 区块链大本营 白说区块链 区块链投资家 区块链官微 区块链铅笔Blockchain HACK学习呀 二道情报贩子 合天智汇 小白帽学习之路 小米安全中心 弥天安全实验室 SAINTSEC SecPulse安全脉搏 TideSec安全团队 360安全卫士 游侠安全网 计算机与网络安全 安全祖师爷 安全学习那些事 腾讯安全联合实验室 黑客技术与网络安全 安全圈 腾讯御见威胁情报中心 Python开发者 Python之禅 编程派 Python那些事 Python程序员 安全威胁情报 吾爱破解论坛 行长叠报 安在 i春秋 嘶吼专业版 E安全 MottoIN 网信防务 网安杂谈 数说安全 互联网安全内参 漏洞战争 安全分析与研究 邑安全 ChaMd5安全团队 天融信阿尔法实验室 安全牛 SecWiki 安全学术圈 信安之路 漏洞感知 浅黑科技 Secquan圈子社区 奇安信集团 奇安信 CERT 国舜股份 雷神众测 盘古实验室 美团安全应急响应中心 瓜子安全应急响应中心 顺丰安全应急响应中心 蚂蚁金服安全响应中心 携程安全应急响应中心 滴滴安全应急响应中心 字节跳动安全中心 百度安全应急响应中心 腾讯安全应急响应中心 网易安全应急响应中心 OPPO安全应急响应中心 京东安全应急响应中心 Bypass CNNVD安全动态 安恒应急响应中心 天融信每日安全简报 奇安信威胁情报中心 看雪学院 黑白之道 水滴安全实验室 安全客 木星安全实验室 云鼎实验室 绿盟科技安全预警 白帽汇 深信服千里目安全实验室 腾讯玄武实验室 长亭安全课堂 FreeBuf 绿盟科技 nmask
对Facebook进行安全测试之账户劫持实验
本文来自公众号:FreeBuf   2021.01.13 15:19:52


由于疫情原因,让我有了充足的时间来做职业规划。8月份我参与了OSWE的考试,之后闲了一个星期,到了9月份,我才想起来今年还没参与过Facebook的漏洞众测呢,于是乎说干就干。

此前,我从未发现过Facebook子域名网站的漏洞,看了许多相关writeup后,其中一篇文章让我有了启发-《HTML to PDF converter bug leads to RCE in Facebook server》。有了如此的珠玉在前,让我思路大为开阔。我决定围绕Facebook子域名网站https://legal.tapprd.thefacebook.com进行深入测试,看看能否发现RCE等高危漏洞。我先是拿出了fuzz工具对其路径进行了扫描,发现了以下响应为403(禁止访问)的路径:

/tapprd/
/tapprd/content/
/tapprd/services/
/tapprd/Content/
/tapprd/api/
/tapprd/Services/
/tapprd/temp/
/tapprd/logs/
/tapprd/logs/portal/
/tapprd/logs/api/
/tapprd/certificates/
/tapprd/logs/auth/
/tapprd/logs/Portal/
/tapprd/API/
/tapprd/webroot/
/tapprd/logs/API/
/tapprd/certificates/sso/
/tapprd/callback/
/tapprd/logs/callback/
/tapprd/Webroot/
/tapprd/certificates/dkim/
/tapprd/SERVICES/

乍一看,确实能想像出该网站有些庞大,于是,我尝试着从网站请求调用的js脚本文件中窥探其应用系统具体的运行机制。之后,我注意到了一种绕过单点登录SSO的路径https://legal.tapprd.thefacebook.com/tapprd/portal/authentication/login,深入分析该路径后,我又注意到了以下这两个路径:

/tapprd/auth/identity/user/forgotpassword(忘记密码)
/tapprd/auth/identity/user/savepassword(保存密码)

通过阅读其中相关的js脚本文件,我发现/tapprd/auth/identity/user/savepassword的调用方法应该是一个POST请求,请求参数是绑定邮箱和新设置的密码,请求机制应该是保存密码(savepassword),且在此过程中会生成一个token和xsrf token,不管了,我还是先测试看看吧。但当我用burp测试的时候却遇到了错误,错误提示我操作失败。难道是我在POST请求中提供的邮箱有错?于是我从我前期收集的Facebook管理员邮箱字典库中构造了一个邮箱字典,尝试用burp的Intruder模块去发现该网站匹配的管理员邮箱。

用邮箱字典、随意设置的新密码和一个CSRF token值,配合上述路径/savepassword的POST请求,我前后差不多捣鼓了两个多小时,请求测试大部份是报错,但其中出现了一个跳转到登录路径的302响应,这让我看到了希望,说明它是https://legal.tapprd.thefacebook.com/的管理员邮箱,且服务端可以保存它的密码重置请求!然后,我用其中测试得出的匹配邮箱和其密码值执行了针对路径/tapprd/auth/identity/user/savepassword的POST请求,这一次,服务端返回了路径https://legal.tapprd.thefacebook.com/tapprd/portal/authentication/login的302响应。

我立马用其中的匹配邮箱和设置密码在登录界面https://legal.tapprd.thefacebook.com/tapprd/portal/authentication/login进行了登录,竟然成功登录了!可以进入到其管理界面:

针对/savepassword路径和以上漏洞,我马上编写了一个自动化的利用脚本,只要提供正确的邮箱地址和新设置的密码,最终的漏洞利用即可成功更改与该邮箱绑定的账号密码,实现账户劫持。
漏洞上报后,Facebook很快给出了响应,最终我收获了7500$的奖励:

在该网站我还发现了其它漏洞,请关注我的博客https://alaa.blog/,且听下回分解。

参考来源:medium

精彩推荐