Quantcast
Channel: CodeSection,代码区,网络安全 - CodeSec
Viewing all articles
Browse latest Browse all 12749

【技术分享】利用ssrf漏洞获取google内部的dns信息

$
0
0
【技术分享】利用ssrf漏洞获取google内部的dns信息

2017-03-06 11:03:25
来源:rcesecurity.com 作者:派大星

阅读:766次
点赞(0)
收藏





【技术分享】利用ssrf漏洞获取google内部的dns信息

翻译:派大星

预估稿费:100RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿


前言

一月下旬,我发现和向谷歌VRP部门报告了toolbox.googleapps.com的一个服务器端请求伪造漏洞(ssrf)。可用于发现和查询Google内部 DNS服务器,以提取各种公司信息,例如公司内部使用的内部IP地址,以及通过A记录和NS记录暴露的各种主机,如谷歌的Active Directory结构和一个有趣的Minecraft服务器。接下来是这个漏洞的简要说明。

你可能已经知道,G-Suite工具箱可以用来排除各种故障。在这所有有用的工具中,有一款叫做“Dig”的工具,在linux上 ,可用于查询给定域名的DNS记录,比如A-或MX记录。Google为该工具实现了一个漂亮的web界面,以便直观的查找DNS信息。它看起来像一个从谷歌的角度来查询DNS的有用的工具。


【技术分享】利用ssrf漏洞获取google内部的dns信息

“Name server”字段可能会引起每个bug猎人的注意。当我们试图请求127.0.0.1关于我域名DNS记录时,该程序的响应为“Server did not respond message”。


【技术分享】利用ssrf漏洞获取google内部的dns信息

这看起来像是该工具试图连接到127.0.0.1:53去取回我域名的DNS信息。这看起来很像是服务器端请求伪造漏洞,不是吗?


Ok Google,给我一个响应的内部DNS服务器!

多亏了BurpSuite的intrude模块,可以通过检测相应的HTTP POST“nameserver”参数快速的暴力破解响应的IP地址。

POST/apps/dig/lookupHTTP/1.1 Host:toolbox.googleapps.com User-Agent:Mozilla/5.0(X11;Ubuntu;Linuxx86_64;rv:51.0)Gecko/20100101Firefox/51.0 Accept:application/json,text/javascript,*/*;q=0.01 Accept-Language:en-US,en;q=0.5 Content-Type:application/x-www-form-urlencoded;charset=UTF-8 X-Requested-With:XMLHttpRequest Referer:https://toolbox.googleapps.com/apps/dig/ Content-Length:107 Cookie:csrftoken=NE5nKGrbPNRoEwm0mahDzop9iJfsxU4H;_ga=GA1.2.2102640869.1486420030;_gat=1 Connection:close csrfmiddlewaretoken=NE5nKGrbPNRoEwm0mahDzop9iJfsxU4H&domain=www.rcesecurity.com&nameserver=§127.0.0.1§&typ=a

几分钟之后我就发现了一个有希望的内网IP,它响应了我的请求,但是只是关于我域名的一个空的DNS A记录。


【技术分享】利用ssrf漏洞获取google内部的dns信息

由于我对自己的域名非常了解,因此更有趣的是,是否可以从Google提取一些不可公开的内部信息。


Ok Google,给我你的内部域名!

Et voila,在这里发现了一些东西。 看来Google正在使用“corp.google.com”作为其公司的域名。至少有一些工具,包括一个名为“MoMa - Inside Google”的工具托管在该域名下。现在,你可以使用完全相同的POST请求来发现“corp.google.com”的子域名。或者也可以用用google搜索一下,你将会发现一个“ad.corp.google.com”的有趣的A记录。

Ok Google,只要提供「ad.corp.google.com」的所有A纪录即可!


【技术分享】利用ssrf漏洞获取google内部的dns信息

与公共DNS记录上的内容比较一下,看起来会更有趣:

digAad.corp.google.com@8.8.8.8 ;<<>>DiG9.8.3-P1<<>>Aad.corp.google.com@8.8.8.8 ;;globaloptions:+cmd ;;Gotanswer: ;;->>HEADER<<-opcode:QUERY,status:NXDOMAIN,id:5981 ;;flags:qrrdra;QUERY:1,ANSWER:0,AUTHORITY:1,ADDITIONAL:0 ;;QUESTIONSECTION: ;ad.corp.google.com.INA ;;AUTHORITYSECTION: corp.google.com.59INSOAns3.google.com.dns-admin.google.com.147615698900900180060 ;;Querytime:28msec ;;SERVER:8.8.8.8#53(8.8.8.8) ;;WHEN:WedFeb1523:56:052017 ;;MSGSIZErcvd:86 现在我们已经接触到了内网!

Ok Google,给我与该域名相关联的NS记录(及其内部IP)!


【技术分享】利用ssrf漏洞获取google内部的dns信息

Ok Google,让我们更具体一点。 给我有关“gc._msdcs”的信息!


【技术分享】利用ssrf漏洞获取google内部的dns信息

Ok Google,还有什么你想让我看到吗?


【技术分享】利用ssrf漏洞获取google内部的dns信息

通过其VRP部门向Google报告此漏洞后,他们迅速修复了此漏洞。 感谢Google的赏金!


【技术分享】利用ssrf漏洞获取google内部的dns信息
【技术分享】利用ssrf漏洞获取google内部的dns信息
本文由 安全客 翻译,转载请注明“转自安全客”,并附上链接。
原文链接:https://www.rcesecurity.com/2017/03/ok-google-give-me-all-your-internal-dns-information/

Viewing all articles
Browse latest Browse all 12749

Latest Images

Trending Articles