校园网认证系统(锐捷RG-SAM认证系统)用户信息越权查询漏洞

2018-02-26 19:52:33 49 9784 6

1.漏洞发现的开始

在寒假前,想着到家以后可能还要用到实验室的电脑,然后在实验室电脑上安装了Teramviewer 作为控制端,但是如果电脑重启时间过长,会导致开机以后需要重新在校园网认证系统中登陆才能连接互联网,因此写了一个登陆校园网认证系统的脚本,在这个过程中发现了这个漏洞

2.简单介绍一下校园网认证系统

在以下界面登陆:

登陆成功后返回的界面:

认证系统的原理图:

3.初现端倪--UserIndex

看到这个UserIndex,我想到,如果我访问别人的这个界面是不是可以看到别人的信息呢?

于是在实验室的电脑上登陆了一个朋友的账号,然后访问朋友账号登陆成功的UserIndex,如下:

和我登陆了似的,然后我测试了一下几项内容:

<1> 如果我访问别人的界面点击下线按钮,他还可以上网吗? 答案: 不能 。

<2> 左上角有个自助服务,点击进去可以修改密码但是要原密码

综上 <1> <2> 挖掘到的这个漏洞只能给别人断网吗?那可没达到我要的效果。

4.再看端倪--UserIndex的规律

无论进一步深入还是就停留在搞恶作剧,都需要对UserIndex进行爆破,那么就必须掌握它的规律。

我收集了一些UserIndex 其中包括(PC网线直连的,PC WIFI接入的,安卓手机登入的,苹果手机登入的),规律如下:

根据测试发现,userIndex基本上由3段组成:

<1> 固定前缀

30613532373163316135396430313232616631323931386332323865396334315f31302e313

<2> 接入方式标识符

PC网线接入:02e342e31365f

PC WIFI接入:62e3230302e3138335f

安卓 WIFI接入:62e35322e3233355f

苹果 WIFI接入:62e3133362e385f

<3> 用户标识符

我把用户标识符分成了3段,第一段是51 学号开始前缀,第二段是入学年份,第三段是学号。

比如:5120158888则会变成35313230313538383838

规律是:从第一位开始(把第一位前也添加一个3),每隔一位添加一个3

5.COOKIES中隐藏的秘密

访问自己登陆成功的界面的时候,随手按下了F12看了一下数据包中,COOKIES里面记录自己的学号、明文密码等一系列的内容

那么我如果访问别人的登陆成功界面呢?

COOKIE里面的明文账号密码仍然是我当前登陆用户的,而非目标的。因此无法利用。

6.柳暗花明

看到上面那个图,你发现没有?

以userIndex作为POST值,来getOnlineUserInfo 。

OK ,我们看下返回值是什么

这里显示乱码的原因是:目标页面没有设置header头,而其返回的是utf-8编码的,浏览器没看到header头里面定义,就按照系统默认编码(GBK)解析了。

回归正题,到这里,你会发现,如果向/eportal/InterFace.do?method=getOnlineUserInfo界面POST 目标UserIndex就可以拿到其姓名、学号、明文密码等信息。

7.漏洞的利用

讲了这么多,大家最关心的还是这个漏洞怎么利用。

编写脚本,生成userIndex , 然后在同学们用网比较多的时段来进行爆破,成功率很高,脚本地址:

https://github.com/admintony/ePortalGetPass/

抓取到的明文信息展示

8.漏洞修复方式:

<1> 用更高强度的无规律的userIndex替换这个有规律的userIndex,可以将无序userIndex写入数据库

<2> 我测试直接GET请求/eportal/InterFace.do?method=getOnlineUserInfo返回的是当前登陆用户的信息,那么可以删除POST方式,或者在查询之前先对比该UserIndex是否和当前登陆用户的UserIndex一致

9.附录

这个漏洞比较鸡肋,只能爆破出和你在同一路由器下面的用户信息,不在同一路由器下的无法查询信息。一般校园网都是一个区域一个路由器的。

