如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

今天就跟大家聊聊有关如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

大家好,下面分享的writeup是作者通过在Tumblr用户注册过程中,发现Tumblr的“人机身份验证”机制(reCAPTCHA)存在缺陷,可被轻松绕过。这种绕过形成的安全风险是恶意攻击者可进行大量虚假社交账户创建、进行针对账户的用户名和邮箱枚举,间接导致Tumblr网站应用出现流量异常甚至用户信息泄露。

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

我对漏洞众测的理解和经历分享

去年6月16日,HackerOne在伦敦举办的黑客马拉松大赛中,为发现漏洞支付的赏金有超过了8万多美金。漏洞众测确实是个未来可期的行业,对众测平台来说,有组织给赏金的测试活动,即可以激励安全研究人员发现漏洞,也能提高上报漏洞质量,还能把详细的漏洞信息转发给厂商进行及时修复。

安全是门复杂的学问,即使是大公司也难免犯错。企业在面对的内部资源和外部攻击者之间,往往存在不定的安全风险,而漏洞众测恰好可以很好地弥补其中存在的安全空白。如果你的组织机构无法从内部培养或选拔出高质量且多样化的安全测试人员,那么就可以借助外部的众测项目或咨询服务等方式,来进行安全产品或相关系统的测试和漏洞发现。

就我个人来说,在众测过程中也遇到过一些不好的经历。我曾给Myspace上报过一个访问任意账户的高危漏洞,但在我与Myspace的冗长协商过程中,他们简直就是漠不关心的态度,最终我选择了公开漏洞(点此阅读)。该漏洞影响将近3.6亿多个用户帐户,我寄希望于能通过公众压力来促使漏洞修复,这种行为也是迫不得已。

而相反的是,我曾发现了Tumblr公司的一个reCaptcha验证码绕过漏洞,从Twitter方式上报给他们后,他们就直接私信我进行交流,只经过了两天漏洞就得到修复。以下就是我对该漏洞发现过程的分享。

Tumblr的reCaptcha验证码绕过漏洞

在我访问www.tumblr.com进行用户注册时,发现其中嵌入的谷歌reCAPTCHA验证码服务存在一个错误配置漏洞,那就是由客户端和应用发送的reCAPTCHA验证码请求中,其中名为‘g-recaptcha-response’ 的参数值可以置空。该漏洞会对所有新注册用户产生影响,且不需要什么特别的工具进行利用,只需手动地点击网站上出现的按钮,或是通过抓包代理发起修改即可。

漏洞影响

通常来说,Captcha机制如果运行部署合理,是具有速率限制作用的(Rate Limiting),可以用其来防止垃圾用户创建虚假社交账户,减少特定应用的请求量。我发现的这个Tumblr页面reCAPTCHA验证码绕过漏洞,可以被攻击者用来创建虚假账户;另外由于Tumblr的用户注册机制只允许注册邮箱绑定一个用户名,所以,也可以利用该漏洞进行针对用户邮箱和用户名的暴力枚举攻击,反复大量的枚举可以导致Tumblr的用户注册信息泄露。

漏洞复现

我们先来看www.tumblr.com页面中正常的账户创建过程,首先来到登录页面https://www.tumblr.com/login,点击右上角的注册按钮“Sign up”:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

然后就跳转到了账户注册页面 https://www.tumblr.com/register :

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

接着,点击开始按钮 ‘Get Started’,之后就会出现一些必填选项,包括用户名、密码和邮箱:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

完成以上必填项之后,还要输入年龄和勾选服务条款须知:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

接下来,就会跳出一个“人机身份验证”(reCAPTCHA )页面:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

除了这么一个“人机身份验证”(reCAPTCHA )选项部署在这里,其下方还有一个选项“完成了”(Almost Done!)。搞笑的是,虽然通常来说需要完成“人机身份验证”才能进行下一步,但是,经我测试发现,可以直接不用勾选“人机身份验证”中的 “I’m not a robot”,直接点击下方的“完成了”(Almost Done!)即可完成这里所谓的“人机身份验证”,就直接进入下一步到用户的Tumblr主页。这种“人机身份验证”(reCAPTCHA )部署在这里是当摆设的吗?

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

抓包分析

为了深入分析,我们用Burp来看看用户在“人机身份验证”(reCAPTCHA )这一步发起具体的请求和响应。

发起“人机身份验证”时的POST请求如下:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

仔细查看上述POST请求可以发现,其中的recaptcha质询是一个名为‘g-recaptcha-response’的参数值,也就是上图中的红字部分。但如果我们把这个参数值置空,也等同于就不去勾选它,会发生什么情况?这样构造的POST请求如下:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证

后经测试发现,Tumblr服务器端对以上两种POST请求都返回了相同且有效的响应:

