Featured image of post 目标某IDC:一次低权限虚拟主机getshell到提权

目标某IDC:一次低权限虚拟主机getshell到提权

【提醒】此文是一篇新手向的渗透文章,其中一些片段在大牛看来会觉得很可笑,还请谅解。 在我买搬瓦工VPS之前,用了一年多某IDC的便宜虚拟主机。今天,我展开了对此IDC的渗透测试。毕竟得出师有名,为什么要搞它呢?因为这IDC居然用免费空间的配置拿来当收费主机卖,还一天到晚宕机...

【提醒】此文是一篇新手向的渗透文章,其中一些片段在大牛看来会觉得很可笑,还请谅解。

在我买搬瓦工VPS之前,用了一年多某IDC的便宜虚拟主机。今天,我展开了对此IDC的渗透测试。毕竟得出师有名,为什么要搞它呢?因为这IDC居然用免费空间的配置拿来当收费主机卖,还一天到晚宕机,甚至在一次搬迁中出现了数据丢失,对我的影响比较大。

在此IDC的“有问必答”界面,我找到了一个上传突破口,用户可以在这里上传问题的描述图像。将图片一句话用burp抓包,截断,上传之。不知上传是否成功,我发现它居然是用一个专门的构造器显示图片!那么就无法直接访问图片马了。我又尝试使用iis短文件扫描,但由于网站是IIS7.5的,遂亦失败。

此路不通,所以我决定从旁站下手。发现旁站还蛮多的,看来这IDC用的也是虚拟主机。(自己用虚拟主机居然还向别人卖主机。。)随便打开一个进得去的,是某某商校。

访问他的./robots.txt文件。发现这个robots似曾相识——这不是dedecms的robots嘛!直接访问/dede/出现404,使用御剑扫描,得到后台地址是/admin/(你改地址也不能改个别人不知道的嘛)

看到的是熟悉的后台界面,dedecms v57 漫不经心地输入admin,admin,居然弱口令进去了!

这里说明一下,及时没有弱口令,也可以用dedecms v57的各种exp绕过,网上都能搜到。

这里我将一句话写在tags.php里,也是为了隐蔽着想,密码是ajz。

连接成功,上传大马。

之后用wscript执行whoami,发现是一个类似“免费主机用户”的权限,权限很低。不过至少能执行cmd,其实如果不能执行cmd的话也可以自己上传一个(←新手向提醒)

执行systeminfo,发现目标机器是windows server 2008 r2 x64的,于是上对应版本的exp。

接下来就是提权了,由于我这个大马不是用遍历方式扫目录,所以出来的目录大多是只读的,或者不可读但可以写的。所以提权都无效。这里特别感谢渗透吧群里的拿破飞机,这位大牛帮助我提权了,也给我了思路。下面是在他的指点下我进行的提权操作:

首先,我使用拿破飞机给我的扫目录马先扫了一下目录。图中扫出来的蓝色目录都是可以放shellcode的,我就选择c:\windows\debug\wia这个目录好了。

新手向提示:写shellcode的目录一定要可读+可写+可执行。这也就是为什么一般的web文件存放目录不可以执行shellcode的原因。三者缺一不可。

我在这个目录上传MS15-051 提权exp (MS15-051 提权exp修正版 http://www.t00ts.net/post-293.html),运行whoami。可以看到权限变成了system。

接着,我运行命令"net user ajz$ minecraft25565 /add & net localgroup administrators ajz$ /add"

其中 ajz$ 是用户名,minecraft25565是密码。

新手向提示:一般的大马会有shell path和command两个框框,我这里的提权上面就保持cmd.exe,下面写提权exp目录+“命令”。不过另一款工具pr的用法是shell path写exp目录,下面直接写命令,有点不一样。我增加用户时在用户名末尾加了美金符号,目的是隐藏用户,使得“net user”看不出来。

命令执行完毕,我又发现服务器3389是开着的,遂连接之,成功登录。

由于权限设置的严格,administrators组也是没有权限写文件的,我这里用了另一个提权工具taihou(https://github.com/hfiref0x/CVE-2015-1701/),也是用那个漏洞。为了“证明”我的战争“告捷”,我又往这个idc的网站目录里写了一句话。。。(我是个完美主义者QAQ)

新手向提醒:注意我提权时使用的ms.exe是可以在webshell上运行的,可以执行参数中的命令;而这个taihou是窗口化的提权工具,适合在服务器上直接双击运行。刚开始我把taihou放在webshell上运行,导致一直不成功,这里长个教训。

上图是用菜刀成功连接写到那个idc空间里的一句话。

【总结&反思】

对于渗透测试:

1.旁站攻击的手法是很重要的,这个要会查、会用。有时甚至还需要B段、C段的服务器来内网渗透。

2.根据systeminfo判断系统位数,是根据“系统类型”这一栏判断的,而不是“OS名称”。之前我以为OS名称后面没有x64就是32位,导致判断出错。

3.在管理后台可以随手试一下弱口令,会有想不到的收获。常见的弱口令是admin、123456、1234、admin888这一类。

(下面是文章中”新手向提醒“的合集)

3.写shellcode的目录一定要可读+可写+可执行。这也就是为什么一般的web文件存放目录不可以执行shellcode的原因。三者缺一不可。

4.一般的大马会有shell path和command两个框框,我这里的提权上面就保持cmd.exe,下面写提权exp目录+“命令”。不过另一款工具pr的用法是shell path写exp目录,下面直接写命令,有点不一样。增加用户时在用户名末尾加美金符号,目的是隐藏用户,使得“net user”看不出来。

5.我提权时使用的ms.exe是可以在webshell上运行的,可以执行参数中的命令;而这个taihou是窗口化的提权工具,适合在服务器上直接双击运行。刚开始我把taihou放在webshell上运行,导致一直不成功,这里长个教训。

对于服务器管理:

1.如果你想要和其他人共用服务器搭建网站,一定要提防”猪队友“。站长之间的交流是很有必要的。

2.服务器管理员不仅仅要设置好网站权限,还要定期打补丁,否则容易被人使用漏洞提权。

3.建议远程桌面端口不应该是默认的3389,而应该是50000或60000附近的端口。因为入侵者扫描的时候一般是扫描1~10000的端口。这样可以大大减小风险。

4.如果可能还是建议装一些防护软件,像安全狗之类的。

好了,就写这么多吧

Licensed under CC BY-NC-SA 4.0
-1