主页 > 网络知识 > 从MicroStrategy入手发现Facebook的SSRF漏洞(3)

从MicroStrategy入手发现Facebook的SSRF漏洞(3)

 

1592990447_5ef31aef14e73.png!small

 

https://tinyurl.com/中,将生成tinyurl短域名:

 

1592990460_5ef31afc8f625.png!small

 

在以下链接的srcURL参数中插入生成的tinyurl短域名,然后发送给受害者:

https://m-nexus.thefacebook.com/servlet/taskProc?taskId=shortURL&taskEnv=xml&taskContentType=json&srcURL={YOUR_TINY_URL_HERE}

 

1592990486_5ef31b164e3f2.png!small

 

如果攻击者不小心上钩后,他输入的用户名密码将会存储到我服务器的文件中,之后,再跳转到带m-nexus.thefacebook.com字串的真正的Facebook登录页面。

我在服务端访问以下文件,即可看到钓鱼窃取来的受害者用户名密码信息:

 

1592990511_5ef31b2f66958.png!small

 

当然,作为攻击者来说,也可以利用该漏洞让受害者跳转到其它部署有恶意软件的恶意网站,实现感染类攻击。

探测Facebook内部架构或服务:

利用Burp Intruder发送枚举请求,可以探测出防火墙后运行于Facebook服务端的应用服务情况,如端口或应用名称等信息:

 

1592990545_5ef31b51c659b.png!small

 

比如,我在端口10303上发现了Facebook服务端的一个名为“LightRay”的应用服务:

 

1592990563_5ef31b63b8bf0.png!small

 

该漏洞上报后,Facebook安全团队迅速做了修复处理,赏金为$1000:

 

1592990586_5ef31b7a82450.png!small

 

好戏才刚刚开始

现在,在知道Facebook生产系统部署了MicroStrategy Web SDK后,我甚是欢喜,因为MicroStrategy Web SDK是基于java的,而我喜欢发现java类漏洞。于是,我用JD Decompiler 工具对每个jar文件进行了反编译准备进行代码审计,另外,我还在我自架的网站上部署了MicroStrategy Web SDK,如果有相应漏洞,也好进行验证。经过26天的钻研和折腾之后,我终于发现了一个有意思的线索。

在源码的“com.microstrategy.web.app.task.WikiScrapperTask”类中,当我们发送了作为用户输入的参数后,“str1”即被初始化,它会检查用户输入的URL字串中是否包含或https://, 如果有,然后会调用“webScrapper”方法。

 

1592990632_5ef31ba82c18e.png!small

 

“webScrapper”方法会在后台用Java的HTML解析器JSOUP向用户输入的URL发送一个GET请求,以获取和解析其中的HTML页面:

 

1592990649_5ef31bb94d6f5.png!small

 

因此,最终它又可形成一个SSRF漏洞:

 

1592990664_5ef31bc8db193.png!small

 

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!