如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证当然也就是说,Tumblr服务器端直接就是忘记了检查‘g-recaptcha-response’ 参数的值,才导致了上述的“人机身份验证”(reCAPTCHA )机制被绕过。

尽管很多网站应用都要求用户群的高度可信,但类似这种验证绕过漏洞在这些网站中也很常见。这不,前不久Google才刚刚修复了一个可完全绕过 reCAPTCHA 的漏洞。

看完上述内容,你们对如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

文章标题:如何分析绕过Tumblr用户注册过程中的reCAPTCHA验证,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/25563

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云认证作者
上一篇 2022年9月15日 下午11:31
下一篇 2022年9月15日 下午11:32

相关推荐

  • css语言中漂浮的语法是什么

    css语言中的漂浮语法为“float:属性值;”。float属性用于定义元素在哪个方向浮动,会让盒子(元素)漂浮在标准流的上面,其周围的元素也会重新排列,直到它的外边缘碰到包含框或另一个浮动框的边框为止。该属性有三个属性值:1、“left”,定义元素向左浮动;2、“right”,定义元素向右浮动;3…

    2022年9月22日
    65600
  • Word如何截图

    Word截图方法 方法一、快捷键截图 屏幕截图:“Ctrl+Alt+X” 截屏时隐藏当前窗口:“Ctrl+Alt+C” 方法二、软件自带截图功能 1、打开Word界面 2、点击“插入”找到“截屏” 3、截屏后Word中会多出图片就是所截取的内容 “Word如何截图”的内容就介绍到这里了,感谢大家的阅…

    2022年9月8日
    1.4K00
  • windows的任务管理器如何打开

    打开任务管理器的多种方式 方法一:使用Ctrl+Shift+Esc组合键调出任务管理器。 方法二:用鼠标右键点击任务栏选择“任务管理器”, 方法三:使用组合键“Win+R”键打开运行对话框,输入taskmgr,回车,即打开 方法四:按顺序连续按住Ctrl、Alt和Delete键 方法五:直接找到Ta…

    2022年9月6日
    49100
  • mysql如何将日期转为数字

    2种将日期转为数字的方法:1、使用TO_DAYS()函数,可以将指定日期值转为代表天数的整数值,语法“TO_DAYS(指定日期值)”。2、使用TIME_TO_SEC()函数,可以将指定日期时间值转为代表秒数的整数值,语法“TIME_TO_SEC(指定日期时间值)”。 本教程操作环境:windows7…

    2022年9月21日
    1.1K00
  • jquery怎么删除option

    具体步骤如下: 1.首先,新建一个html项目,并在项目中引入jquery; <script type=”text/javascript” src=”/static/jquery-2.1.4.min.js”></script> 2.引入jquery后,在项目中创建一个opti…

    2022年8月29日
    56800
  • 如何进行移动app安全评估检测技术分析

    由于现今的网络技术日益发达,安卓 APP 的安全也有很多隐患,这些都需要我们不断地去注意,从而提高其安全性。人们基于系统程序、系统数据、基础业务的安全性以及应用程序出现的漏洞这几个方面,来不断地完善并且构成一个更加安全、稳定、完整的移动 APP 监测系统来确保移动 APP 的安全性,其将作为“恶意伤…

    2022年9月15日
    97200
  • windows office365企业版和家庭版区别的是什么

    office365企业版和家庭版区别: 用户数: 1、office家庭版:非常多支持 6 位用户。 2、office企业版:非常多支持 300 位用户。 许可证: 1、office家庭版:具备家用许可证。 2、office企业版:具备企业许可证。 功能: 1、office企业版相比家庭版,支持更多功…

    2022年9月21日
    72200
  • Laravel中如何找到最慢的查询

    DB::listen() 幸运的是,在 laravel 中,我们可以定义一个在每次执行查询时调用的回调(参见 此处)。为此,请将以下代码添加到任何服务提供者(例如 AppServiceProvider): public function boot(){ DB::listen(function ($q…

    2022年9月8日
    56900
  • mdf文件打开方法是什么

    mdf文件怎么开: 如果mdf是镜像文件,我们需要虚拟光驱进行加载,下载并安装Daemon Tools虚拟光驱软件,打开就行了。 如果mdf是数据库文件,我们需要使用SQLServer管理工具进行打开,打开后点击文件,选择导入连接,选择需要打开的mdf文件 1、找到要打开的数据库文件 2、该数据库文…

    2022年9月8日
    2.3K00
  • office包括哪些办公软件

    office包括的办公软件:1、Word,一个文字处理器应用程序,提供了用于创建专业的文档工具;2、Excel,一款电子表格软件,是最流行的个人计算机数据处理软件;3、PowerPoint,是一款演示文稿软件,可以在投影仪或者计算机上进行演示,也可以将演示文稿打印出来;4、Publisher,一款入…

    2022年9月13日
    2.8K00
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部