DriftingBlues2靶机
信息收集
- 扫描得到目标靶机IP地址为192.168.78.168,进行全面扫描得到22和80端口,其中21ftp协议可以使用匿名用户登录
- 使用dirb扫描一下网站,得到了blog目录能够看出这是一个wrodpress的cms网站
web渗透
- 访问blog网站,发现其css代码没有加载出来,了解到是由于需要进行域名访问才可以
- 随机访问几个界面,发现网页中前面显示了driftingblues.box提示,证明这个就是域名,修改hosts文件使用域名访问网站
- 既然知道是wordpress框架,那就直接前往后台登录去爆破一下用户名吧
- 使用kali的工具wpsacn对目标网址进行用户名爆破登录,得到用户名为albert
- 使用kali自带的弱口令字典尝试密码爆破,得到登录密码为scotland1
- 登陆到wordpress后台,在网上搜索wrodpress后台getshell得知可以修改模板文件,在404文件中添加一段反弹shell的代码,404模板可以加载php代码
- 尝试访问一个不存在的网页,在kali主机成功接受到反弹的shell
权限提升
- 先来到/home目录下,发现有一个freddie目录,很显然还需要登陆到freddie用户的shell,查看其目录下的内容,发现有一个.ssh目录,里面存放着ssh登录所需的公私钥。根据前面的对ssh免密登录,只需要将ssh的私钥放到主机中,使用私钥登录ssh即可获取freddie的shell
- 尝试进行sudo -l查看当前用户权限,发现可以免密码使用sudo执行nmap
- 根据搜索,之前也有使用nmap提权的经验,只需要将获取shell的命令写入到nmap脚本中,使用漏洞扫描代码执行该文件即可获取root权限
- 将命令加上单引号就可以成功写入了,最后只需要使用
sudo
来调用root权限执行nmap --script=nse_root.nse
即可获取root权限
- 成功获取到root权限,查看flag即可
靶机总结
- 通过本次靶机学习,学会了如何利用wordpress后台来getshell
- 对于ssh免密登录又有了一定的加深,目前两种方式:将本机的公钥放到靶机中,使用是要登录ssh,需要将公钥重命名;将靶机的私钥copy下来,使用私钥登录ssh
- 如果发现网站页面的css代码没能加载,很可能是需要使用域名访问
- 发现可以利用sudo -l给出的权限来提权时,在最后提权代码一定要加上sudo来调用root权限