黑帽联盟

 找回密码
 会员注册
查看: 2184|回复: 0
打印 上一主题 下一主题

[系统安全] 利用MSSQL提权实例

[复制链接]
yun 黑帽联盟官方人员 

920

主题

37

听众

1364

积分

超级版主

Rank: 8Rank: 8

  • TA的每日心情
    奋斗
    2019-10-18 11:20
  • 签到天数: 678 天

    [LV.9]以坛为家II

    Shell:http://xxx.com/admin/Databackup/1.aspx
    Pass:123123
    ServerIP : 内网ip,外网ip
    HostName: TFSEC-87343FD20
    OSVersion : Microsoft Windows NT 5.2.3790 Service Pack 2
    IISVersion : Microsoft-IIS/6.0
    PATH_TRANSLATED: C:\TongFangYunFanWebSite\admin\Databackup\1.aspx
    IDProcess MemorySize Threads
    2224360tray 3809280 24
    3460sqlmangr 5652480 2
    3552VMwareTray 1335296 1
    user可执行cmd
    用户名                会话名             ID 状态    空闲时间   登录时间
    administrator         console             0 运行中          . 2011-3-27 12:33
    tfcloudweb                                1  唱片        无    2011-5-25 9:31
    \\TFSEC-87343FD20的用户帐户
    -------------------------------------------------------------------------------
    1                        Administrator            ASPNET                  
    Guest                    IUSR_TFSEC-87343FD20     IWAM_TFSEC-87343FD20     
    SUPPORT_388945a0         TfcloudWeb
    TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING
    上面是搜集到的服务器的资料,下面是初步分析:
    服务器位于内网,开放3389,但无法直接连接,需要转发。
    服务器装了360、MSSQL,是个虚拟机。
    User组可以调用cmd.exe。
    现在有2个用户在登录服务器,一个是administrator,另一个是tfcloudweb,另外,还发现服务器上有一个名为1的用户,看了下权限,是administrators组,很明显是前人进去过了,并且有很大可能是用户名为1,密码也为1的,这时就可以直接用Lcx转发,然后连上3389,用1登录了,后来证实这个用户确实密码是1,这是取巧的方法,这里不做讨论。
    我的思路是,了解了基本情况后,传了pr和Churrasco上去,发现都执行的时候都没有回显,这说明可能是这2个漏洞都被打了补丁,也有可能是我传的目录没有执行权限。
    但是我换了好几个目录执行都没有回显,这说明这2个漏洞确实被补了,这条路断掉。
    前边说过,服务器装的有MSSQL,这里就看看能不能利用。
    很多web都自带MSSQL提权功能的,这个shell的截图为:
    9.png

    文本框“ConnString”里写的是连接语句,这里默认连接的是本地数据库,用户名是sa,密码为空,我直接单击了“submit”按钮,看能不能连上,回显如图:
    11.png
    没有回显,说明连接失败。

    再试试密码是不是sa,如图:
    12.png

    Submit,如图:
    13.png
    可以看到,有回显了,这说明我们连接成功,MSSQL的密码就是sa,好了,现在看看可以不可以执行DOS命令。

    单击“SQL_Dir”,如图:
    15.png

    直接单击“Dir”,如图:
    16.png
    回显成功,说明可以执行DOS命令,这样就好办了。

    直接用MSSQL就可以添加用户了,单击“SA_Exec”,如图:
    17.png

    我们在这个下拉框里选择“XP_cmdshell exec”,如图:
    18.png

    这里就可以执行DOS命令了,直接把页面上显示的默认语句的net user换成net user drvfan drvfan /add,单击“SA_Exec”执行即可,
    19.png

    命令成功完成,说明添加成功,再执行:
    Netlocalgroup administrators drvfan /add

    就把用户drvfan添加到管理员组了,如图:
    20.png

    现在来看一下服务器上都有哪些用户:
    21.png

    可以看到,drvfan已经添加上了,再看看drvfan是不是管理员:
    23.png
    可以看到,drvfan已经是管理员了。

    OK,提权成功,剩下的就是lcx转发,然后连接了。
    这里就不写了,具体参考lcx使用方法即可。

    另外说明一下,每个人用的web不一样,具体的步骤也不一样,你比如我前边单击“Sql Tools”进入到了MSSQL的连接界面,在你的shell里可能就不是单击这个按钮,而是单击别的按钮,这是一点区别。
    但是方法和原理都是一样的。
    完毕。

    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部