很久以前写的文章了,发一下:)

本文是我真实的挖洞经历。撰写本文时相关学校已修复漏洞,相关漏洞也提交给了教育漏洞平台。纯粹是挖洞经验的总结和技术分享,由于敏感信息比较多,所以文章里面很多图片已经面目全非了,望理解。。

平时不怎么挖漏洞,前几周的某一个周末,为了兑换教育漏洞平台上的某学校的证书,对该学校官网进行测试,看能否发现漏洞。

登录界面超好看。

看到左下角有一个信息门户帮助手册(下载),我们下载来先看看。

这里我们可以看到有的情况是可以使用工号和学号进行登录了,所以我们有必要花一些时间用学号和工号作为密码测试能否登录。

为了省事我们可以直接看学校的信息公开位置或者谷歌语法一波(Google hack),有的学校因为没有安全意识,会将学生和老师的一些隐私信息放在信息公开网上,比如说奖学金获得者的学号信息这种,这就让我们有了可趁之机。

这里我们找到了一个老师的工号/工号 登录成功,涉及隐私信息的地方我就打码了。

在这个位置我们先看看信息门户网有漏洞不。

可以看到该大学信息门户网的系统使用的是金智教育2010版本的,嗷,这么老的版本,肯定以前是爆出来过漏洞的,继续使用谷歌大法。

大概看了一下,有两个漏洞引起了我的注意,漏洞链接如下:

https://shuimugan.com/bug/view?bug_no=87297

https://shuimugan.com/bug/view?bug_no=84779

接下来的渗透也借鉴了第一个漏洞作者的思路。

第一个漏洞简单来说,在登陆了老版本金智教育的系统之后,我们直接访问http://ip/authorizeUsers.portal?limit=20,可以返回一个json格式的数据,包含教职工的姓名和工号等信息。

这里我们检测一下该大学的信息门户有没有这个漏洞,回车出json。

这里由于我们limit后面设置的数字是20,所以返回了20条数据,同理,我们只要改变limit后面的数字,就可以增加获取到的教职工数据。

第二个漏洞是修改密码,我们访问该大学的修改密码的界面。

可以看出来,虽然说是可以通过两种方式新设密码,但是由于回答问题修改密码的途径之前爆出过漏洞(也就是上面的第二个链接),所以该大学网站的管理员已经删除了通过回答密保问题修改密码的途径。

我们通过查看用户信息的时候,发现用户在注册的时候也没有填写密保问题,可以看出来在这里这个漏洞是无法利用的了。

这时候换一个思路,虽然该大学将这个漏洞补上了,那应该会有大学没有补这个修改密码的漏洞,说干就干,还是谷歌大法,查找使用了这个系统的学校。

我们在找到时候其实就可以发现有的学校的网站已经因为这个系统被挂马变成了澳门赌场了。。。

接着我们挨个测试即可,果然找到了一个粗心的管理员。

访问http://ip/userAttributesView.portal?userId=portal

可以看到管理员设置的自己账户的密保问题的答案。

这里portal是门户管理员的意思,即管理员所对应的ID,如果不正确的话我们可以多试几次,像amAdmin这些,表示网站管理员没有修改自己的默认ID。

紧接着我们到修改密码的界面,修改的账号就是portal

我们在这里输入之前看到的管理员的密保问题答案即可,正确之后进入下一步。

这里的学校也填写刚才的看到的答案。

最后来到直接输入新密码界面

ok,可以看到我们已经可以直接重置管理员的密码了,这里对该学校的测试就到此为止,因为我们是未授权访问,网站管理员的权限可以随意修改学生成绩,并且查看全校师生的隐私信息,可以知道危害极大。

当然我们并不想止步于此,在这里我想到之前那个大学信息门户网有的那个遍历全部师生学号/工号的漏洞,我们只能修改管理员的原因主要是因为管理员账户是网站的关键,还有另外一个原因就是因为我们只知道管理员的id。如果我们知道了所有师生的ID,那么我们是否可以修改全校所有人的信息门户的密码呢?

当然也是想到就做。

只要登录过学校信息门户网的小伙伴应该都知道,登录id实际上就是教师的工号,学生的学号,所以在这里如果我们获得了一个学生的学号,先修改他的密码,利用其登录的cookie,遍历所有人的信息。

于是现在问题变成了如何找到一个登录过校园信息门户网的学号。

借鉴乌云大神的思路,在该学校的百度贴吧里面寻找学号的信息,出乎意料的是,啥也没找到,

很多都是一些兼职,还有快要毕业的PS学姐(懂的都懂)发布的消息,搜索的三十分钟之后我就放弃了。

第二个方法就是谷歌语法,直接 学校名称 学号 intype:xls,就可以找到很多的有学生学号的表格,这种信息大部分都是公开的,我们也可以利用里面的学号实现攻击。

但这里我换了一个思路,百度贴吧找不到,那我们可以用另外的社交工具,比如:QQ

所以在QQ里面直接搜索 学校名称表白墙,盲猜在学校的表白墙上面会有人发布捡到学生卡的信息,到时候借用一下该同学的学号。

果然这条思路也是可行的:

我们利用这位同学的学号进入信息门户网。

修改密码的过程之前讲过一次,这里就不再赘述,毫无悬念的改好密码之后登陆成功。

接着我们尝试读取学校学校师生的ID值,也是用跟之前的那个大学信息门户网相同的方法,读取成功。(随便截了一些图)

嗷,我们通过修改limit后的数值就可以获取到更多的ID值,配合修改已知ID的账户密码漏洞,我们就可以修改学校内任意一个同学信息门户网的密码然后进行登录了,学生和老师的隐私也荡然无存了。

总结一下:

1,搜索引擎很重要,善于学会使用搜索引擎

