前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >不被PayPal待见的6个安全漏洞

不被PayPal待见的6个安全漏洞

作者头像
FB客服
发布2020-03-24 10:57:40
3.4K0
发布2020-03-24 10:57:40
举报
文章被收录于专栏:FreeBuf

在对 PayPal for Android (v. 7.16.1)的安卓APP分析中,我们发现PayPal对用户手机和邮箱的身份验证存在登录后的2FA认证漏洞。也就是说当攻击者以其它方式获取了受害者的密码凭据实施登录后,由于PayPal判定攻击者使用的手机设备或IP地址与之前受害者的不同,从而会发起一个2FA方式的身份验证,此时,PayPal会通过短信或邮箱发送一个验证码给当前登录的攻击者,只有正确输入该验证码,登录才能继续往下真正有效进入受害者账户。

PayPal的2FA采用了Authflow方式,当用户从新手机、新位置或新IP地址执行账户登录时就会触发2FA验证。在漏洞测试过程中,我们用抓包拦截代理(Charles)观察PayPal APP的具体网络活动,经过一番研究,我们发现了一个提权Token,可以用它来绕过上述登录后的2FA认证。(由于漏洞目前尚未修复,在此不作过多细节描述)

关于该漏洞我们的关注点是:目前黑市中存在大量PayPal用户密码凭据信息泄露,如果恶意攻击者买下这些信息,然后配合上述我们发现的漏洞,就能轻松绕过PayPal登录后的2FA认证,进入受害者账户,对广大PayPal用户的账户安全形成威胁。但是,PayPal却不这么认为,他们在回复邮件中称”这种形为不会导致任何安全问题“(there does not appear to be any security implications as a direct result of this behavior)。

漏洞2:未对手机验证方式实施动态口令

我们分析发现,在PayPal新推出的一个应用系统中,它会检查注册手机号码是否为当前用户账户所持有,如果不是,则会拒绝进一步的登录。在该系统中,当用户用手机号码进行账户注册时,会向PayPal后端服务器api-m.paypal.com执行一个预录式呼叫或短信请求以进行用户状态确认。这里存在的问题是,我们可以更改其中的预录式呼叫确认方式,实现对用户注册绑定手机号码的更改。危害是由于可以不通过短信验证码,很多骗子可以利用该漏洞,绕过电话身份验证,创建欺诈账户。

我们上报漏洞后,刚开始PayPal的安全团队还是比较重视的,但是经过几次沟通交流,他们干脆就不回复了。现在的情况是,PayPal直接把该漏洞报告关闭了。

漏洞3:转账安全措施可绕过

为了避免欺诈和其它恶意行为,PayPal在应用中内置了很多保护用户钱款的转账防护措施,来针对以下用户钱款操作:

使用一个新的电子设备进行登录转账; 从一个新的地理位置或IP地址实行转账; 改变你通常的转账模式; 你当前的转账账户刚注册不久。

当以上述一种或几种行为发生时,PayPal在触发转账防护措施过程中,会抛出一些错误,其中包括:

你需要链接到其它新的支付方式实现转账(You’ll need to link a new payment method to send the money) 你的转账操作被拒绝,稍后请重新尝试(Your payment was denied, please try again later)

我们分析发现,上述的转账错误可以被枚举,如果与漏洞1(登录后的PayPal双因素认证(2FA)绕过)配合利用,就可以绕过转账安全防护措施,登录一些受害者账户,实现钱款操作。而当我们提交了该漏洞之后,PayPal却声称,由于这需要与其它漏洞配合才能产生实际威胁,因此不属众测范围之内。

漏洞4:用户账户命名可更改

默认来说,针对用户名更改,PayPal只允许用户一次更改其中的1-2个字母,之后就不能再更改了。但是,我们发现,在当前PayPal.com网站应用中,我们可以更改完整的用户名,比如下面的从“Tester IAmTester” 更改为“christin christina”

我们通过拦截用户名更改请求,每次替换其中的1-2个字母,可以无需任何验证就可实现完整的用户名更改,甚至可以在用户名字段中加入表情标志等unicode符号。漏洞危害是,如果攻击者可进行任意的用户名更改,那么会与,如果与漏洞1(登录后的PayPal双因素认证(2FA)绕过)配合利用,可劫持其他重名PayPal。漏洞提交后,PayPal回应称该漏洞已有其他白帽上报过,属于重复报。

漏洞5:自助聊天系统存储型XSS漏洞

在PayPal的自助聊天系统SmartChat中,用户可以找到一些通常问题的答案,我们研究发现SmartChat对用户输入缺乏验证,可以在聊天框中提交一些程序脚本,导致可以解析出程序按钮或框架。

我们可以用中间人攻击MITM代理对上述网络流量进行抓包拦截,在其中附加进恶意构造的Payload,深入攻击可获取受害者账户信息。PayPal对该漏洞的回应是,这不是一个外部可利用的漏洞,所以不算安全问题,最后漏洞分类为“不适用”(Not Applicable)。

漏洞6:安全问题输入中存在持久型XSS

该漏洞与漏洞5类似,原因在于PayPal未对安全问题的用户输入答案实施过滤,导致存在XSS,我们可以使用MITM代理对其抓包构造,实现XSS触发。下图为我们向其中注入了大量可点击的链接:

漏洞危害是,攻击者可以在其中嵌入以下链接:

提示“Download the new PayPal app” 的恶意APP下载链接; 更改转账收款人的邮箱地址; 对受害者进行键盘记录监听收集*信息。

PayPal对该漏洞的回应称已有其他安全人员提交过该漏洞,而就在同一天,PayPal对该漏洞进行了修复。

Cybernews认为的观点

Cybernews阐述攻击者的以下攻击场景为:

在黑市买到包含PayPal账户密码凭据的信息,比如这里能以$150美金买到一个价值$5,000的PayPal账户; 使用漏洞1绕过PayPal的登录后2FA认证; 使用漏洞3绕过转账安全措施,可以从账户绑定的*实施转账 攻击者还可以使用漏洞1绕过登录后2FA认证,再使用漏洞4更改其账户持有者的PayPal用户名。

对于攻击者和骗子来说,他们会有更多的动机和方式来对这些漏洞进行利用,然而但对PayPal本身来说,他们却认为这些都不是问题。

*参考来源:cybernews,clouds 编译整理,转载请注明来自 FreeBuf.COM

精彩推荐

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 漏洞2:未对手机验证方式实施动态口令
  • 漏洞3:转账安全措施可绕过
  • 漏洞4:用户账户命名可更改
  • 漏洞5:自助聊天系统存储型XSS漏洞
  • 漏洞6:安全问题输入中存在持久型XSS
  • Cybernews认为的观点
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档