揭秘Bugcrowd平台排名操纵漏洞:API滥用与安全风险

本文详细介绍了作者如何通过Bugcrowd API创建虚假提交并获取演示积分,从而操纵平台排名。包含技术细节、漏洞影响分析及修复过程,揭示了众测平台安全机制中的潜在风险。

如何操纵我在Bugcrowd平台上的排名

近年来,随着越来越多的公司依赖众包平台来发现其系统中的漏洞,漏洞赏金计划(Bug Bounty)变得越来越受欢迎。因此,这些平台的安全性也变得至关重要。去年,我发现了一种可以操纵Bugcrowd平台排名的方法,在本文中,我将分享我是如何做到的,以及可能带来的影响。

背景介绍

在测试Bugcrowd平台时,我发现可以通过使用Bugcrowd API导入大量报告并为自己奖励积分来操纵我的排名。尽管这些是演示积分,不会在我的主资料公开页面上显示,但它们会显示在我的提交页面的积分总计中,并且这些演示积分被包含在平台的排名算法中。通过利用这一点,尽管我只有3205分,但我却排名平台第10位。而原本排名第11位的用户拥有13789分。

漏洞的技术细节

基本上,要实现这一点,你需要在Bugcrowd上创建两个账户:一个研究员账户和一个公司账户。从你的跟踪账户创建一个演示程序并获取API凭据。之后,你需要根据Bugcrowd的官方文档构建一个API请求,为你的研究员账户创建一个可认领的提交。以下是代码示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import requests

headers = {
    'accept': 'application/vnd.bugcrowd+json',
    'authorization': 'Token <ADD-YOUR-API-TOKEN>',
    'content-type': 'application/json',
}

data = '{"submission":{"source":"platform","title":"Security Breached","submitted_at":"2022-06-07T00:00:00.181Z","substate":"resolved","vrt_id":"server_side_injection.remote_code_execution_rce","priority":"1","researcher_email":"muhammadkhizerjaved@bugcrowdninja.com"}}'

response = requests.post('https://api.bugcrowd.com/bounties/<YOUR-BOUNTY-UUID>/submissions', headers=headers, data=data)

print((response.text))

一旦请求成功,你将收到一封包含可认领链接的电子邮件,认领此提交后,你将获得演示积分,这些积分会显示在提交页面的侧边栏中。

排名变化的影响

当我收集到足够的演示积分后,我可以看到排名的变化。例如,Bugcrowd上的@MorningStar原本排名第10,但当我将我的排名推到他之上时,他被推到了第11位。

漏洞的影响

此漏洞对Bugcrowd及其关联方的业务方面产生了影响,因为排名是平台对其他用户和企业信任的一部分。这个问题可能导致声誉损害、客户信任丧失以及财务损失。

漏洞报告与修复

我将此问题报告给了Bugcrowd,他们迅速修复了它。我赞赏他们的快速响应以及对安全的重视。这次经历让我认识到负责任披露的重要性以及漏洞赏金计划在确保数字世界安全中的作用。

结论

随着漏洞赏金计划的日益普及,保持警惕并识别可能被利用的潜在漏洞非常重要。我鼓励研究人员和公司认真对待安全,并共同努力使互联网变得更加安全。

感谢阅读!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计