价值一万美金的漏洞,可随意阅读Uber的内部邮件(含视频演示)

没有字幕还有点糊的视频。。。up主有没有字幕版的微笑


------------------------------------------

https://i-blog.csdnimg.cn/blog_migrate/81fc8204dbcd6e3027c3c7d72019f698.jpeg

概述


据了解,Uber的网站系统又爆出了一个漏洞,攻击者或可利用该漏洞随意阅读Uber的内部邮件。而根据Uber公司的漏洞奖励计划,该漏洞价值约为一万美金。


写在前面的话


不久之前,我在对Uber的网站系统进行安全分析时发现了一个域名劫持漏洞,于是我决定继续深入分析一下Uber系统的整体安全性。果不其然,我又发现了一个类似的漏洞。我的同事Abhibandu Kafle表示,Uber公司旗下子域名em.uber.com中的CNAME记录指向的是企业邮件服务SendGrid,而这将有可能导致域名劫持等问题的出现。

http://p1.qhimg.com/t01aff77dce2a0881d5.png

由于我个人在此前并没有使用过SendGrid邮件服务,所以我就不打算花时间在这个问题上了。我决定从其他的地方入手,因为我的第六感告诉我Uber的系统中肯定还存在其他的漏洞。在思考了片刻之后我决定开始动手,因为在我看来,如果能从不同的角度来分析某一个系统,则往往能够给研究人员带来新的启发和灵感。但是很明显,男人的第六感通常都是不准的,我实在是找不到其他的漏洞了。于是我做出了一个“重大的”决定,我要注册一个SendGrid账号,然后分析一下Uber和SendGrid之间到底发生了什么。

SendGrid是什么?

http://p4.qhimg.com/t01ceafe6e6a406911f.png

SendGrid是一家云邮件管理公司。该公司提供了一个可以帮助企业用户管理和发送电子邮件的平台,SendGrid平台可以为用户的电子邮件提供安全可靠、可扩展的基础服务。除此之外,SendGrid还可以帮助企业用户处理邮件订阅、管理和反馈等事宜。同时,SendGrid还为用户提供了邮件分析服务,为用户提供关于电子邮件的跟踪请求、响应、垃圾邮件报告、无效电子邮件反馈、点击统计以及退订等诸多管理服务。我们之所以在这里要提到这个邮件服务,是因为Uber公司在进行市场运作时一直都在使用SendGrid。

 

安全客科普:域名劫持


域名劫持是互网络攻击的一种方式,攻击者可以通过攻击域名解析服务器,或伪造域名解析服务器的方法,把目标网站域名解析到错误的地址,从而将用户重定向到其他的站点。

http://p9.qhimg.com/t01b9dce054d8cbfb3b.png

域名劫持一方面可能影响用户的上网体验,因为用户可能会被重定向到伪造的网站,进而无法正常浏览网页。而用户量较大的网站域名被劫持后恶劣影响会不断扩大。另一方面,用户可能会被诱骗到钓鱼网站,然后进行登录等操作,这样将会导致用户泄露隐私数据。

 

分析过程


基于我最初提出的假设,我首先要对SendGrid的域名处理机制进行了分析,因为我必须了解如何通过SendGrid来声明一个域名。结果我发现,我无法修改域名的信息,这也就意味着我们无法像往常那样直接进行子域名劫持。但是在SendGrid平台的设置选项中,我发现了一个名叫“white-label”(白名单标签)的选项。该功能开启后,SendGrid将只允许电子邮件通过某个经过认证的域名来进行发送。直觉告诉我,这回应该可以利用这个功能来做文章,而这一次直觉并没有欺骗我。

但是当我准备开始的时候,我发现了一个非常“严重”的问题,我竟然忘记了我Uber账号的密码。于是,我不得不将密码重置。但是在重置密码的过程中,我发现Uber所发送的密码重置邮件会提供邮件回复功能,而回复邮件时所使用的域名为@em.uber.com。于是,我就知道了在这个过程中,em.uber.com域名下的某条MX记录肯定被使用到了。根据dnsgoodies.com所提供的MX记录查询结果,该域名下的其中一条MX记录所指向的域名是mx.sendgrid.net。这种因祸得福的感觉让我又精神了起来!

http://p1.qhimg.com/t015cc13e4bb3126902.png

在了解到上述这些信息之后,我就可以利用Uber子域名的MX记录来大做文章了。但是万丈高楼平地起,我觉得我还是得深入了解一下SendGrid服务的工作机制,于是我又google了一番。我发现,我可以在Webhook(一个可以进行邮件拦截的解析服务)中声明使用em.uber.com域名,而Uber并没有在Webhook中使用该域名。此时,我感觉我已经找到了切入点。

接下来,我便上网查询关于Webhook服务的API信息,然后我发现了一个由SendGrid官方提供的python程序。我对这个程序的代码进行了一些修改,因为我需要在终端显示邮件内容。然后将本地http服务器端口设置为5000,并运行这个修改后的python程序。接下来,我需要使用ngrok(一个反向代理,它可以捕获并分析信道上的所有流量数据)来在本地服务器和目标web地址之间建立一个通信隧道。这样一来,Webhook在进行入境邮件解析时就可以获取到收件人的域名了,然后就可以向该域名发送POST请求。

 

