转载:http://www.cnblogs.com/lbk/archive/2005/04/28/146973.html
昨天看了存储过程的一点东西,其中就说到了xp_cmdshell 这个东西,以前只是知道黑客能通过MSSQL的漏洞来入侵你的系统,不是太明白。当知道了xp_cmdshell 的强大之后,试了一下,有点开窍了,下面是这方面的一点东西。
xp_cmdshell可以让系统管理员以操作系统命令行解释器的方式执行给定的命令字符串,
并以文本行方式返回任何输出,是一个功能非常强大的扩展存贮过程。
一般情况下,xp_cmdshell对管理员来说也是不必要的,xp_cmdshell的消除不会对Server造成
任何影响。
可以将xp_cmdshell消除:
Use Master
Exec sp_dropextendedproc N’xp_cmdshell’
Go
如果需要的话,可以把xp_cmdshell恢复回来:
Use Master
Exec sp_addextendedproc N’xp_cmdshell’, N’xplog70.dll’
Go
xp_cmdshell 操作系统命令外壳
这个过程是一个扩展存储过程,用于执行指定命令串,并作为文本行返回任何输出。
语法:
xp_cmdshell command_string[,no_output]
command_string 要执行的命令串
no_output 不返回命令执行的输出
说明:
在把xp_cmdshell的执行许可权授予用户时,用户将能够在Windows NT命令
外壳执行运行SQL Server(通常是本地系统)的帐号有执行特权的任何
操作系统命令。
例:
1、EXEC master..xp_cmdshell "dir *.exe"
返回可执行文件的列表
2、EXEC master..xp_cmdshell "copy d:\test1.jpg e:\" no_output
不返回输出
3、特别是执行
EXEC master..xp_cmdshell "net start awhost32"
EXEC master..xp_cmdshell "net stop awhost32"
可以启动和停止远程的PCAnywhere服务。对远程服务器操作很有帮助。
最后提醒大家,注意你的系统的安全,保护自己,提高警惕。
[SQL]关于xp_cmdshell 。。注意安全!
相关推荐
- Distributed Cache(分布式缓存)-SqlServer - 云霄宇霁 - 博客园
- SQLServer数据库中常用的3种分页查询方法
- SQL分页查询:offset xxx rows fetch next xxx rows only 方式_陈皮糖chen的博客-CSDN博客
- 【学习路径】程序开发学习路径图
- SQL Server通过条件搜索获取相关的存储过程等对象 - 潇湘隐者 - 博客园
- SQL Server 创建链接服务器(SSMS可以访问的有效) - 听风吹雨 - 博客园
- SQL Server 2016 配置链接服务器及数据还原【图文】_高文龙_51CTO博客
- 如何使用SQL Server链接服务器访问DB2 Server - 寒枫 - 博客园