Web安全入门与靶场实战(42)- Drupal的识别与测试

时间:2023-02-20 11:13:35

之前我们通过全端口扫描,发现靶机上还开放了一个TCP1898端口,在这个端口上运行的才是真正的网站。

打开网站之后发现其中的信息很简单,当然最关键是可以发现对这个网站应该会有点熟悉,而且在网站的最下方发现“Powered by Drupal”,很明显这个网站也是用Drupal开发的。另外通过title图标也可以识别。

Web安全入门与靶场实战(42)- Drupal的识别与测试

下面继续用whatweb探测Drupal的版本,发现也是Drupal7。

Web安全入门与靶场实战(42)- Drupal的识别与测试

那我们就可以采用之前的方法,直接用Metasploit来获取Shell,操作跟之前完全一样。

首先查找与Drupal相关的exploit:

Web安全入门与靶场实战(42)- Drupal的识别与测试

然后调用编号为1的exploit:

Web安全入门与靶场实战(42)- Drupal的识别与测试

需要注意的是,在设置exploit时,不仅要设置RHOSTS(远程主机),而且还要设置RPORT(远程端口)。因为Web服务默认都是采用80端口,而这里的端口需要改成1898。

Web安全入门与靶场实战(42)- Drupal的识别与测试

获取Meterpreter的Shell之后,同样还是通过python获取一个功能更为完善的Shell。然后发现当前用户仍然是www-data,之前在靶机介绍部分已经说过,这个靶机里只有一个存放在/root中的flag,所以下面的主要操作就是提权。

Web安全入门与靶场实战(42)- Drupal的识别与测试

首先sudo提权应该不可行的,原因之前也说过。即便执行sudo -l查看,因为有密码限制,操作也无法执行。

Web安全入门与靶场实战(42)- Drupal的识别与测试

然后查找被设置了SUID的文件,发现其中也没有可以利用的程序:

Web安全入门与靶场实战(42)- Drupal的识别与测试

所以之前介绍的几种提权方法都不好用了,这里要介绍一种新的提权方法-脏牛提权,这也是这个靶机最主要的知识点。