问题比我们想象的要严重


没过多久,我就可以接收到发送至域名em.uber.com的电子邮件了。需要注意的是,这种方式同样适用于Uber其他的子域名。除此之外,由于www.uber.com主页中还使用了Sentry插件(一款崩溃信息报告程序),所以我同样能够通过这种方式获取到所有的Sentry日志,因为这些日志报告是通过电子邮件进行发送的。毫无疑问,这部分信息对于Uber来说是非常重要的,所以我认为这个漏洞应该立刻得到修复。

 

漏洞的修复


果然不出所料,Uber同样认为这是一个非常严重的安全问题。所以Uber公司的相关技术人员迅速修复了这个漏洞,并还告诉我他们正在与SendGrid的技术人员合作,以确定没有遗留下其他的安全问题。SendGrid公司表示,目前对于各大企业而言,最好的选择就是由各家公司自己来声明SendGrid中需要使用到的邮件域名。

在该漏洞被修复的十天之后,Uber公司根据其漏洞奖励计划给我提供了十万美元的漏洞奖金。

概念验证视频如下:

height="400" width="600" src="http://player.youku.com/embed/XMTcxODcyNzc1Mg==" frameborder="0" allowfullscreen="">

http://v.youku.com/v_show/id_XMTcxODcyNzc1Mg==.html


下图显示的是我可以添加至Webhook中的域名列表:

http://p8.qhimg.com/t0190a8c206874ff3eb.png

总结

Uber是一款全球即时用车软件,该软件现已覆盖了全球六十多个国家和三百多个城市。而Uber的主要目的就是为大家提供更安全、更舒适的出行方式,并改善城市交通。但是近期,安全研究专家在Uber的App和网站系统中发现了很多大大小小的漏洞。虽然Uber公司为这些漏洞的发现者都提供了金额不菲的漏洞奖励,但是这种亡羊补牢的处理方式并不是一个长久之计。当Uber将注意力放在如何在出行方式上造福用户时,是不是也应该花一些精力在信息安全的保护上呢?

致谢

首先,我要感谢Uber公司的安全团队如此大方地给我提供了一万美元的漏洞奖金,他们尽职尽责的工作态度也值得我们赞扬。其次,我还要感谢我的同事Abhibandu,感谢他在这篇文章的撰写过程中给我提供的帮助。



本文转载自 pentestnepal
原文链接:http://blog.pentestnepal.tech/post/149985438982/reading-ubers-internal-emails-uber-bug-bounty

https://i-blog.csdnimg.cn/blog_migrate/81fc8204dbcd6e3027c3c7d72019f698.jpeg

概述


据了解,Uber的网站系统又爆出了一个漏洞,攻击者或可利用该漏洞随意阅读Uber的内部邮件。而根据Uber公司的漏洞奖励计划,该漏洞价值约为一万美金。


写在前面的话


不久之前,我在对Uber的网站系统进行安全分析时发现了一个域名劫持漏洞,于是我决定继续深入分析一下Uber系统的整体安全性。果不其然,我又发现了一个类似的漏洞。我的同事Abhibandu Kafle表示,Uber公司旗下子域名em.uber.com中的CNAME记录指向的是企业邮件服务SendGrid,而这将有可能导致域名劫持等问题的出现。

http://p1.qhimg.com/t01aff77dce2a0881d5.png

由于我个人在此前并没有使用过SendGrid邮件服务,所以我就不打算花时间在这个问题上了。我决定从其他的地方入手,因为我的第六感告诉我Uber的系统中肯定还存在其他的漏洞。在思考了片刻之后我决定开始动手,因为在我看来,如果能从不同的角度来分析某一个系统,则往往能够给研究人员带来新的启发和灵感。但是很明显,男人的第六感通常都是不准的,我实在是找不到其他的漏洞了。于是我做出了一个“重大的”决定,我要注册一个SendGrid账号,然后分析一下Uber和SendGrid之间到底发生了什么。

SendGrid是什么?

http://p4.qhimg.com/t01ceafe6e6a406911f.png

SendGrid是一家云邮件管理公司。该公司提供了一个可以帮助企业用户管理和发送电子邮件的平台,SendGrid平台可以为用户的电子邮件提供安全可靠、可扩展的基础服务。除此之外,SendGrid还可以帮助企业用户处理邮件订阅、管理和反馈等事宜。同时,SendGrid还为用户提供了邮件分析服务,为用户提供关于电子邮件的跟踪请求、响应、垃圾邮件报告、无效电子邮件反馈、点击统计以及退订等诸多管理服务。我们之所以在这里要提到这个邮件服务,是因为Uber公司在进行市场运作时一直都在使用SendGrid。

 

安全客科普:域名劫持


域名劫持是互网络攻击的一种方式,攻击者可以通过攻击域名解析服务器,或伪造域名解析服务器的方法,把目标网站域名解析到错误的地址,从而将用户重定向到其他的站点。

