记一次edu站点从敏感信息泄露到getshell
字数 1091 2025-08-20 18:18:10
教育站点渗透实战:从敏感信息泄露到GetShell
漏洞概述
本案例记录了一次针对教育站点(.edu)的渗透测试过程,攻击者通过发现网站备份文件泄露,逐步深入最终获取系统权限。整个过程涉及多个安全漏洞,包括敏感信息泄露、功能暴露、文件上传绕过等。
渗透时间线
- 发现时间:2020年10月
- 报送平台:EDUSRC(教育行业漏洞报告平台)
- 修复状态:已修复
详细渗透过程
1. 敏感信息泄露
攻击者通过扫描发现目标站点存在备份文件泄露:
http://xxxx.xxxxx.edu.cn/xxxx/data.rar
关键点:
- 备份文件包含网站静态HTML文件
- 泄露路径暴露了网站目录结构:
data.rar\html\user\tpls\app - 备份文件中发现了隐藏的注册页面:
register.html
2. 发现隐藏功能点
通过分析备份文件,发现网站存在未公开的注册功能:
- 原始注册页面报错但暴露了注册点位置
- 最终注册URL格式:
http://xxxx.xxxx.edu.cn/index.php?xxxxxregister
3. 用户注册
成功访问注册页面后:
- 创建测试账号:test123/123456
- 通过该账号登录系统后台
4. 文件上传漏洞利用
在用户中心发现头像上传功能,存在安全缺陷:
漏洞详情:
- 后端采用黑名单过滤机制,仅允许图片类型文件
- 但后端代码存在逻辑缺陷:取最后一个"."后的扩展名存储
- 攻击者可上传带有双重扩展名的文件(如
shell.gif.php)
利用步骤:
- 准备一句话木马文件,将扩展名改为
.gif - 上传时拦截请求,在文件名后添加
.php(如shell.gif.php) - 后端存储时只识别最后一个扩展名,最终保存为
.php文件 - 通过F12开发者工具查看上传路径
- 访问上传的WebShell获取系统权限
5. 权限获取
- 获取的权限级别:System权限
- 由于是教育站点未授权测试,未进行后续渗透
技术要点总结
-
敏感信息泄露风险:
- 网站备份文件不应存放在Web可访问目录
- 应定期检查并删除不必要的备份文件
-
功能暴露问题:
- 隐藏功能点通过备份文件暴露
- 应确保所有功能都有适当的访问控制
-
文件上传漏洞:
- 黑名单过滤机制不安全
- 文件扩展名处理逻辑存在缺陷
- 应采用白名单机制验证文件类型
- 应重命名上传文件,避免直接使用用户提供的文件名
-
防御建议:
- 实施严格的访问控制策略
- 对上传文件进行内容检查而不仅是扩展名检查
- 定期进行安全审计和渗透测试
- 最小化Web服务器权限
攻击流程图
敏感信息泄露 → 下载备份文件 → 发现隐藏注册功能 → 成功注册账号 →
登录后台 → 利用文件上传漏洞 → 上传WebShell → 获取System权限
免责声明
本案例仅用于安全研究教育目的,所有测试均在授权范围内进行。未经授权的渗透测试可能违反法律,请务必遵守相关法律法规。