利用文件上传漏洞渗透某传销服务器

Simeon

本文已投i春秋

https://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=30085&page=1#pid389491

   对于传销网站的服务器来说,目前都防护较强,使用安全狗等软硬件防范,但由于最终使用该产品的必须由人来实现,当获取webshell的情况下,通过一些技术手段可以绕过防火墙的防护,从而登录并获取服务器权限。下面分享一个通过文件上传漏洞获取webshell以及图片安全狗的防范获取服务器权限。

1.1通过文件上传获取webshell

1.寻找和登录后台

传销网站的后台地址一般都会进行修改,运气好的默认为admin,可以通过猜测和xss跨站攻击来获取,本文比较幸运,通过其域名+admin地址成功获取其后台,且通过弱口令登录其后台,如图1所示。在其后台地址中有多个模块,通过对每个模块的访问来查看是否存在上传的页面。

1.jpg

图1进入后台

2.上传构造文件

选择“化妆品”-“添加子菜单”,如图2所示,在子菜单名称、菜单排序中随便输入一些值,在菜单图片中选择一个mu.asp;.jpg——典型的IIS名称解析漏洞文件,单击“确定”将文件上传到服务器。

2.jpg

图2上传特殊构造的文件

3.查看新建的子菜单记录

   如图3所示,回到菜单管理中,可以看到在化妆品菜单中成功新建一条记录。

3.jpg

图3查看新建的菜单记录

4.获取上传文件的地址

    可以通过选择图片,在新建窗口中打开图片链接地址,也可以通过查看框架网页源代码来获取上传的图片的真实地址,如图4所示,获取上传文件的真实地址为“FileMenu/mu.asp;.jpg”,网站未对上传文件进行重命名等安全过滤和检测。

4.jpg

图4获取图片的真实地址

5.获取webshell

    使用中国菜单一句话后门管理软件新建一条记录,脚本类型选择asp,地址填写“http://www.somesite.com/FileMenu/mu.asp;.jpg”,密码填写网页一句话后门的密码,如图5所示,成功获取webshell。

5.jpg

图5获取webshell

1.2信息查看及提权

1.信息查看及提权思路

拿到shell后,通过webshell对服务器网站代码文件进行查看,对可读写目录进行查看,寻找一切可能用于提权的信息。如图6所示,通过查看该网站的代码,获取该网站目前使用MSSQL,且数据库用户为sa权限。看到这里,脑海中的提权思路:

(1)查看SQL Server的版本,如果低于2005版本,则在获取sa权限下,提权成功率在99%。

(2)通过恢复存储过程xp_cmdshell:

EXEC sp_configure 'show advanced options', 1; 

RECONFIGURE; 

EXEC sp_configure 'xp_cmdshell', 1; 

RECONFIGURE;  

(3)直接执行命令

 

6.jpg

图6获取源代码中的数据库配置

2.配置MSSQL以及执行命令

    在中国菜刀后门管理工具中,对获取的webshell配置数据库连接信息,然后进行数据库管理,如图7所示,可以执行“EXEC master..xp_cmdshell ‘set’”命令来查看系统当前环境变量等配置情况。

7.jpg

图7执行命令

   可以有三种方式来执行MSSQL命令:

(1)通过MSSQL的查询连接器,SQL Server 2000的查询分离器,通过SQL Server的连接服务器,连接成功后,可以在查询中执行命令。

(2)在中国菜刀后门管理工具的数据库管理配置好数据库连接参数,然后进行数据库管理即可。

(3)SQL Server数据库连接工具SQL TOOLS。该工具主要用来连接MSSQL和执行命令,是MSSQL提权辅助工具。

3.添加管理员用户并登录服务器

分别执行:

EXEC master..xp_cmdshell ‘net user hacker hacker12345!@# /add’

EXEC master..xp_cmdshell ‘net localgroup administrator hacker /add’

添加成功后,直接连接服务器,如图8所示,提示“由于会话在远程计算机上被注销,远程会话被中断。您的管理员或者另一个用户结束了您的连接”,该提示表明服务器上有防护,通过执行tasklist /svc | find "TermService"和 netstat -ano | find “端口号”来获取真实的3389连接端口51389,然后再次进行连接,如图9所示,一连接就出现错误提示。

8.jpg

图8连接3389错误提示

88-远程计算机已经结束.jpg

图9换端口后连接失败

4.获取安全狗配置文件

    对此问题,通过百度搜索情况,表明该情况是由于安全狗的防护导致的。通过shell,查看C盘,在“C:\Program File\SafeDog\SafedogServer\SafeDogGuardcenter”下将其配置文件proGuadData.ini下载到本地,如图10所示。在本地安装安全狗软件,然后将配置文件覆盖。

10-下载配置文件.jpg

图10下载安全狗防护配置文件

5.修改计算机名称

   如图11所示,在安全狗安远程桌面保护中仅仅允许三个计算机名为白名单,看到这里就知道如何绕过防火墙了,将个人计算机名称更改为白名单中的三个名称中的任何一个即可。

11-安全狗服务器端设置.jpg

图11远程桌面保护白名单

6.登录服务器

    再次登录该服务器的远程桌面,如图12所示,成功登录服务器,在该服务器上可以看到N多网站。

12-进入服务器.jpg

图12登录远程桌面

1.3总结与提高

1.信息扩展

在服务器上,发现一个txt文件,如图13所示,打开该文件后包含了一个新IP地址,管理员名称及其密码,使用该信息成功登录服务器,该信息估计是管理员为了方便管理留下的信息。

12.JPG

图13获取其它用户和密码

2.绕过安全狗拦截远程终端

   获取安全狗的配置文件,在本地还原后,将本地服务器修改为白名单服务器名称即可绕过。