很多漏洞赏金计划都提供了明确定义的范围,其中包括允许安全研究人员测试的多个领域。
本文中方法的关键步骤就是设置一个域监控脚本(以红牛为例),用于跟踪赏金范围内的任何更改。
我们可以要求 ChatGPT 创建一个监控脚本,从而确保我们可以有效地跟踪范围的任何更新或修改。
脚本如下:
import requests
import time
API_TOKEN = 'Your_Telegram_Bot_API_Token'
CHAT_ID = 'Your_Telegram_Chat_ID'
GIST_URL = 'https://gist.githubusercontent.com/RedBullSecurity/3eb88debcb01759eccf65ec2b799b340/raw/redbull-bug-bounty-scope-rb-only.txt'
previous_urls = []
def send_telegram_message(message):
url = f'https://api.telegram.org/bot{API_TOKEN}/sendMessage'
data = {'chat_id': CHAT_ID, 'text': message}
requests.post(url, data=data)
while True:
response = requests.get(GIST_URL)
current_content = response.text
current_urls = current_content.splitlines()
new_urls = [url for url in current_urls if url not in previous_urls]
deleted_urls = [url for url in previous_urls if url not in current_urls]
if new_urls:
new_message = "New URLs added:\n" + "\n".join(new_urls)
send_telegram_message(new_message)
previous_urls = current_urls
if deleted_urls:
deleted_message = "URLs deleted:\n" + "\n".join(deleted_urls)
send_telegram_message(deleted_message)
previous_urls = current_urls
time.sleep(60) # Check every 1 minute
该脚本可以在 VPS 上实时运行,一旦范围发生变化,就会通过 Telegram 发送通知。
因为目标经常更新其漏洞范围,错过这些更新就意味着可能错过漏洞。
成功收到TG消息:
通过深入研究这个新的子域,很快便发现了与该域关联的 Amazon S3 存储桶配置错误。
一旦发现 S3 存储桶配置错误问题,我们就可以遵循以下规则尝试挖掘存储桶接管漏洞:
- 枚举 S3 存储桶:使用awscli等工具,枚举与存储桶相关联的权限
- 漏洞测试:一旦发现该存储桶允许公共写入访问,就意味着可以上传任意文件
- 确认接管:通过上传一个简单的 HTML 文件并公开访问它,从而确认接管
最后就是报告漏洞,等待奖励。
你学会了么?
以上内容由骨哥翻译并整理。