0

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

    2023.04.24 | admin | 223次围观

    加微信群或QQ群可免费索取:学习教程

    教程列表见微信公众号底部菜单

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

    一、通过文件上传获取webshell

    1、寻找和登录后台

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

    图1:进入后台

    2、上传构造文件

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

    图2:上传特殊构造的文件

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

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

    图3:查看新建的菜单记录

    4、获取上传文件的地址

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

    图4:获取图片的真实地址

    5、获取webshell

    使用中国菜单一句话后门管理软件新建一条记录,脚本类型选择asp,地址填写“;.jpg”本地文件上传到服务器,密码填写网页一句话后门的密码,如图5所示,成功获取webshell。

    图5:获取webshell

    二、信息查看及提权

    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:获取源代码中的数据库配置

    2、配置MSSQL以及执行命令

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

    图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:连接3389错误提示

    图9:换端口后连接失败

    4、获取安全狗配置文件

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

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

    5、修改计算机名称

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

    图11:远程桌面保护白名单

    6、登录服务器

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

    图12:登录远程桌面

    三、总结与提高

    1、信息扩展

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

    图13:获取其它用户和密码

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

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

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    标签: webshell
    发表评论