TCV : 0

大家不用再纠结是否露点了,地址你访问下试试就知道了

关于作者

AdminTony65篇文章1093篇回复

评论49次

要评论?请先  登录  或  注册
  • 29楼
    2018-2-27 20:49

    密码都是身份证后六位吧哈哈

  • 28楼
    2018-2-27 19:45
    阿乾

    看了文章,感觉可以社工一波啊,我们学校的无线网界面是这样的。不知道有没有人见过

    1

    你这个可以爆弱口令,加密方式很简单,写在js里的。得到老师的账号格式,做个字典,以弱密码为常量,账号为变量,可以弄出来很多。加密方式我一老铁曾经写过一个脚本发在论坛了。另外这个的后台管理xi统如果是默认的话st2可以进去的。

  • 27楼
    2018-2-27 17:49

    不搞一波校园网都不好意思说自己是搞网络的,我毕业了才拿下学校网站。。。有些丢人

  • 26楼
    2018-2-27 17:16

    学xi了,这个是路由器的漏洞底层漏洞?

  • 25楼
    2018-2-27 17:11

    楼主不怕校友看到然后。。。。

  • 24楼
    2018-2-27 16:58

    控制一下线程,然后做好隐蔽性措施,

  • 23楼
    2018-2-27 16:08
    宅独青年丶

    我们学校也是锐捷..只是我混了个学生团队,可以上后台随时看你在看啥网站,经常访问哪些网站

    1

    这么恐怖吗,都不敢上网了。。

  • 22楼
    2018-2-27 15:24
    阿乾

    看了文章,感觉可以社工一波啊,我们学校的无线网界面是这样的。不知道有没有人见过

    1
    _luan

    之前我学校就是这个,我是用MS17010打下一台服务器搭VPN绕过的。

    2

    那就是内网渗透吗,谢谢大佬

  • 21楼
    2018-2-27 14:29

    学校最好大码下,还是比较敏感的

  • 20楼
    2018-2-27 14:28
    blnxz

    域名漏点了。暴露了。你是丝袜斯特的学生?

    1

    嗯,域名漏不漏无所谓的,反正别人也访问不到,难道你也是丝袜斯特的学生?

  • 19楼
    2018-2-27 13:36

    域名漏点了。暴露了。你是丝袜斯特的学生?

  • 18楼
    2018-2-27 10:31

    我们学校用的电信的netkeeper坑的一批

  • 17楼
    2018-2-27 10:19
    阿乾

    看了文章,感觉可以社工一波啊,我们学校的无线网界面是这样的。不知道有没有人见过

    1

    之前我学校就是这个,我是用MS17010打下一台服务器搭VPN绕过的。

  • 16楼
    2018-2-27 10:16

    真是领教了 厉害

  • 15楼
    2018-2-27 10:00
    宅独青年丶

    我们学校也是锐捷..只是我混了个学生团队,可以上后台随时看你在看啥网站,经常访问哪些网站

    1

    我擦,每天那么多访问数据能看过来吗。那我的秘密该放到何处

  • 14楼
    2018-2-27 08:06

    技术源于生活,读书的时候,DR.COM 青果 新开普都搞过

  • 13楼
    2018-2-27 01:17

    这排版整洁,学到了

  • 12楼
    2018-2-26 23:55

    看了文章,感觉可以社工一波啊, 我们学校的无线网界面是这样的。 不知道有没有人见过

  • 11楼
    2018-2-26 23:03
    shiyan

    看着文章开头的图片,有种熟悉的感觉,一想,国光博客,有一篇文章就是渗透这个。(#^.^#)http://www.sqlsec.com/2017/11/nnuwifi.html

    1

    嗯嗯,我也看了下,明天去测试测试,我发现的这个只能抓取同一路由器的在线用户信息,很鸡肋,国光发现的那个如果能拿到正确的密码那就很好用了!

  • 10楼
    2018-2-26 22:49

    噗 看到第一张图 我以为是我师,之前扫过的但立马被封