记一次对母校的漏洞挖掘经历
字数 1467 2025-12-19 12:04:22
校园APP安全漏洞挖掘实战教学
1. 敏感信息泄露漏洞
漏洞描述
通过遍历用户ID参数,可获取全校师生敏感信息,包括学号、专业、宿舍、人脸信息等。
漏洞复现步骤
- 抓包定位关键接口:在APP首页刷新时拦截数据包
- 识别用户ID参数:找到包含
userId参数的请求 - 参数遍历测试:通过修改
userId值(1-15000范围)- 1-14590:学生账号
- 14590-15000:教师账号
- 数据验证:确认可获取约19000条敏感信息记录
技术要点
- 使用Burp Suite等工具进行数据包拦截
- 实施参数模糊测试(fuzzing)
- 验证数据泄露范围和影响程度
2. 水平越权漏洞
漏洞描述
通过修改用户ID参数,可越权查看其他用户的个人信息。
漏洞复现步骤
- 登录普通账号A,在首页刷新拦截数据包
- 修改数据包中的
userId参数为其他用户ID - 放行数据包,观察界面变化
- 验证权限:点击功能点查看他人信息
- 通行记录
- 人脸信息
- 宿舍号、班级、姓名等敏感信息
技术要点
- 认证绕过技术
- 会话管理漏洞利用
- 权限验证缺失检测
3. 垂直越权漏洞
漏洞描述
普通用户可通过参数篡改获取管理员权限。
漏洞复现步骤
- 获取管理员账号特征:通过水平越权收集管理员信息
- 修改关键参数:
- 在数据包中修改
persontype参数 - 使用管理员特征信息
- 在数据包中修改
- 权限提升验证:访问管理员专属功能(考勤改签接口)
技术要点
- 权限提升漏洞利用
- 参数篡改技术
- 权限边界测试
4. 人脸照片篡改漏洞
漏洞描述
通过身份验证绕过,可任意修改他人人脸识别照片。
漏洞复现步骤
- 账号信息收集:
- 登录账号A
- 通过遍历获取账号B的
userId=6299,personId=6297
- 抓取关键数据包:找到人脸修改相关接口
- 构造恶意请求:
- 保留合法
Authorization参数 - 替换
base64编码的图片数据 - 修改
userid为目标账号B的ID
- 保留合法
- 验证篡改结果:登录账号B确认照片被修改
技术要点
- 身份验证令牌复用
- Base64编码数据处理
- 权限绕过技术
5. 存储型XSS漏洞
漏洞描述
通过文件上传功能注入恶意脚本,在Web端触发XSS攻击。
漏洞复现步骤
- 定位上传功能:
- 首页→宿舍考勤记录→申请改签
- 找到文件上传点
- 构造恶意文件:
- 选择图片上传
- 修改文件名后缀为
.svg - 替换文件内容为XSS payload
- 获取文件路径:上传后获取返回路径信息
- Web端触发:
- 登录Web管理平台(与APP共用凭证)
- 通过F12开发者工具获取图片完整URL
- 访问恶意文件触发XSS
技术要点
- SVG文件XSS payload构造
- 文件上传漏洞利用
- 跨平台漏洞关联分析
漏洞挖掘方法论
1. 信息收集阶段
- APP功能模块分析
- 接口参数识别
- 数据流跟踪
2. 漏洞检测技术
- 参数模糊测试
- 权限边界测试
- 输入验证绕过
3. 漏洞链利用
- 单一漏洞深度挖掘
- 多漏洞组合利用
- 影响范围最大化
安全建议
开发层面
- 身份验证:实施严格的权限验证机制
- 输入验证:对所有用户输入进行严格过滤
- 参数校验:服务器端校验所有请求参数
- 文件上传:限制文件类型,进行内容检查
运维层面
- 安全监控:建立异常访问检测机制
- 数据加密:敏感信息加密存储和传输
- 权限最小化:遵循最小权限原则
总结
本案例展示了校园APP常见的安全漏洞类型及其挖掘方法,强调了权限验证、输入验证、文件安全等基础安全措施的重要性。安全测试应在授权范围内进行,发现漏洞后应及时报告和修复。