[有手就行]半天打穿某高校
2023-3-29 18:1:51 Author: 玄魂工作室(查看原文) 阅读量:11 收藏

嗨,大家好,欢迎来到【好文分享系列】,不定期转载干货好文,实用工具,分享给大家一起学习进步,一起卷起来~,为了防止迷路,别忘了给【玄魂工作室】点个星标哦!

文章转载自先知社区的 u21h2 师傅,原文链接如下:https://xz.aliyun.com/t/11186

记录下某年某省HW期间,一个上午“打穿”某还算不错的高校的经历。
过程中只用到很简单的方法,所以加了个标题“有手就行”。
文中内容已做脱敏处理,渗透过程已获得授权, 相关漏洞也已经修复。
所介绍方法请勿用于非法用途!本文请勿转载。

这一块涉及一些隐私问题,就不展开说了,只说下可行的思路吧。可以去看下其他师傅的文章。

  • 构造SSL VPN用户名(学号)及密码(默认密码格式可以在学校某些通知中检索到)

  • 同上换成Web VPN

  • 某宝购买该校的图书馆VPN资源

  • 在公网找未加密/弱口令的socks/frp代理(学校的服务器一般没独立公网IP,会有学生图方便开代理,这也方便了攻击者)

用VPN等方式总归是不稳定,需要找到稳定的跳板机来进行后续的渗透。对重点的网段进行扫描,如信息中心、财务处、学校官网主站等所在的网段。

某公司物理机/虚拟机弱口令(数十台)

探测到该校购买了大量的华为物理机部署在机房内,但其Web管理密码及KVM的连接用户密码均为出厂时的密码。我们可以通过Web管理平台直接执行系统命令,或者用华为官网提供的工具KVM连接(到虚拟机?)后执行命令。

可以看到root和远程控制