2,信息搜集并不全是子域名搜集,敏感目录爆破这些,可以换很多种思路,比如QQ群,公司的github等等。

3,遇到问题的时候不要急躁,多反向思考,以及参考前人的意见,很可能你的问题以前的大神已经解决了,谦虚学习。

4,管理自己网站的时候要经常跟着版本更新和及时打补丁,不然很容易会被Nday漏洞打穿

一起加油吧

Nday漏洞组合拳修改全校师生密码的更多相关文章

  1. MySQL修改root账号密码

    MySQL数据库中如何修改root用户的密码呢?下面总结了修改root用户密码的一些方法   1: 使用set password语句修改 mysql> select user(); +----- ...

  2. mac 安装mysql + 修改root用户密码 + 及报Access denied for user 'root'@'localhost' (using password:YES)解决办法

    1.下载MySQL 到mysql的官网http://dev.mysql.com/downloads/mysql/然后在页面中会看到“MySQL Community Server”下方有一个“downl ...

  3. xampp修改mysql默认密码详解

    在这里介绍xampp修改mysql默认密码的大概过程是先利用xampp的phpmyadmin进入修改mysql密码,修改之后我们再修改xampp中phpmyadmin的密码,这样就完整的修改mysql ...

  4. 修改linux用户密码

    对于初学者来说,如何修改linux用户密码也不是件容易的事,其实非常简单,下面举例说明: 如果是以root身份登录,修改root密码.只要输入 passwd 就会出现: New password:  ...

  5. 如何修改Oracle用户密码

    大家如果不知道oracle数据库的密码的话,我们可以通过简单的命令行把密码进行修改. 1.打开cmd 2 在弹出的命令提示窗口输入 set oracle_sid=数据库名称(实例),回车.例如数据库名 ...

  6. 用phpMyAdmin修改mysql数据库密码

    1初始数据库密码为空. 2第一步,点击phpMyAdmin里的用户选项. 3选择root localhost用户名,点击编辑权限. 4此时会出来修改权限的页面,里面可以设置的选项还是比较多的,暂时不管 ...

  7. MySQL忘记了密码登录不进去,用命令符修改新的密码重新登录的方法

    MySQL忘记了密码登录不进去,用命令符修改新的密码重新登录的方法: 1.备份my.ini 2.在my.ini字段里 [mysqld] #socket=mysql skip-grant-tables ...

  8. Myeclipse SVN 修改用户名和密码

    转自:http://blog.csdn.net/chow__zh/article/details/7731497 解决方案: 在Eclipse使用SVN的过程中大多数人往往习惯把访问SVN的用户名密码 ...

  9. 不重启修改mysql root密码

    不重启修改mysql root密码 --------------------2014/09/28 一.一般忘记密码的解决办法,需要重启Mysql1.skip-grant-tables我们常用的方法是使 ...

随机推荐

  1. 【故障公告】博客站点再次出现故障,最终回退 .NET 5.0 恢复正常

    自从博客系统升级 .NET 5.0 之后遇到的诡异故障(一.二.三.四),今天它又出现了,就在前天刚刚故障之后, 就在昨天 .NET 5.0 正式版刚刚发布之后,出现了. 今天晚上我们在 19:30 ...

  2. binary hacks读数笔记(readelf基本命令)

    一.首先对readelf常用的参数进行简单说明: readelf命令是Linux下的分析ELF文件的命令,这个命令在分析ELF文件格式时非常有用,下面以ELF格式可执行文件test为例详细介绍: 1. ...

  3. 高性能arm运行ceph存储基准测试

    关于arm 之前wdlab对外发布过一次约500个节点的arm的ceph集群,那个采用的是微集群的结构,使用的是双核的cortex-a9 ARM处理器,运行速度为1.3 GHz,内存为1 GB,直接焊 ...

  4. 修改ssh的默认22端口,并使用scp的方法

    修改默认的22的ssh端口只需要修改 /etc/ssh/sshd_config 中的 port 字段为你想要的端口就可以了 以后用其他机器ssh登录这台机器只需要: ssh -p (port) (ip ...

  5. JavaScript复习大纲

    1. HTML.CSS和JavaScript各自在网页设计中的作用. 1.HTML生成结构. 2.CSS样式美化. 3.JavaScript的作用: (1) 操作HTML及CSS,让网页具有动态行为. ...

  6. laravel 验证器使用

    1.前后端不分离 (form表单提交) 控制器定义验证规则 <?php namespace App\Http\Controllers\Admin; use Illuminate\Http\Req ...

  7. 思维导图软件iMindMap幻灯片设置功能介绍

    我们运用iMindMap演示来播放幻灯片时,有没想过,我怎么改动幻灯片的播放时长,怎么设置它的播放速度这些基本设置呢.下面,本文就告诉你,我们该去哪里修改这些iMindMap幻灯片设置: 我们打开iM ...

  8. python办公入门3:xlrd操作工作表

    工作表 1 import xlrd 2 3 #接受工作表 4 data=xlrd.open_workbook("data.xlsx") 5 #查询第一个工作表的打开状态 6 pri ...

  9. 【ACwing 98】分形之城——分形

    (题面来自ACwing) 城市的规划在城市建设中是个大问题. 不幸的是,很多城市在开始建设的时候并没有很好的规划,城市规模扩大之后规划不合理的问题就开始显现. 而这座名为 Fractal 的城市设想了 ...

  10. 牛客练习赛71 数学考试 题解(dp)

    题目链接 题目大意 要你求出有多少个长度为n的排列满足m个限制条件 第i个限制条件 p[i]表示前 p[i]个数不能是1-p[i]的排列 题目思路 这个感觉是dp但是不知道怎么dp 首先就是要明白如果 ...