http://p9.qhimg.com/t01b9dce054d8cbfb3b.png

域名劫持一方面可能影响用户的上网体验,因为用户可能会被重定向到伪造的网站,进而无法正常浏览网页。而用户量较大的网站域名被劫持后恶劣影响会不断扩大。另一方面,用户可能会被诱骗到钓鱼网站,然后进行登录等操作,这样将会导致用户泄露隐私数据。

 

分析过程


基于我最初提出的假设,我首先要对SendGrid的域名处理机制进行了分析,因为我必须了解如何通过SendGrid来声明一个域名。结果我发现,我无法修改域名的信息,这也就意味着我们无法像往常那样直接进行子域名劫持。但是在SendGrid平台的设置选项中,我发现了一个名叫“white-label”(白名单标签)的选项。该功能开启后,SendGrid将只允许电子邮件通过某个经过认证的域名来进行发送。直觉告诉我,这回应该可以利用这个功能来做文章,而这一次直觉并没有欺骗我。

但是当我准备开始的时候,我发现了一个非常“严重”的问题,我竟然忘记了我Uber账号的密码。于是,我不得不将密码重置。但是在重置密码的过程中,我发现Uber所发送的密码重置邮件会提供邮件回复功能,而回复邮件时所使用的域名为@em.uber.com。于是,我就知道了在这个过程中,em.uber.com域名下的某条MX记录肯定被使用到了。根据dnsgoodies.com所提供的MX记录查询结果,该域名下的其中一条MX记录所指向的域名是mx.sendgrid.net。这种因祸得福的感觉让我又精神了起来!

http://p1.qhimg.com/t015cc13e4bb3126902.png

在了解到上述这些信息之后,我就可以利用Uber子域名的MX记录来大做文章了。但是万丈高楼平地起,我觉得我还是得深入了解一下SendGrid服务的工作机制,于是我又google了一番。我发现,我可以在Webhook(一个可以进行邮件拦截的解析服务)中声明使用em.uber.com域名,而Uber并没有在Webhook中使用该域名。此时,我感觉我已经找到了切入点。

接下来,我便上网查询关于Webhook服务的API信息,然后我发现了一个由SendGrid官方提供的python程序。我对这个程序的代码进行了一些修改,因为我需要在终端显示邮件内容。然后将本地http服务器端口设置为5000,并运行这个修改后的python程序。接下来,我需要使用ngrok(一个反向代理,它可以捕获并分析信道上的所有流量数据)来在本地服务器和目标web地址之间建立一个通信隧道。这样一来,Webhook在进行入境邮件解析时就可以获取到收件人的域名了,然后就可以向该域名发送POST请求。

 

问题比我们想象的要严重


没过多久,我就可以接收到发送至域名em.uber.com的电子邮件了。需要注意的是,这种方式同样适用于Uber其他的子域名。除此之外,由于www.uber.com主页中还使用了Sentry插件(一款崩溃信息报告程序),所以我同样能够通过这种方式获取到所有的Sentry日志,因为这些日志报告是通过电子邮件进行发送的。毫无疑问,这部分信息对于Uber来说是非常重要的,所以我认为这个漏洞应该立刻得到修复。

 

漏洞的修复


果然不出所料,Uber同样认为这是一个非常严重的安全问题。所以Uber公司的相关技术人员迅速修复了这个漏洞,并还告诉我他们正在与SendGrid的技术人员合作,以确定没有遗留下其他的安全问题。SendGrid公司表示,目前对于各大企业而言,最好的选择就是由各家公司自己来声明SendGrid中需要使用到的邮件域名。

在该漏洞被修复的十天之后,Uber公司根据其漏洞奖励计划给我提供了十万美元的漏洞奖金。

概念验证视频如下:

height="400" width="600" src="http://player.youku.com/embed/XMTcxODcyNzc1Mg==" frameborder="0" allowfullscreen="">

http://v.youku.com/v_show/id_XMTcxODcyNzc1Mg==.html


下图显示的是我可以添加至Webhook中的域名列表:

http://p8.qhimg.com/t0190a8c206874ff3eb.png

总结

Uber是一款全球即时用车软件,该软件现已覆盖了全球六十多个国家和三百多个城市。而Uber的主要目的就是为大家提供更安全、更舒适的出行方式,并改善城市交通。但是近期,安全研究专家在Uber的App和网站系统中发现了很多大大小小的漏洞。虽然Uber公司为这些漏洞的发现者都提供了金额不菲的漏洞奖励,但是这种亡羊补牢的处理方式并不是一个长久之计。当Uber将注意力放在如何在出行方式上造福用户时,是不是也应该花一些精力在信息安全的保护上呢?

致谢

首先,我要感谢Uber公司的安全团队如此大方地给我提供了一万美元的漏洞奖金,他们尽职尽责的工作态度也值得我们赞扬。其次,我还要感谢我的同事Abhibandu,感谢他在这篇文章的撰写过程中给我提供的帮助。



本文转载自 pentestnepal
原文链接:http://blog.pentestnepal.tech/post/149985438982/reading-ubers-internal-emails-uber-bug-bounty

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值