主页 > 网络知识 > PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

 

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

 

本文Writeup讲述了作者通过简单Google Dork查询发现的PayPal信息泄露漏洞。每天,世界各地大量PayPal用户在发生转账交易时,都使用了安全的GET方式HTTP传输请求,这本身没有任何问题,但是,原因在于PayPal官方未配置严谨安全的robots或禁止爬虫索引规则,导致Google搜索引擎爬虫可以收录爬取到这些用户转账交易的GET请求信息,导致用户敏感信息泄露。漏洞最终获得Paypal官方$1,000的奖励。

从Paypal的Robots规则说起

通常,网站可通过在根目录下放置robots.txt文件,来告知网络搜索引擎爬虫,自身资源哪些是允许(allow)或不允许(disallow)爬取收录的,如下所示:

 

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

从上面的示例可以看出,robots.txt规则对于防止搜索引擎爬虫索引收录网站目录内容非常有效。但PayPal对此的做法却是存在问题的,如以下经过解码的PayPal交易请求示例:

 

 

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

在该转账交易请求中,并没有配置恰当的搜索引擎爬虫索引收录拦截规则,这样的话,攻击者就可以尝试通过搜索引擎来枚举相关的转账请求信息。

 

据我所知,通常来说,要防止搜索引擎爬虫对类似请求的索引收录,开发人员需要在页面中使用noindex标签来表明禁止收录该页,谷歌也在其官方文档中作了相应说明:

 

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

 

另外,HubSpot公司也分享了使用noindex和nofollow的两种防止爬虫索引收录方法:

 

PayPal未配置恰当的爬虫索引(robots)规则导致的用户敏感信息泄露漏洞

 

PayPal转账交易HTTP请求中的参数说明

当PayPal用户向其他账户发生转账交易时,正常来说,PayPal会向服务端发送一个GET方式的HTTP请求,这个请求中包含了recipient、onboardData、sendMoney、currencyCode、payment_type、sendMoneyText、intent等参数,如下:

(GET Method): https://www.paypal.com/signin/?country.x=US&locale.x=en-US&returnUri=https://www.paypal.com/myaccount/transfer/send/external?recipient

(victim_email_address)&amount=1000.00&currencyCode=USD&payment_type=Gift&onboardData={“intent”:”sendMoney”,”recipient”:

(victim_email_address)”,”currency”:”$”,”amount”:”1000.00″,”redirect_url”:”https://www.paypal.com/myaccount/transfer/send/external?recipient

(victim_email_address)&amount=1000.00&currencyCode=USD&payment_type=Gift”,”flow”:”p2p”,”country”:”US”,”locale”:”en-US”,”sendMoneyText”:”Custom message, for example is sending a money to victim_email_address”}

如前所述,如果我们知道这些所有参数,就能尝试去枚举Paypal注册用户执行的转账交易请求。

Xoom相关的信息泄露问题

Xoom是PayPal于2015年收购的跨境转账平台,用于提升PayPal快捷的国际汇款服务。刚开始,在研究这种信息泄露问题时,我只发现了一些用户邮箱信息,我认为Paypal可能不会把它当成漏洞处理。但之后我发现在Xoom的用户安全策略中,它采取了相应措施防止攻击者的枚举猜测,因此我还是把这个漏洞上报给了PayPal,当然最后他们也承认了该漏洞的有效性。

当我们第一次注册Xoom账户时,Xoom会正常完成注册程序并会向用户发送验证信息。但是,奇怪的是,当我们用注册过的Xoom账户信息再次注册时,Xoom仍然会正常完成注册流程,就像该Xoom账户此前从未注册过一样。这就神奇了。而另一方面,Xoom在后台却会向这个注册过的Xoom账户发送警告邮件,声称该账户可能正被攻击者尝试重新注册,以此提示用户要注意账户安全。

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