近期,安全研究者Alex Birsanl对PayPal登录界面的身份验证机制进行分析,发现了其中一个隐藏的高危漏洞,可以通过请求其验证码质询服务端(reCAPTCHA challenge),在质询响应消息中获取PayPal受害者的注册邮箱和明文密码,危害严重,漏洞最终获得了PayPal官方$15,300的奖励。
漏洞前言
当我们在做漏洞测试时,相对于那些显而易见的功能应用来说,我们还会去关注那些未知资产或模糊端点的服务,有时候这种犄角旮旯服务产生的漏洞同样至关重要,影响关键。
在面对测试目标时,如果你是第一个关注它并对它开展测试评估的人,那么细致全面的检查无疑会发现一些安全问题,尤其是一些代码已经成型且处于持续运转的应用,若能在这种应用功能中发现安全漏洞,将会是非常重要非常危急,且收获颇丰的。本文中,作者就在PayPal用户经常用到的功能点 - 登录框架中发现了一个高危漏洞,我们一起来看看。
最初研究
我在研究PayPal的验证机制时,发现其auth验证页面的一个javascript脚本文件(recaptchav3.js)中,包含了一个CSRF token和一个会话ID(Session ID),如下:
这马上引起了我的注意,因为在有效javascript文件中存在的任何类型的会话数据,都有可能被攻击者以各种方式检索获取到。如用跨站脚本包含(cross-site script inclusion,XSSI),攻击者可以用一个嵌入了HTML