随着网络安全意识的普及,越来越多的安全爱好者想要通过公益漏洞挖掘的方式,为企业和机构的网络安全添砖加瓦,同时也能积累实战经验,提升自己的技术能力。
但很多新手刚入门时,常常会陷入迷茫:不知道选什么平台、不知道从哪下手、怕一不小心违规违法...... 好不容易挖到漏洞,又因为报告写得不好被打回,白白浪费了时间。
这篇文章,我将把公益 SRC 漏洞挖掘的全流程拆解开来,从平台选择、前期准备,到漏洞挖掘、报告撰写,再到合规操作,给你一份能直接上手的完整指南,帮你避开坑,合法高效地开启你的白帽之路。
一、选对平台,新手入门第一步
很多新手刚入门的第一个问题就是:我该去哪个平台挖洞?市面上的 SRC 平台这么多,选不对的话,要么门槛太高进不去,要么审核太慢打击积极性。
这里我整理了目前主流的公益 SRC 平台的对比,帮你快速找到适合自己的:
| 平台名称 | 特点 | 适用人群 |
|---|---|---|
| 漏洞盒子 | 门槛低、资产丰富、新手教程完善 | 新手、SRC 入门者 |
| 补天漏洞响应平台 | 审核快(1-3 工作日)、目标多为知名平台、奖励完善 | 有基础者、追求高效审核 |
| CNNVD 信息安全漏洞库 | 国家权威、奖励丰厚(证书 / 培训)、门槛高(高危 / 新型漏洞) | 技术水平高者 |
| 教育漏洞提交平台 | 专注 edu 域名及教育系统、可获机构感谢信 | 关注教育行业安全者 |
| 360 漏洞响应平台(公益) | 工具支持多、技术文档全、评级标准清晰 | 依赖工具辅助挖掘者 |
选择建议
-
新手优先选漏洞盒子,门槛低,教程全,能快速积累经验;
-
如果你关注特定领域,比如教育行业安全,直接选对应的垂直平台即可;
-
追求快速审核选补天,想要国家权威的荣誉证书,可以尝试挑战 CNNVD。
二、开工前的准备:磨刀不误砍柴工
选好平台之后,不要急着上手挖洞,先做好准备工作,准备做足了,后面的挖掘才能事半功倍。
2.1 目标资产信息收集
挖洞的第一步,是先摸清你的目标,知道目标有什么资产,有什么功能,才能针对性地挖掘。常用的收集方法有这些:
-
搜索引擎 :用谷歌、百度的语法快速定位目标,比如
inurl:php?id= site:edu.cn找教育站的注入点,intitle:后台管理 site:com.cn找后台入口; -
资产测绘 :用 Fofa、ZoomEye 这类工具批量梳理目标资产,比如
country="CN" && server=="Apache" && title="登录"就能快速找到国内的 Apache 登录页面; -
域名查询:用 Whois 查归属信息,用 Layer 子域名挖掘机枚举子域名,很多漏洞都藏在二级、三级子域名里。
收集的时候,重点要拿到这些信息:
-
基础信息:域名 / IP / 端口、中间件 / 框架及版本、功能模块(登录 / 上传 / 查询这些);
-
背景信息:备案信息、归属机构,还有目标的公开漏洞历史,去 CNNVD/NVD 查一下,避免做无用功。
2.2 挖掘工具准备
工欲善其事,必先利其器,合适的工具能帮你提升效率,但也要注意工具的使用规范,不要乱用来路不明的工具,也不要违规使用。
| 工具类型 | 代表工具 | 用途 | 注意事项 |
|---|---|---|---|
| 抓包分析 | Burp Suite、Fiddler | 抓包、改参数、分析请求 | 仅对授权资产使用 |
| 漏洞检测 | Sqlmap、Xray、Nessus | SQL 注入检测、多漏洞扫描、全面评估 | 能手注优先手注,避免工具误操作 |
| 脚本 / 审计 | Python 脚本、CodeQL | 自定义扫描、源代码静态分析 | 脚本需测试稳定性,避免攻击行为 |
| 辅助工具 | 字典、IP138、Snipaste | 弱口令爆破、IP 查询、截图取证 | 爆破频率适中,避免给服务器造成压力 |
新手小贴士:不要刚入门就拿着扫描器批量扫大量资产,很容易把服务器扫挂,还违反平台规则,先从小的目标,手动测几个模块,积累经验再说。
2.3 挖掘环境搭建
最后,搭好你的挖掘环境,保证安全和稳定:
-
系统:优先选 Kali Linux,大部分挖洞工具都预装好了,Windows 的话需要自己配置 Java/Python 环境;
-
网络:用独立的网络,不要用公共 WiFi,避免网络波动影响测试;
-
隔离:建议用 VMware 虚拟机,把挖掘环境和你的主机隔离开,防止恶意程序感染;
-
防护:开启防火墙和杀毒软件,避免下载工具的时候不小心中招。
三、实战挖掘:常见漏洞的挖掘思路
准备工作做好了,接下来就是最核心的漏洞挖掘环节了。很多新手不知道从哪下手,其实常见的漏洞就那么几类,掌握了它们的挖掘思路,就能覆盖大部分场景。
3.1 常见漏洞怎么挖?
1. SQL 注入
这是最经典的漏洞之一,原理就是用户的输入没有被过滤,恶意的 SQL 代码被注入到数据库里执行。
-
挖掘方法 :在参数后面加个单引号
id=1',或者加判断语句id=1 and 1=0,看看页面会不会报错,也可以用 Sqlmap 辅助检测,命令很简单:sqlmap -u "URL?id=1"。 -
危害:如果能拿到全部数据就是高危,只能拿到少量非敏感数据是中危,只有报错没数据就是低危。
2. XSS(跨站脚本)
输入没有转义,恶意的 JS 代码在用户的浏览器里执行,比如偷 Cookie、钓鱼。
-
挖掘方法 :在留言板、搜索框这些输入的地方,输入
alert('XSS'),看看能不能弹框,还要区分是存储型(存在数据库里,所有人访问都能触发)、反射型(只有你自己的链接能触发)还是 DOM 型(改前端 DOM 结构触发)。 -
危害:存储型一般是高危,反射型和 DOM 型大多是中低危。
3. CSRF(跨站请求伪造)
利用用户的登录态,伪造请求,让用户在不知情的情况下执行操作,比如改密码、转账。
-
挖掘方法:抓包改密码、转账这些关键操作的请求,看看有没有 CSRF Token 或者 Referer 验证,如果没有的话,就可以构造伪造的请求测试。
-
危害:如果能执行改密码这种高危操作就是高危,改头像这种低危操作就是中低危。
4. 越权访问
权限校验缺失,低权限的用户能访问高权限的资源,这是现在很常见的逻辑漏洞。
-
挖掘方法:水平越权就是改用户 ID,看看能不能看别人的数据;垂直越权就是用低权限的账号,试试能不能访问 admin 的页面。
-
危害:不管是垂直提权还是水平泄露敏感数据,基本都是高危,如果只是泄露公开信息就是中低危。
5. 文件上传
文件验证太宽松,恶意文件上传到服务器,然后执行,直接拿服务器权限。
-
挖掘方法 :先传
test.php,如果前端拦截,就试试test.php.jpg,测后缀验证、内容验证、MIME 验证,看看服务器能不能解析执行。 -
危害:如果能执行脚本就是高危,只是路径遍历是中危,只能传非执行文件就是低危。
6. 敏感信息泄露
敏感信息没有保护,通过页面、响应头、文件泄露出来。
-
挖掘方法 :看看页面源码里有没有默认账号,响应头里有没有泄露 Server 版本,扫一下有没有
/backup.zip这种备份文件,分析 API 接口有没有泄露数据。 -
危害:泄露账号密码、数据库信息就是高危,只是泄露版本信息就是中低危。
3.2 挖掘的小技巧
除了单个漏洞的挖掘,还有一些通用的策略,能帮你更快挖到漏洞:
-
功能切入:优先测登录、上传、支付、用户中心这些高风险模块,这些地方出漏洞的概率最高;
-
资产结合:根据目标的中间件、框架版本,测已知的漏洞,比如 ThinkPHP 5.0.23 的远程代码执行,很多老站都还没修;
-
手工具结合:先用工具初扫,找到可能的点,再手动深入测试,尤其是逻辑漏洞,工具是扫不出来的,必须手动测;
-
关注逻辑:多想想业务逻辑有没有问题,比如登录绕过、验证码绕过、支付金额篡改,这些都是很常见的逻辑漏洞。
四、挖到漏洞后:写一份让审核员秒过的报告
好不容易挖到了漏洞,结果因为报告写得太差,被审核员打回,这是很多新手都遇到过的问题。一份好的漏洞报告,要让审核员一眼就能看懂,不用猜就能复现,这样才能快速通过审核。
4.1 先做漏洞验证
在写报告之前,先自己验证一下,确保这个漏洞是真的:
-
真实性:重复测试步骤,排除网络、缓存的干扰,确认不是环境问题;
-
危害性:分析影响范围,比如能泄露多少数据,能拿到什么权限,还要确认这个漏洞还没被公开修复;
-
影响控制:绝对不要做破坏性操作,不要删数据、不要植木马,也不要窃取敏感数据,点到为止就好。
4.2 报告的核心结构
一份标准的漏洞报告,只要包含这三部分就够了,清晰明了:
1. 基本信息
-
标题:要清晰,比如
【高危】XX平台SQL注入漏洞,一眼就能看到等级和漏洞类型; -
基础信息:提交人、联系方式、目标 URL/IP、提交时间、漏洞等级。
2. 漏洞详情
-
原理:简单说一下漏洞的原理,不用太复杂,让审核员快速明白;
-
复现步骤:一定要清晰可操作,一步一步写,比如 "1. 访问 XX URL;2. 把参数改成 xxx;3. 就能看到 xxx 结果",不要跳步;
-
复现证据:一定要带截图,截图里要包含 URL、操作、结果,最好带时间戳,证明是你刚测的。
3. 影响与建议
-
影响:说清楚这个漏洞会造成什么后果,比如 "能泄露 10 万用户的手机号和身份证信息";
-
修复建议:给企业明确的修复方案,比如 SQL 注入就建议用参数化查询,文件上传就建议校验文件头,不要只说 "修复漏洞"。
五、提交与跟进:让漏洞真正落地修复
报告写好之后,就可以提交了,不过提交之后不是就完事了,还要跟进漏洞的处理进度,确保它真的被修复。
5.1 漏洞提交
-
渠道:去平台的 "漏洞提交" 板块,或者按平台要求用邮件、在线表单提交;
-
填写:严格按平台的字段规范填写,确保信息完整,不要缺截图、不要缺步骤;
-
检查:最后检查一下,目标是不是公益授权的资产,信息是不是真实的,有没有违规的内容。
5.2 后续跟进
-
进度跟踪:去个人中心看审核状态,待审核、已确认、已修复,要是超期了就咨询客服;
-
配合验证:如果审核员需要你补充信息,及时提供,比如补充复现视频,帮他快速确认漏洞;
-
修复确认:企业修复之后,你要重新测试一下,确认漏洞真的修好了,然后反馈给平台;
-
奖励领取:审核通过之后,就可以按平台的要求领奖励了,荣誉证书、积分、礼品都可以。
六、踩坑不用慌:常见问题的解决方案
挖洞的过程中,难免会遇到各种问题,比如漏洞复现不了,审核被拒,工具用不了,别慌,这些都是新手常遇到的,这里给你整理了解决方案。
6.1 漏洞复现失败
-
原因:环境差异、步骤遗漏、服务器临时配置变了;
-
解决:还原你当时的环境,设备、浏览器、网络都尽量一样,补全前置操作,抓包对比一下请求的差异,换个时段再测试试试。
6.2 审核被拒
-
原因:信息不全、漏洞重复 / 已经修复了、等级判错了、操作违规了;
-
解决:补全材料,截图、步骤都补上,去漏洞库查一下这个漏洞是不是已经有人提交过了,按平台的标准重新评等级,整改违规的操作。
6.3 工具异常
-
Sqlmap 检测失败 :加
--tamper绕 WAF,用-r导入 POST 包,加--threads=1降线程,避免被拦截; -
Burp 抓不到 HTTPS:装一下 Burp 的信任证书,关掉浏览器的 HTTPS 严格模式,开启 HTTP/2 支持;
-
Xray 扫不到目标:检查一下 URL 对不对,用平台允许的 IP 代理,降低并发数,避免被 WAF 封了。
七、两个真实案例,看完就懂怎么操作
光说理论可能有点抽象,这里给大家分享两个真实的公益挖洞案例,看完你就知道整个流程是怎么跑通的了。
案例 1:某教育平台水平越权
-
背景 :我当时在找教育站的漏洞,用 Fofa 搜了
site:edu.cn intext:成绩查询,找到了一个成绩查询系统; -
过程 :登录之后,发现 URL 是
http://xxx.edu.cn/score?studentId=10086,我试着把 ID 改成了 10087,结果直接看到了另一个学生的成绩,还有家长的手机号; -
报告:我把两个 ID 的 URL 对比,还有成绩的截图都附上去了,建议后端加 ID 的一致性校验,确保用户只能查自己的成绩;
-
结果:2 个工作日就审核通过了,1 周之后企业就修复了,我还拿到了教育局的感谢信,还有平台的荣誉证书。
案例 2:某公益电商文件上传
-
背景 :当时在测一个助农的公益电商,用 Dirsearch 扫目录,扫到了一个
/upload目录; -
过程 :我先传了
test.php,结果前端拦截了,然后我改了后缀,传了test.php.jpg,居然上传成功了,而且 Apache 能解析成 php 执行; -
报告:我把上传的截图、解析执行的截图都附上去了,建议企业校验文件头,禁止多后缀解析,把上传目录放到非 Web 目录;
-
结果:1 个工作日就审核通过了,3 天就修复了,我拿到了 100 积分,换了一本安全技术书。
八、红线不能碰:合规是所有操作的底线
最后,也是最重要的一点:合规!这是所有白帽黑客的底线,绝对不能碰红线,不然不仅做不了公益,还会触犯法律,得不偿失。
8.1 法律底线
这些事绝对不能做,碰了就是违法:
-
禁止未授权测试,这违反了《网络安全法》第 27 条,只测平台授权的资产;
-
禁止数据窃取,违反《数据安全法》第 21 条,就算你拿到了数据,也不能偷,不能泄露;
-
禁止破坏性操作,违反《刑法》第 286 条,不要删数据、不要挂马、不要把人家服务器搞挂。
8.2 平台规则
每个平台都有自己的规则,一定要遵守:
-
提交的时候,填真实的资产归属,证据要真实可追溯,带 URL 和时间;
-
测试的时候,弱口令爆破每个账号最多 5 次,不要批量扫 100 + 的子域名,避免给服务器造成压力;
-
保密,没修复的漏洞不要公开,也不要泄露平台的内部意见。
8.3 应急处理
如果不小心误操作了,不要慌,及时处理:
-
误传了恶意文件,马上联系企业删除,然后提交说明;
-
不小心拿到了数据,马上删掉,附上删除的日志,不要留着;
-
如果对审核有异议,就申诉补证明,要是发现了重大漏洞,走平台的紧急通道反馈。
九、总结:从新手到高手的成长路径
整个公益漏洞挖掘的流程,其实就是这五步:平台选择→前期准备→挖掘实施→验证报告→提交跟进,每一步都要守住合规的底线,才能真正做好公益挖洞,帮企业提升安全,也提升自己的能力。
如果你想继续提升自己,还可以这么做:
-
技术提升:学代码审计,比如 CodeQL,研究新型漏洞,比如 Log4j2 这种,多关注 CVE 库,跟上最新的漏洞趋势;
-
经验积累:建自己的漏洞笔记,把每次挖洞的思路、难点、解决方案都记下来,多参加公益比赛,比如漏洞盒子的教育赛;
-
职业发展:把你的挖洞成果,报告、证书,用来求职,还可以考 CNNVD 的漏洞分析师认证,为你的职业发展铺路。
公益漏洞挖掘,是一件很有意义的事,你用自己的技术,帮企业补上安全漏洞,保护用户的数据,同时也能提升自己的能力。如果你也想加入,不妨从这篇指南开始,开启你的白帽之路吧。