我想在数据库中执行cmd命令
xp_cmdshell,sys.sp_OACreate,sys.sp_OAMethod老提示被关闭~~~
我也知道是sql的安全性改动了xpweb70.dll或者sys.sp_OACreate之类的东西
求一种能向cmd调用的可行方案。。。
22 个解决方案
#1
顶,,学习!
#2
补充一下 我用的是sa账号
#3
可以把您C盘目录下的system32的权限 ,和system32文件里的cmd.exe net.exe net1.exe的权限进行相关设置,那样别人不仅无法使用cmd.exe以外 也没有上传文件的权限,对您的系统后台加了一道坚固的堡垒。
设置方法 右击该文件,点属性,然后点安全,然后您便可以把权限进行相关设置
设置方法 右击该文件,点属性,然后点安全,然后您便可以把权限进行相关设置
#4
其实我想掉用cmd。。。。现在权限问题也解决了
我只是想知道 怎么用sql调用cmd来执行:“ping 192.168.1.1”
我只是想知道 怎么用sql调用cmd来执行:“ping 192.168.1.1”
#5
最好有执行结果
#6
--1:得到客户端的IP地址
/************* IP **************/
declare @ip varchar(20),@hst varchar(20),@sql varchar(100)
declare @str varchar(100)
set @str='PING '+Host_Name()
create table #tmp(aa varchar(200))
insert #tmp exec master..xp_cmdshell @str
select top 1 @ip = replace(left(aa,charindex(':',aa)-1),'Reply from ','')
from #tmp where aa like 'reply from %:%'
drop table #tmp
select @ip
#7
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO
exec xp_cmdshell 'ping 192.168.1.1'
#8
xp_cmdshell这个是写在xplog70.dll里面的函数,肯定被禁用了么
现在哪个sqlserver还可以用啊
目前能用的是:sp_oacreate 和 sp_oamethod
而且我说:ping 192.168.1.1只是打个比方,我要进行更深一层次的cmd命令:不如修改注册表,反注册,格式化之类的
我想要一个可以执行的,不要反馈信息也可以的,sql调用cmd的通用写法
现在哪个sqlserver还可以用啊
目前能用的是:sp_oacreate 和 sp_oamethod
而且我说:ping 192.168.1.1只是打个比方,我要进行更深一层次的cmd命令:不如修改注册表,反注册,格式化之类的
我想要一个可以执行的,不要反馈信息也可以的,sql调用cmd的通用写法
#9
-- 允许 SQL Server 调用 ole 组件
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
-- 调用 wscript.shell.exec 方法执行命令
declare @obj int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',null,'cmd.exe /c mkdir c:\test';
#10
sql server 2005 需要启用
xp_cmdshell 服务器选项才可以调用 xp_cmdshell 扩展过程。
需要启用 Ole Automation Procedures 服务器选项才可以调用 ole 组件。
需要启用 Ole Automation Procedures 服务器选项才可以调用 ole 组件。
#11
怎么启用xp_cmdshell和Ole Automation Procedures
我是远程的,目前只有他们的sa账号,进行远程登录他们的数据库服务器,还有个就是可以上传文件到他们服务器
我是远程的,目前只有他们的sa账号,进行远程登录他们的数据库服务器,还有个就是可以上传文件到他们服务器
#12
使用 sqlcmd.exe 客户端登陆服务器,执行 #7 和 #9 中的 sp_configure 语句就可以了。
#13
你也可以去 sql 2005开始菜单 中--sql 2005 --配置工具 -reporting server配置管理器 去配置!
启动cmdshell,及ole 自动化
#14
#7和#9只能开启OLE
开不起xp_cmdshell的
开不起xp_cmdshell的
#15
sql 2005开始菜单。。。。。我不能远程桌面他们,我只有ip来连接他们的数据库,他们的远程桌面密码是不会给我的
#16
可以开启 ole ,就可以使用 wscript.shell.exec 方法执行命令,不过不能显示结果。
declare @obj int, @ret int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',@ret out,'cmd.exe /c mkdir c:\test';
exec sp_oadestroy @obj;
#17
#18
你的想法是对的,新建一个text的文件夹也是可以的,但是我想操作注册表,我想修改一个注册表,好像不会执行
#19
我研究过这个
sql可以调用cmd,但是最多执行ping,mkdir之类的,你想动注册表 肯定不会运行
c#也是这样,调用cmd可以,但是遇到操作注册表的代码就会停止
vb你写到web页面也会停止
我给你个思路:
写个vbs上传到他机器,然后写个类似木马一样的东西,让他自动执行
vbs参考代码:
这个不会弹出任何东西,很隐蔽,自己考虑下怎么让他自动执行
sql可以调用cmd,但是最多执行ping,mkdir之类的,你想动注册表 肯定不会运行
c#也是这样,调用cmd可以,但是遇到操作注册表的代码就会停止
vb你写到web页面也会停止
我给你个思路:
写个vbs上传到他机器,然后写个类似木马一样的东西,让他自动执行
vbs参考代码:
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "regsvr32 -s -u D:\abc.dll"
这个不会弹出任何东西,很隐蔽,自己考虑下怎么让他自动执行
#20
果然可以,但是我不知道怎么让他自动执行,先百度几下 ,待会再问你
#21
不能操作注册表? 我测试的可以!
不能操作注册表的关键在于 sql server 的服务帐号是否有权限!
hacker 就去专业的 hack 站点,那里有详细的教程!
declare @obj int, @ret int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',@ret out,'REG.exe ADD \\.\HKLM\Software\My';
exec sp_oadestroy @obj;
不能操作注册表的关键在于 sql server 的服务帐号是否有权限!
hacker 就去专业的 hack 站点,那里有详细的教程!
#22
这里讨论的是 SQL Server 技术,不是破坏 SQL Server 的方法!
#1
顶,,学习!
#2
补充一下 我用的是sa账号
#3
可以把您C盘目录下的system32的权限 ,和system32文件里的cmd.exe net.exe net1.exe的权限进行相关设置,那样别人不仅无法使用cmd.exe以外 也没有上传文件的权限,对您的系统后台加了一道坚固的堡垒。
设置方法 右击该文件,点属性,然后点安全,然后您便可以把权限进行相关设置
设置方法 右击该文件,点属性,然后点安全,然后您便可以把权限进行相关设置
#4
其实我想掉用cmd。。。。现在权限问题也解决了
我只是想知道 怎么用sql调用cmd来执行:“ping 192.168.1.1”
我只是想知道 怎么用sql调用cmd来执行:“ping 192.168.1.1”
#5
最好有执行结果
#6
--1:得到客户端的IP地址
/************* IP **************/
declare @ip varchar(20),@hst varchar(20),@sql varchar(100)
declare @str varchar(100)
set @str='PING '+Host_Name()
create table #tmp(aa varchar(200))
insert #tmp exec master..xp_cmdshell @str
select top 1 @ip = replace(left(aa,charindex(':',aa)-1),'Reply from ','')
from #tmp where aa like 'reply from %:%'
drop table #tmp
select @ip
#7
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO
exec xp_cmdshell 'ping 192.168.1.1'
#8
xp_cmdshell这个是写在xplog70.dll里面的函数,肯定被禁用了么
现在哪个sqlserver还可以用啊
目前能用的是:sp_oacreate 和 sp_oamethod
而且我说:ping 192.168.1.1只是打个比方,我要进行更深一层次的cmd命令:不如修改注册表,反注册,格式化之类的
我想要一个可以执行的,不要反馈信息也可以的,sql调用cmd的通用写法
现在哪个sqlserver还可以用啊
目前能用的是:sp_oacreate 和 sp_oamethod
而且我说:ping 192.168.1.1只是打个比方,我要进行更深一层次的cmd命令:不如修改注册表,反注册,格式化之类的
我想要一个可以执行的,不要反馈信息也可以的,sql调用cmd的通用写法
#9
-- 允许 SQL Server 调用 ole 组件
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
-- 调用 wscript.shell.exec 方法执行命令
declare @obj int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',null,'cmd.exe /c mkdir c:\test';
#10
sql server 2005 需要启用
xp_cmdshell 服务器选项才可以调用 xp_cmdshell 扩展过程。
需要启用 Ole Automation Procedures 服务器选项才可以调用 ole 组件。
需要启用 Ole Automation Procedures 服务器选项才可以调用 ole 组件。
#11
怎么启用xp_cmdshell和Ole Automation Procedures
我是远程的,目前只有他们的sa账号,进行远程登录他们的数据库服务器,还有个就是可以上传文件到他们服务器
我是远程的,目前只有他们的sa账号,进行远程登录他们的数据库服务器,还有个就是可以上传文件到他们服务器
#12
使用 sqlcmd.exe 客户端登陆服务器,执行 #7 和 #9 中的 sp_configure 语句就可以了。
#13
你也可以去 sql 2005开始菜单 中--sql 2005 --配置工具 -reporting server配置管理器 去配置!
启动cmdshell,及ole 自动化
#14
#7和#9只能开启OLE
开不起xp_cmdshell的
开不起xp_cmdshell的
#15
sql 2005开始菜单。。。。。我不能远程桌面他们,我只有ip来连接他们的数据库,他们的远程桌面密码是不会给我的
#16
可以开启 ole ,就可以使用 wscript.shell.exec 方法执行命令,不过不能显示结果。
declare @obj int, @ret int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',@ret out,'cmd.exe /c mkdir c:\test';
exec sp_oadestroy @obj;
#17
#18
你的想法是对的,新建一个text的文件夹也是可以的,但是我想操作注册表,我想修改一个注册表,好像不会执行
#19
我研究过这个
sql可以调用cmd,但是最多执行ping,mkdir之类的,你想动注册表 肯定不会运行
c#也是这样,调用cmd可以,但是遇到操作注册表的代码就会停止
vb你写到web页面也会停止
我给你个思路:
写个vbs上传到他机器,然后写个类似木马一样的东西,让他自动执行
vbs参考代码:
这个不会弹出任何东西,很隐蔽,自己考虑下怎么让他自动执行
sql可以调用cmd,但是最多执行ping,mkdir之类的,你想动注册表 肯定不会运行
c#也是这样,调用cmd可以,但是遇到操作注册表的代码就会停止
vb你写到web页面也会停止
我给你个思路:
写个vbs上传到他机器,然后写个类似木马一样的东西,让他自动执行
vbs参考代码:
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "regsvr32 -s -u D:\abc.dll"
这个不会弹出任何东西,很隐蔽,自己考虑下怎么让他自动执行
#20
果然可以,但是我不知道怎么让他自动执行,先百度几下 ,待会再问你
#21
不能操作注册表? 我测试的可以!
不能操作注册表的关键在于 sql server 的服务帐号是否有权限!
hacker 就去专业的 hack 站点,那里有详细的教程!
declare @obj int, @ret int;
exec sp_oacreate 'WScript.Shell',@obj out;
exec sp_oamethod @obj,'Exec',@ret out,'REG.exe ADD \\.\HKLM\Software\My';
exec sp_oadestroy @obj;
不能操作注册表的关键在于 sql server 的服务帐号是否有权限!
hacker 就去专业的 hack 站点,那里有详细的教程!
#22
这里讨论的是 SQL Server 技术,不是破坏 SQL Server 的方法!