靶机详解
难度: 中级
环境
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 |
发现目标存在 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 |
得出结果页面command
参数存在命令包含漏洞,
访问/etc/passwd
发现存在mowree
账户,
此时能反映到的是,对 ssh
进行密码爆破,但在爆破之前不妨尝试一下 ssh
登录看看 debug
信息
然后我就发现了,目标主机可以使用 ssh
免密登录,结合命令包含漏洞,直接读取他的公钥,岂不美哉?
1 | id_rsa : 生成的私钥文件 |
读取 mowree
账户的 authorized_keys
文件,事实证明,我是可行的!
但是问题也随之而来,需要一串密码
不过可以使用 john
进行离线密码破解,先使用 john
的插件将 id_pub
转换成可以被破解的样式,然后使用john
进行破解
得出密码为 unicorn
进行登录
登录成功,然后使用find
命令查找可以进行提权的文件
1 | find / -perm /4000 2 > /dev/null |
使用,openssl
生成一段密文
1 | openssl passwd -1 |
然后替换/etc/passwd
里面的x
提权成功,打靶结束
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