某edu证书站渗透测试
字数 1298 2025-08-22 12:23:36
教育证书站渗透测试技术指南
信息收集方法论
搜索引擎高级语法
-
基础语法组合:
domain="edu.cn"&&body="注册"&&body="Login"&&title="系统"body="/upload"查找上传功能点site: xxx.edu.cn intext:"学号|身份证|姓名|24&23级信息"查找敏感信息
-
文件类型搜索:
site: *.edu.cn filetype:txt OR filetype:xls OR filetype:xlsx OR filetype:doc OR filetype:docx OR filetype:pdf- 可扩展搜索关键词:林业管理、物业管理、城市管理、学生管理、交通管理、智慧平台、校园卡等
工具推荐
- Hunter:用于大规模信息收集和测绘
- Google Hacking Database:参考已有搜索语法模板
渗透测试案例详解
案例1:水平越权漏洞
发现过程
- 使用Hunter发现技校迎新系统
- 通过Google语法
site:URL intext:"sfz|xh"收集到身份证号和学号
漏洞验证
- 发现"查看通知书"功能存在ID参数
- 修改ID值成功越权访问他人信息
自动化验证脚本
import requests
import concurrent.futures
url_prefix = "目标URL前缀"
success_count = 0
def check_url(xsid):
global success_count
full_url = url_prefix + xsid
try:
response = requests.get(full_url, timeout=5)
if response.status_code == 200:
success_count += 1
print(f"Success: {full_url}")
except requests.exceptions.RequestException:
pass
with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:
executor.map(lambda i: check_url(f"{i:04d}"), range(10000))
print(f"\nTotal successful responses: {success_count}")
案例2:Swagger接口未授权+任意文件下载
发现过程
- 发现Swagger API文档未授权访问
- 使用工具自动遍历API接口
利用工具
- swagger-exp:https://github.com/lijiejie/swagger-exp
- 将接口保存为api-docs.json
- 运行swagger-exp.py自动测试接口
漏洞利用
- 发现获取人员信息的接口
- 通过参数控制(如2000条)批量下载敏感信息
- 成功获取身份证等敏感数据
案例3:任意文件上传漏洞
发现过程
- 外围测试发现未授权接口
- 修改请求方法为POST尝试上传
漏洞利用
- 上传XML文件测试XSS
- 从响应中获取文件路径
- 直接访问上传的文件验证漏洞
案例4:Druid未授权访问
发现过程
- 通用系统特征识别
- 查找同类系统发现专家入口
- 抓包分析发现认证参数
漏洞利用
- 使用发现的key成功登录系统
- Burp检测到Druid监控页面
- 直接访问/druid路径验证未授权访问
防御建议
-
信息泄露防护:
- 严格限制搜索引擎爬虫
- 敏感文档设置访问权限
- 定期检查公开信息
-
接口安全:
- Swagger等API文档需授权访问
- 接口参数严格校验
- 实施速率限制
-
权限控制:
- 实施完善的权限验证
- 关键操作二次认证
- 避免直接使用可预测的ID
-
文件安全:
- 严格限制上传文件类型
- 上传内容安全检查
- 存储路径随机化
-
监控系统安全:
- Druid等监控系统必须设置强认证
- 修改默认访问路径
- 限制访问IP范围
扩展资源
-
信息收集高级技巧:
- https://xz.aliyun.com/t/15337
- https://xz.aliyun.com/t/9994
-
Druid深入利用:
- 参考专业安全分析文章
-
自动化测试框架:
- 推荐使用Burp Suite专业版进行自动化扫描
- 结合自定义脚本提高效率