本文作者:Shreyas Chavhan
原文地址:https://shreyaschavhan.notion.site/Roadmap-I-followed-to-make-15-000-Bounties-in-my-first-8-months-of-starting-out-and-my-journey-98b1b9ff621645c0b97d1e774992f300
今天要讲的是我从零漏洞赏金经验,历时八个月,通过漏洞赏金平台,获得 15000+$ 的故事,每个人都是从零经验开始的,虽然是零经验,但是我也具备相当扎实的技术背景。起初报告的漏洞也都比较基础,比如邮件注入、无速率限制、会话固定等问题。
技术背景
2019-2022:这个阶段,探索了很多技术领域,比如前后端开发、UI/UX 开发等,可以使用 C++、Python 编写一些基础的东西。
2022-2023:决定深入网络安全领域并作为职业,然后开始学习网络安全相关技术,包括 OSCP、OSWE 等证书所需技术,这个过程中还学到很多基础知识,比如 Linux 基础、Bash 脚本、正则表达式、高级 SQL 注入、Powershell、Python、Php、Java 等。
关于上面的学习参考都来自于 Github,以下是我总结的一些不错的项目:
OSCP:
https://github.com/shreyaschavhan/oscp-pre-preparation-plan-and-notes
OSWE:
https://github.com/shreyaschavhan/oswe-awae-pre-preperation-plan-and-notes
其他资料:
正则:https://github.com/shreyaschavhan/regex-notes
SQL 注入:https://github.com/shreyaschavhan/sql-cheatsheet
Powershell:https://github.com/shreyaschavhan/powershell-notes
Python:https://github.com/shreyaschavhan/python-for-awae
2023-2024:这个阶段是大学的最后一年,这个过程中大部分时间用在了看电影、阅读、准备考试、写作业等方面,做的事儿比较杂,从 2023 年 7 月份开始进行漏洞赏金活动。
漏洞赏金时间投入与成果统计
月份 | 投入时间 | 工作天数 | 获得赏金 (USD) | 报告数量 | 项目数 |
---|---|---|---|---|---|
2023年7月 | 99 hr 42 min | 21 | 50 | 6 | 3 |
2023年8月 | 65 hr 15 min | 16 | 50 | 9 | 4 |
2023年9月 | 93 hr 33 min | 23 | 400 | 17 | 9 |
2023年10月 | 59 hr 21 min | 17 | 0 | 8 | 4 |
2023年11月 | 48 hr 24 min | 13 | 750 | 8 | 3 |
2023年12月 | 47 hr 56 min | 18 | 0 | 10 | 7 |
2024年1月 | 106 hr 36 min | 21 | 100 | 23 | 22 |
2024年2月 | 59 hr 33 min | 15 | 0 | 10 | 2 |
2024年3月 | 54 hr 52 min | 12 | 14250 | 9 | |
合计 | 636 hrs | - | 15600$ | 100 | 56 |
学习路线
有很多初学者对我的学习路线感兴趣,想知道我是如何学习进步的,如何能达到如今的成就,下面就来分享我的学习之路。
1、掌握 Linux 基础(可选)
学习 Linux 基础命令和 Bash 脚本可以帮助我们更好的安装和使用安全相关的工具和脚本,提高我们在漏洞赏金中的实战效率。
关于 Linux 基础学习参考:
https://github.com/shreyaschavhan/linux-commands-cheatsheet
学习完基础之后,可以使用在线 CMD 挑战平台,验证所学:
https://cmdchallenge.com/
关于 Bash 脚本学习参考:
https://github.com/shreyaschavhan/bash-scripting-cheatsheet/
为了更方便学习,可以使用在线学习平台:
https://www.learnshell.org/
2、学习 Web Application Hackers Handbook 书籍
其中的一些内容虽然已经过时,但是大多数内容还有效,关于此书的学习笔记 Github 有不少分享,比如:
https://github.com/Sivnerof/The-Web-Application-Hackers-Handbook
学习之余,可以前往 portswigger 进行实战练习:
https://portswigger.net/web-security
3、发现第一个 Bug
从学习到实践需要一个过程,对于初学者而言,选择简单易得的目标,更容易出成果,比如我先以 IDOR 作为切入点,找关于 IDOR 相关的资料学习,然后去实践,因为 IDOR 这类漏洞比较容易找到。
不安全的直接对象引用 (IDOR) 是一种访问控制漏洞,当应用程序使用用户提供的输入直接访问对象时会出现这种漏洞。IDOR 一词因出现在 OWASP 2007 Top 10 中而广为人知。然而,这只是可能导致绕过访问控制的许多访问控制实施错误的其中一个。IDOR 漏洞最常与水平权限提升相关,但也可能与垂直权限提升相关。案例如图:
4、时间规划,60% 时间用于实践,40% 的时间用于学习
合理分配自己的学习和实战的时间,学习结合实战,不断重复这个过程(选择漏洞类型-》学习漏洞原理及测试方法-〉实战),直到将所有漏洞类型都学完并应用在实战中,比如:xss、sql注入、csrf、ssrf、jsonp、rce、lfi、信息泄漏、越权、条件竞争、子域接管、备份泄漏、参数污染、反序列化等。
当然不仅仅是 web 漏洞,还可以扩展到 API、移动 APP 等方面,比如参考:OWASP Top 10 2021、OWASP Top 10 API Security Risks、OWASP Mobile Top 10 等
5、保持心态,坚持不懈
在从事漏洞赏金的过程中,会遇到各种各样的问题,比如提交的漏洞重复、危害不足忽略、内部已知等情况。这个时候要保持良好的心态,积极与审核或者运营沟通,适当争取。
当然,你可以选择口碑和风评比较好的 SRC 进行漏洞挖掘,这样可以多少避免一些不公的事儿发生,给我们增加不必要的烦恼。
实战的过程中,你可能有很长时间没有成果,但是也不要气馁,不断寻找自己的不足,学习他人的经验,直到发现问题未知。
6、专注和大量输入
切记贪多,想要在漏洞赏金这个领域有所成就,不能大而全,而是要小而精,只有深度上超越他人,才有可能发现他人无法发现的问题,否则大概率是重复,简单容易发现的问题,你一定不是最先的那个,就算是,那也是运气问题。
H1 的报告是公开的,如果你要去做这个事儿,至少要阅读 1000 份报告,而我读了 5000 份以上,随着技术的积累,你应用在学习和挖洞实战上的时间可以适当调整。
总结
本文是国外的一个小伙伴分享的关于自己 8 个月的漏洞赏金经验,我对其进行了学习并加以总结,其中有不少有价值的内容值得初学者参考,其中涉及的那本英文版书籍,后台回复关键词 "赏金" 获取下载地址。