原文:EEE和田智汇
上网,安全第一。密码弱,两行泪留给亲人。
– 《流浪弱密码》
1.前言
这一次,通过完整的攻击链,我们获得了教务系统的最高权限,影响了800所高校。在此提交之前,相关问题已通知制造商。
除了厂家的官方感谢,我还得到了人生最大的漏洞奖金。现在我就分享一下这个想法,欢迎大家讨论交流。
2.信息收集(弱密码)
最近,学校推出了新的教务管理系统。毕竟以前的教务系统真的是垃圾.选择一个类,服务器直接崩溃。该系统在新年前两天进行了在线测试。这次从教务处发布的选课公告中可以看到:
在这种背景下,如果我知道老师或学生的工号/学号,就可以登录弱密码账号。
弱密码中的相关漏洞可以在和田网坛实验室(http://www.hetianlab.com/expc.do?EC=ecid 9 D6 c0ca 797 abec 2017042513285600001)
3.链接开始(登录教育管理系统
登录后没有什么特别的。几乎所有的功能都是验证cookie返回的信息。因此,它导致更少的越权。发现了很多逻辑问题,
例如,更改密码可以覆盖前端密码强度规则,这是一个不疼不痒的小问题。
提示:任何在前端检查而在后端未验证的规则都可以被绕过。对于这种级别的防御,只能限制部分正常用户。
4.光明的未来(超越级别的权限)
就像我们刚才说的,大部分的功能都是通过Cookie验证的,所以如果你越权了,在注册信息办公室找到tableid之前是没有突破的,你要马上通过。
果然!
当tableid=XXXX请求返回大量教师信息时,经过排序,全校大概有2200个教师信息。
小贴士:其实不能算是严格的越权,但是还有一个参数可以遍历别人的注册信息。这里的主要问题是大量的信息泄露。
打嗝被放在入侵者身上,以爆炸tableid,然后发现了一个大的回应包。
正如我们刚才提到的,系统刚刚上线,大量老师还没有上线更改密码。因此导致大量弱密码的实施。我们可以随意登录任何老师账号。
5.扩展结果(获取更多信息)
一开始我只以为整个系统有三个角色,分别是学生、老师和管理员。
但是在尝试登录了几个老师系统弱密码后,发现了一个高权限账号(学籍系统管理员),可以发布信息,查看全校的角色信息。
不同的权限是不同的,例如
讲师:询问课表、成绩等。
学籍管理员:可以维护整个学校的学籍等。
学院管理员:可以维护学院的学籍。
ql-align-justify”>教师工作量管理员:可查询所有教师信息等
还有招生办管理员,培养方案管理员,教学评价管理员….
乱七八糟各种角色有十几个
当然了还有最高权限管理员(master)
如下图学院管理员所示,学院管理员,每个学院有若干个行政管理人员。(某些高权限的教师账号可以查看这些信息)
此时已经可查看全校近十年来,十万余人的学籍信息了。有点手抖….
6、最高权限(垂直越权)
Emmmm,之后探索到系统管理处,可以重置任意学生的密码(这个很正常,比如说有学生忘记密码了,你得有人重置一下吧)
一开始也就是重置一下自己的账号试一下功能。
但是之后发现可以重置老师的账号….
然后我进行了大胆的尝试….
Ohshit???学籍管理员竟然重置了最高权限的管理员账号….
这这这明显的垂直越权啊。(之后尝试了其他管理员账号也可以重置)
Tips:垂直越权,相对低权限用户可越权至高权限账户进行操作
此处也可以认为是后台逻辑对于系统权限设计的混乱….
然后输入默认账号,密码。之后,成功….
进行账号初始化界面,让我更改默认密码
想了解常见的权限绕过漏洞原理以及漏洞检测利用和漏洞防护,可到合天网安实验室学习(http://www.hetianlab.com/expc.do?ec=ECIDee9320adea6e062018031511354800001)
7、漏洞总结
信息收集发现弱口令攻击信息(中低危)
学生可遍历数据库数据,信息泄露教师信息(中低危)
关于教师权限管理不规范(中低危)
学籍管理员等管理员可垂直越权master权限(高危)
之前听过其他师傅的一句话:
知识面宽度决定攻击面广度,知识链深度决定攻击链的长度
所以不起眼的任何安全问题,都有可能造成攻击的线索之一,甚至成为该攻击链闭环中不可或缺的一部分。
从上午10点发现新教务系统发布,到晚上10点。渗透搞了12个小时,写了报告发给了教务处,随后很快厂商主动联系,所有问题得到了积极解决。
8、最后
感谢敬业的合天运营gddwl,通过之前活动给的合天学习卡一直在学习。官网也一直在更新内容,赞一个。
声明:所有涉及暴露厂商及学校的任何信息全部打码…且所有漏洞已全部修复。笔者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关。
本文为合天原创,未经允许,严禁转载