靶机详解

难度: 中级

环境

kali Linux 2021 192.168.0.104
Linux Kernel 192.168.0.103

涉及技术

主机发现 网络扫描 强制访问 参数爆破 文件包含 PHP封装器 任意文件读取 SSH公钥登录 离线密码破解 系统权限漏洞利用

打靶开始

1
sudo arp-scan -l

进行主机发现

发现目标主机IP为 192.168.0.103

进行端口扫描

1
nmap -sC -sV -p- 192.168.0.103

发现目标主机打开的22,80端口,首先率先考虑 80 端口是否存在漏洞

打开后发现如下,

使用 dirsearch 进行目录爆破

1
dirsearch -u http://192.168.0.103/ -w /home/yifang/fuzz/dirtop60000.txt -f

dirsearch1

发现目标存在 secret文件夹,打开后发现了一段字符 hacker ,继续使用dirsearch 进行目录爆破,发现了在secret下有一个evil.php的文件。此时的渗透工作似乎进入了瓶颈期,想到了可以对evil.php下的文件的get 变量进行 fuzz 测试,于是使用ffuf工具对其进行测试

1
ffuf -w /usr/share/SecLists/Discovery/Web-Content/burp-parameter-names.txt -u http://192.168.0.103/secret/evil.php?FUZZ=../../../../../../../../etc/passwd -fs 0

ffuf

得出结果页面command参数存在命令包含漏洞,

访问/etc/passwd发现存在mowree账户,

passwd

此时能反映到的是,对 ssh 进行密码爆破,但在爆破之前不妨尝试一下 ssh 登录看看 debug 信息

ssh

然后我就发现了,目标主机可以使用 ssh 免密登录,结合命令包含漏洞,直接读取他的公钥,岂不美哉?

1
2
3
id_rsa : 生成的私钥文件
id_rsa.pub : 生成的公钥文件
authorized_keys

读取 mowree 账户的 authorized_keys 文件,事实证明,我是可行的!

idrsa但是问题也随之而来,需要一串密码

parser

不过可以使用 john 进行离线密码破解,先使用 john 的插件将 id_pub 转换成可以被破解的样式,然后使用john进行破解sshpass

得出密码为 unicorn 进行登录

登录成功,然后使用find命令查找可以进行提权的文件

1
2
3
4
find / -perm /4000 2 > /dev/null
find / -perm /2000 2 > /dev/null
find / /writable 2 > /dev/null
存在/etc/passwd可以进行文件写入

使用,openssl 生成一段密文

1
openssl passwd -1

然后替换/etc/passwd里面的x

getroot

提权成功,打靶结束

Fork

XRSec has the right to modify and interpret this article. If you want to reprint or disseminate this article, you must ensure the integrity of this article, including all contents such as copyright notice. Without the permission of the author, the content of this article shall not be modified or increased or decreased arbitrarily, and it shall not be used for commercial purposes in any way