u21h2 Z2O安全攻防 2023-09-17 20:30 发表于云南
文章正文
前言记录下某年某省HW期间,一个上午“打穿”某还算不错的高校的经历。
过程中只用到很简单的方法,所以加了个标题“有手就行”。
文中内容已做脱敏处理,渗透过程已获得授权, 相关漏洞也已经修复。
所介绍方法请勿用于非法用途!本文请勿转载。 外网打点这一块涉及一些隐私问题,就不展开说了,只说下可行的思路吧。可以去看下其他师傅的文章。 横向1-寻找内网跳板用VPN等方式总归是不稳定,需要找到稳定的跳板机来进行后续的渗透。对重点的网段进行扫描,如信息中心、财务处、学校官网主站等所在的网段。 某公司物理机/虚拟机弱口令(数十台)[color=rgba(0, 0, 0, 0.9)]探测到该校购买了大量的华为物理机部署在机房内,但其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 / Huawei@CLOUD8!
复制代码
这些默认密码在华为官方的文档其实都有~ Hadoop unauthorized-yarn RCE (十台)发现某IP的80服务开着未授权的Hadoop,且存在RCE漏洞。 新中新网关Shiro-550
shiro还没修完也是离谱,java我谢谢你。 横向2-接口安全探测中心(数据安全)在上面我们得到稳定的跳板后,继续针对该校重点网段进行简单的扫描。
发现某IP的80端口有个安全设备需要登录,但5001端口可直接访问。
如图,会对所有的接口双向数据进行检测,记录其中的敏感信息。但这网站自带的搜索功能太鸡肋了,我无法快速筛选到需要的信息。我直接抄起Python对该网站的API进行一个的爬,然后存到本地的mongo数据库中(因为数据量大且字段不固定)。注:该数据库在授权测试后已删除。
然后使用mongo对应的SQL查找我想要的信息。以下为部分代码,不解释了,大家肯定能看懂是在找什么。 如图,会对所有的接口双向数据进行检测,记录其中的敏感信息。但这网站自带的搜索功能太鸡肋了,我无法快速筛选到需要的信息。我直接抄起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} )
复制代码
横向3-一些内网资产使用上面我们筛到的管理员用户名、密码、甚至是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管理平台等等的管理权限。 横向4-统一数据集成管道-所有核心库这是一个很重要的系统。该系统对学校一些核心的数据库进行了进程,每晚会同步数据,比如将业务库的数据同步到核心库,我们有时候补办校园卡第二天才能生效刷开门禁就是这个道理。
该系统集成的数据库有:X大主数据仓库,X大主数据缓存库,人事中间库,研究生中间库,本科生教务中间库,校园卡中间库,科研中间库,房产和教师公寓管理库,财务系统中间库,数据中心共享库,x大通行码,安保处人行通道中间库,数据中心机构库,校园网实时在线系统,后勤中间库,设备资产系统,流程平台,通讯录,执行标准库,教学资源系统中间库,图书系统,OA系统,XX学院中间库,后勤集团中间库,数栈安保大屏,财务中间库,图书馆人员中间库,工会人员中间库等等等等。
各个数据库的IP地址、端口、连接方式、用户名等是明文的,但抓包显示密码是加密的,我解了半天发现只要检查元素将类型改成text就可以显示了。省去了我逆向JS的过程,这也太安全了。 获得了几十个库,上万个schema的管理权限,基本上该校的核心数据都在这里 接下来简单展示几个: 身份信息人脸照片、教师科研成果信息、财务信息、房产信息;学生家庭住址、父母职业等,共十万条。 打卡定位近几千万条带经纬度的健康打卡定位信息。 校园网校园网实时在线信息,包括某个师生的IP地址和MAC地址。不展示了。 财务处财务收费信息。不展示了。 反正就是挺危险的,理论上我啥也能干了,包括但不限于改成绩、改学费、改校园卡金额(当然对账系统很复杂,我改了肯定能被发现哈哈,只是口嗨下)。 总结一套走下来,还是很顺利的,学校没有企业那种的域管生产网,还是数据重要~
提一些众所周知的安全建设方法吧。 • 重要网段要隔离 • 弱口令修一修 • 安全设备到底方便谁?领导还是黑客? • VPN的权限可以管控再严格些 • 学校可以鼓励学生进行众测渗透,给一定的奖励
这边还有不少之前渗透的有趣经历,最近找暑期实习整得身心俱疲,等有机会再接着分享 - https://xz.aliyun.com/t/11186
- author:u21h2
复制代码
|