可见服务器配置还是挺高的,不挖矿可惜了(bushi
部分机器内还跑着OpenStack的服务,我们可以构造环境变量来管理这些虚拟机。

# 首先初始化环境变量
export OS_PASSWORD=***
export OS_AUTH_URL=https://identity.az1.dc1.domainname.com:443/identity-admin/v2.0
export OS_USERNAME=***
export OS_TENANT_NAME=***
export OS_REGION_NAME=***
export NOVA_ENDPOINT_TYPE=internalURL
export OS_ENDPOINT_TYPE=internalURL
export CINDER_ENDPOINT_TYPE=internalURL
export OS_VOLUME_API_VERSION=2
export BASE_BOND=brcps
# 旧版本
nova server list
# 新版本
openstack server list

此外还找到一些该公司其他云服务的默认密码,这里跟上边的一块,统一列几个吧

root / Huawei12#$
root / FusionSphere123
root / [email protected]!

这些默认密码在华为官方的文档其实都有~

Hadoop unauthorized-yarn RCE (十台)

发现某IP的80服务开着未授权的Hadoop,且存在RCE漏洞。

EXP不放了,可以参考Vulhub链接。
有趣的是每次弹回来的机器的host和IP会变,多次开端口监听,获得了node001-node010十台高配置物理机的shell。

新中新网关Shiro-550

shiro还没修完也是离谱,java我谢谢你。

在上面我们得到稳定的跳板后,继续针对该校重点网段进行简单的扫描。
发现某IP的80端口有个安全设备需要登录,但5001端口可直接访问。

如图,会对所有的接口双向数据进行检测,记录其中的敏感信息。但这网站自带的搜索功能太鸡肋了,我无法快速筛选到需要的信息。我直接抄起Python对该网站的API进行一个的爬,然后存到本地的mongo数据库中(因为数据量大且字段不固定)。注:该数据库在授权测试后已删除。
然后使用mongo对应的SQL查找我想要的信息。以下为部分代码,不解释了,大家肯定能看懂是在找什么。

db.event.find({"req.args.password":{"$exists":true}},{ host: 1, req: 1,_id:0} )
db.event.find({"req.args2.password":{"$exists":true}},{ host: 1, req: 1,_id:0} )
db.event.find({"req.body":{$regex:'admin'}},{ host: 1, req: 1,rsp:1,_id:0} )
db.event.find({"rsp.header.set-cookie":{$regex:'(?i)rememberMe'}},{ host: 1, req:1,rsp:1,_id:0} )
db.event.find({"host":{$regex:'itc'}},{ host: 1, req: 1,rsp:1,_id:0})
db.event.find({"apiUrl":{$regex:'login'}},{ host: 1, req: 1,rsp:1,_id:0})
db.event.find({"host":{$regex:'xxx'}},{ host: 1, req: 1,rsp:1,_id:0})
db.event.find({"net.dst_ip":{$regex:'xxx'}},{ host: 1, net:1,req:1,rsp:1,_id:0})
db.event.find({"net.src_ip":{$regex:'xxx'}},{ host: 1, net:1,req:1,rsp:1,_id:0})
db.event.find({"referer":{$regex:'edr'}},{ host: 1, req: 1,rsp:1,_id:0})
db.event.find({"rsp.body":{"$regex":"password"}},{ host: 1, req: 1,_id:0} )
db.event.find({"req.args2.pwd":{"$exists":true}},{ host: 1, req: 1,rsp:1,_id:0} )

使用上面我们筛到的管理员用户名、密码、甚至是Cookie,收获下一步的资产。

XX大学网络安全管理平台

这个平台还是蛮有意思的,可以进行学校的资产管理、安全通报、应急处置、安全监测、安全预警、安全管理、威胁情报、态势分析等,其中安全通报可以看到教育部(上交平台)、工信部、手动添加的学校漏洞信息。

比如别人提交的报告,好多还没修复呢~

XX大学数栈大屏

从上边mongo里筛出来的token,构造并访问,可以获取admin管理权限。

可以看到很多数据,比如保卫处的门禁数据~

这个系统背后对接的数据库连接方式也找到了一些,在后边统一说。

某厂商超融合云弱口令+VNC未授权(14台)

这个就不写是哪个厂商了。看起来是魔改了一个OpenStack来管理的几台物理机,托管一些安全设备。数据库审计、日志审计、堡垒机、云WAF等。不过我都打到这个程度了,就不搞这些安全设备了。

此外一些虚拟机可以vnc直接访问,没有密码。部分已登录的可以直接获取root的shell,剩下的我们可以重启进入恢复模式强制改root的密码(怕影响业务,未进行)。可以参考下重启改密码

OA任意用户登录

发现了一个接口,URL的PATH是一串很长的随机字符串,在这里可以输入OA账户的ID,用统一的密码来登录。我们简单遍历一下就可以登上校长和书记的OA。还可以看到一些涉密,当然我没瞎看啊。

XX大学接口管理平台

可以查很多信息,不过对我来说也都是塞牙缝了。

其他系统

还有一些系统,不是不重要,只是我懒得再写了。包括几十个学院官网的管理员、学术数据管理平台、广电专用网络存储平台、学校网络管理与性能监测系统、阿X云混合云All In One管理平台等等的管理权限。

这是一个很重要的系统。该系统对学校一些核心的数据库进行了进程,每晚会同步数据,比如将业务库的数据同步到核心库,我们有时候补办校园卡第二天才能生效刷开门禁就是这个道理。
该系统集成的数据库有:X大主数据仓库,X大主数据缓存库,人事中间库,研究生中间库,本科生教务中间库,校园卡中间库,科研中间库,房产和教师公寓管理库,财务系统中间库,数据中心共享库,x大通行码,安保处人行通道中间库,数据中心机构库,校园网实时在线系统,后勤中间库,设备资产系统,流程平台,通讯录,执行标准库,教学资源系统中间库,图书系统,OA系统,XX学院中间库,后勤集团中间库,数栈安保大屏,财务中间库,图书馆人员中间库,工会人员中间库等等等等。
各个数据库的IP地址、端口、连接方式、用户名等是明文的,但抓包显示密码是加密的,我解了半天发现只要检查元素将类型改成text就可以显示了。省去了我逆向JS的过程,这也太安全了。

获得了几十个库,上万个schema的管理权限,基本上该校的核心数据都在这里。


接下来简单展示几个:

身份信息

人脸照片、教师科研成果信息、财务信息、房产信息;学生家庭住址、父母职业等,共十万条。

打卡定位

近几千万条带经纬度的健康打卡定位信息。

校园网

校园网实时在线信息,包括某个师生的IP地址和MAC地址。不展示了。

财务处

财务收费信息。不展示了。

反正就是挺危险的,理论上我啥也能干了,包括但不限于改成绩、改学费、改校园卡金额(当然对账系统很复杂,我改了肯定能被发现哈哈,只是口嗨下)。

一套走下来,还是很顺利的,学校没有企业那种的域管生产网,还是数据重要~
提一些众所周知的安全建设方法吧。

  • 重要网段要隔离

  • 弱口令修一修

  • 安全设备到底方便谁?领导还是黑客?

  • VPN的权限可以管控再严格些

  • 学校可以鼓励学生进行众测渗透,给一定的奖励

这边还有不少之前渗透的有趣经历,最近找暑期实习整得身心俱疲,等有机会再接着分享:(


文章来源: http://mp.weixin.qq.com/s?__biz=MzA4NDk5NTYwNw==&mid=2651429755&idx=1&sn=0f98fdb12bcd22c4ea92db66f1df62fd&chksm=84238003b3540915ab19af6bfa0e6f75b099e76ca9c83af41443fd3ead324ab12adb67e30da0#rd
如有侵权请联系:admin#unsafe.sh