如何分析HackerOne的双因素认证和上报者黑名单绕过漏洞
今天就跟大家聊聊有关如何分析HackerOne的双因素认证和上报者黑名单绕过漏洞,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
坚守“ 做人真诚 · 做事靠谱 · 口碑至上 · 高效敬业 ”的价值观,专业网站建设服务10余年为成都护栏打桩机小微创业公司专业提供成都定制网站营销网站建设商城网站建设手机网站建设小程序网站建设网站改版,从内容策划、视觉设计、底层架构、网页布局、功能开发迭代于一体的高端网站建设服务。
大家好,今天我要和大家分享的是一个HackerOne相关的漏洞,利用该漏洞,我可以绕过HackerOne漏洞提交时的双因素认证机制(2FA)和赏金项目中(Bug Bounty Program)的上报者黑名单限制。该漏洞严重性最终被定级为中级,漏洞原因为授权不当( Improper Authorization),赏金为$10,000美金。
漏洞说明
该漏洞是一个功能性Bug,最初上报给HackerOne时,他们给我设置的赏金是 $2,500,漏洞评级CVSS 5.0,但经HackerOne安全团队对这个漏洞执行根本原因分析流程(Root Cause Analysis,RCA)之后,他们又基于我上报的这个漏洞,发现了另一个高危严重漏洞(CVSS 7.1),因此,HackerOne官方最终又额外奖励了我$7,500美金。
漏洞发现
众所周知,HackerOne是一个漏洞众测网站,而我也经常在上面参与各个厂商的漏洞测试。通常,我总会留意HackerOne的一些新推出功能,某天,偶然间我就发现了其一个名为“嵌入式漏洞报告样式”(Embedded Submission Form)的试用功能,利用该功能,白帽们可以:
1、利用其嵌入式提交脚本,提供个人邮箱后,不用创建HackerOne账号就可上报提交漏洞,之后HackerOne会向这个邮箱反馈具体的漏洞处理进程;
2、另外,如果不提供个人邮箱,就会被视为匿名漏洞提交,这种提交方式下,白帽们就不会获得任何上报积分和赏金。匿名上报是该功能的一个选项。
大家可以点此处官方说明查看Embedded Submission Form功能的具体使用方法。
围绕该功能,我有了以下授权不当(Improper Authorization)的漏洞发现:
1、在上报提交某个厂商测试项目的漏洞时,可以利用“嵌入式漏洞报告样式”(Embedded Submission Form)功能,在不开启匿名上报时,绕过HackerOne对漏洞提交时的双因素认证(2FA)条件限制,当然了绕过这个2FA限制,这个提交漏洞还是计为你的上报漏洞。具体的2FA设置可点此查看;
2、可以绕过厂商漏洞测试项目的上报者黑名单限制。这里的上报者黑名单,也就是说,如果某名白帽总是上报一些无关漏洞,或存在超出测试范围或违反测试方法的行为,那么测试厂商可以把这名白帽拉到黑名单中,就不会再收到该名白帽的上报漏洞了。这个上报者黑名单功能可点此查看。
漏洞分析
绕过HackerOne对对漏洞提交时的双因素认证(2FA)
通常,漏洞测试厂商在白帽们提交漏洞之前,可以强制漏洞提交者实行一个双因素认证(2FA)校验,URL样式大概如此:
https://hackerone.com/
/submission_requirements
具体设置如下:
像漏洞测试厂商Parrot Sec的测试项目,在该功能下,就要求漏洞提交者在提交漏洞之前,执行一个双因素认证(2FA)校验步骤,即使我尝试者在我自己的账户中禁用漏洞提交的2FA校验操作,但是,最终也还是不行,这样的话我会被Parrot Sec阻拦掉不能提交漏洞了,所以,必须得启用2FA校验操作。
现在,我们利用“嵌入式漏洞报告样式”(Embedded Submission Form)功能,来尝试看看是否能绕过这个漏洞提交的2FA校验机制:
1、登录你自己的HackerOne账户,去掉你账户中的2FA校验功能设置;
2、来到漏洞测试厂商Parrot Sec的赏金项目下https://hackerone.com/parrot_sec,点击提交漏洞(Submit Report),此时,因为你自己没启用2FA校验功能,所以是不能提交漏洞的,只有启用2FA校验功能才能顺利提交漏洞;
3、从Parrot Sec厂商的漏洞测试策略中,找到Embedded Submission Form相关的漏洞提交链接,其漏洞提交链接形如:https://hackerone.com/
/embedded_submissions/new,其中的redacted_UUID为一串类似0a1e1f11-257e-4b46-b949-c7151212ffbb的串号数字。 4、在你的HackerOne账户登录状态下,利用上述的Embedded Submission Form功能提交漏洞,然后就能不需要测试项目强制的2FA校验要求了。后经测试,这种方式的漏洞提交,还能绕过测试项目中设置的漏洞提交频率(Report Rate Limit)和内部功能滥用限制( Internal Abuse Limit)。
漏洞造成的影响:
白帽子们可以绕过漏洞测试项目中的2FA校验、漏洞提交频率和其它内部功能滥用限制,这种不当的授权操作,对厂商的漏洞处理形成干扰,也破坏了HackerOne平台的严谨安全性。HackerOne安全团队基于此发现的第二个漏洞比较严重,如果另一名白帽在此时正在编写漏洞提交报告,那么攻击者可以访问到其漏洞报告中的附件内容。
绕过漏洞测试项目的上报者黑名单限制
如果某名黑客的提交行为与测试项目中的策略不一致,或超出测试范围,或违反测试方法,测试厂商可以把该名白帽拉入黑名单,禁止接收到其提交漏洞,当然还能在公开(Public)或私密(Private)项目中限制该名白帽。更多说明点此查看。具体设置如下:
于是,我想到了我的朋友 Ace Candelario ,他是Parrot Sec公司的公司代表,也是Parrot Sec公司在HackerOne平台的漏洞确认分类人。因此,我请求他在Parrot Sec测试项目后台把我的HackerOne账户拉入黑名单,禁止我提交漏洞。之后,我点击提交漏洞就会出现以下错误页面:
好吧,我已经成为了Parrot Sec漏洞测试项目的黑名单人员了。但是,当我用前述绕过2FA的方法步骤来尝试时,我还是可以继续向Parrot Sec提交漏洞!
漏洞影响:
一些恶意的白帽子们,在被拉入黑名单之后,还能以此继续向测试厂商提交漏洞,对厂商的漏洞处理形成干扰,也破坏了HackerOne平台的严谨安全性。
漏洞原因
经HackerOne安全团队评估,以上两个漏洞的触发原因相同,都是由于在利用Embedded Submission Form功能编写漏洞报告时,其中的调试请求 uuid/embedded_submissions 中启用了不安全的检验方法 interact_without_authorization,这种情况下,后端的访问控制列表机制(ACL)就会被绕过。
看完上述内容,你们对如何分析HackerOne的双因素认证和上报者黑名单绕过漏洞有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。
网页题目:如何分析HackerOne的双因素认证和上报者黑名单绕过漏洞
文章起源:http://azwzsj.com/article/ihhjeo.html