记一次登录框0-1渗透突破
字数 1806 2025-11-13 12:09:13
登录框渗透突破实战教学文档
1. 信息收集与前期分析
1.1 技术栈识别
- 通过域名中的"#"符号和Wappalyzer插件识别出Vue.js前端框架
- 检测到Webpack打包器特征
- 前后端分离架构:前端展示域名(a.com)与后端服务域名(api-xxxxxx.com)分离
1.2 渗透思路规划
主线任务:进入管理员后台
支线任务:信息泄露或其他危害性漏洞
主要渗透方向:
- 常规接口未授权访问测试
- 路径拼接探测未授权页面
- 收集全量chunk异步JS文件通过正则提取接口
2. 登录框基础测试
2.1 用户名枚举
- 发现系统存在用户名枚举漏洞
- 确认admin用户存在但可能非实际使用账号
- 常见情况:系统可能使用其他账号作为管理员
2.2 密码爆破策略
- 使用TOP3000密码字典进行爆破
- 考虑admin用户可能仅为默认账号,实际使用其他管理员账号
- 弱口令测试作为基础手段持续进行
2.3 特殊 payload 测试
- 单双引号测试:观察回显差异
- 万能密码测试:常规登录绕过尝试
- 结果:均无效,转入接口测试阶段
3. 接口测试与未授权探测
3.1 接口识别与定位
- 使用雪瞳接口捕获工具获取完整接口路径
- 确认接口应放置于后端服务域名(b.com)进行测试
- 注意前后端分离架构下的接口调用路径
3.2 GET请求测试
- 直接拼接接口路径进行未授权访问测试
- 观察响应码和回显信息
- 500错误且提示"请先登录"表明接口路径正确但存在鉴权
3.3 POST请求测试
- 测试JSON格式的POST请求
- Content-Type: application/json
- 同样受到500鉴权拦截
- 对服务域名接口进行简单Fuzz无果
4. Vue路由页面测试
4.1 哈希路由探测
- 使用VueCrack插件主动拼接路由页面
- 逐个访问路由页面并监控Burp Suite流量
- 记录所有触发的接口调用
4.2 功能点测试
/userAccount:测试搜索功能注入漏洞- 排序功能处测试order by注入
- 注册功能发现:
/#/register可正常调用 - 成功注册获得低权限JWT令牌
4.3 JWT利用
- 携带获得的JWT测试接口未授权
- 即使账号未被系统完全认可,JWT仍可能具有部分权限
- 测试GET/POST请求的差异响应
5. 接口深度测试与信息泄露
5.1 基础接口测试
- GET
/student/export:返回学生敏感信息 - 参数替换测试:
/teacher/export获取教职工信息 - 表格中包含工号等敏感信息
5.2 分页参数利用
- 发现接口使用
pageNum和pageSize分页参数 - 在已有接口基础上添加分页参数:
/plan/task/manager/list/export?pageNum=1&pageSize=99
- 泄露3000+学生二要素信息
/online/card/manage/list:获取校园列表信息
5.3 用户名枚举确认
- 系统账号大概率使用手机号
- 使用泄露的手机号进行密码喷洒攻击
- 反馈"密码不正确"确认用户名枚举漏洞
6. 相对路径接口发现
6.1 接口提取方法
- 插件匹配接口不完整问题
- 完整方法:提取所有加载和未加载的异步JS
- 使用正则表达式批量提取接口
6.2 相对路径接口识别
- 发现
/role/register接口未被插件识别 - 原因为前置缺少
/,被识别为相对路径 - 全局搜索发现完整接口路径
6.3 相对路径接口测试
- 在相对路径前添加
/转换为绝对路径 - 携带JWT和分页参数进行测试:
GET /**xxxxxxx**?pageNum=1&pageSize=99
- 获取大量内部资源信息泄露
7. 突破与权限提升
7.1 信息组合利用
- 分析泄露的人员信息列表
- 发现医学生课题研究等敏感数据
- 找到管理员账号特征
7.2 最终突破
- 发现管理员账号:m01
- 弱口令测试成功:abc123
- 顺利进入管理员后台
8. 技术要点总结
8.1 关键成功因素
- 细致的信息收集和技术栈识别
- 前后端分离架构的正确理解
- 分页参数的巧妙利用
- 相对路径接口的发现和转换
- 持续的信息泄露挖掘
8.2 渗透方法论
- 多层测试:从基础登录测试到深度接口探测
- 流量分析:持续监控Burp Suite记录
- 参数变异:已知参数的不同组合测试
- 权限提升:从低权限JWT到管理员权限的渐进
8.3 防御建议
- 统一接口鉴权机制
- 分页接口的数据权限控制
- 敏感信息脱敏处理
- 强密码策略实施
- 接口路径规范化管理
本教学文档详细记录了从信息收集到最终突破的完整过程,强调了细心和连贯的测试思路在渗透测试中的重要性。