sql server 2000 删除xp cmdshell存储过程

 存储过程是存储在 SQLServer中的预先写好的SQL语句集合,其中危险性最高的扩展存储过程就是xp_cmdshell了,它可以执行操作系统的任何指令,而SA是 Microsoft SQLServer的管理员帐号,拥有最高权限,它可以执行扩展存储过程,并获得返回值,比如执行:

exec master..xp_cmdshell 'net user test 1234 /add'和exec master..xp_cmdshell 'net localgroup administrators test /add'

这样对方的系统就被添加了一个用户名为test,密码为1234,有管理员权限的用户,如图一所示。

删除方法为:

到sql server的查询分析器中,试用存储过程sp_dropextendedproc就可删除xp_cmdshell这个存储过程。

格式为:EXEC sp_dropextendedproc 'xp_cmdshell'

需要时可使用sp_addextendedproc恢复

格式为:EXEC sp_addextendedproc xp_cmdshell,'xplog70.dll'。

彻底删除SQL Server2000的xp_cmdShell扩展存贮过程

一、xp_cmdshell的删除及恢复

1、判断xp_cmdshell是否存在

(SELECT count(*) FROM master.dbo.sysobjects WHERE xtype = 'X' AND name ='xp_cmdshell')

返回结果为1就ok

2、恢复xp_cmdshell的方法

删除扩展存储过过程xp_cmdshell的语句

exec sp_dropextendedproc 'xp_cmdshell'

恢复cmdshell的sql语句

exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
exec master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll';select count(*) from master.dbo.sysobjects where xtype='x' and

返回结果为1就ok

否则需上传c:\inetput\web\xplog70.dll后

exec master.dbo.sp_addextendedproc 'xp_cmdshell',’c:\inetput\web\xplog70.dll’;--

注:这个方式适用于在webshell中上传。。。。。

如果是用以下方法删除

drop procedure sp_addextendedproc
drop procedure sp_oacreate
exec sp_dropextendedproc 'xp_cmdshell'

则可以用以下语句恢复

dbcc addextendedproc ("sp_oacreate","odsole70.dll")
dbcc addextendedproc ("xp_cmdshell","xplog70.dll")

这样可以直接恢复,不用去管sp_addextendedproc是不是存在

3.彻底删除xp_cmdshell扩展存储过程

使用上面介绍的删除语句后,在磁盘上找到xplog70.dll这个文件。改名或者删除这个文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL Serverxp_cmdshell是一种在数据库执行操作系统级命令的功能。然而,xp_cmdshell也被黑客滥用,用于进行SQL Server注入攻击。 xp_cmdshell注入是一种利用SQL Serverxp_cmdshell的漏洞,通过构造恶意SQL语句来执行任意操作系统命令。攻击者可以将自己的恶意脚本嵌入到SQL查询,并在成功执行攻击后,实现对操作系统的非授权访问。 为了防止xp_cmdshell注入,我们可以采取以下措施: 1. 最佳实践规范:在部署SQL Server时,应遵循最佳实践并限制对xp_cmdshell的使用。只有授权用户才能使用xp_cmdshell,并最小化对其的权限。 2. 存储过程控制:编写存储过程是一种减少xp_cmdshell注入风险的好方法。通过使用存储过程,可以在执行xp_cmdshell之前进行输入验证和参数验证,以防止恶意代码执行。 3. 输入验证:在开发和设计应用程序时,应该对用户提供的输入进行验证和过滤,以防止恶意代码或SQL注入的注入攻击。 4. 更新和补丁:及时安装SQL Server的更新和补丁是防止xp_cmdshell注入的关键。这些更新和补丁将修复已知的漏洞,并加强系统的安全性。 5. 审计和监控:配置SQL Server以记录和监视xp_cmdshell的使用是防止注入的另一种方法。通过实时监控xp_cmdshell的使用情况,可以及时发现和阻止潜在的注入攻击。 总之,防止xp_cmdshell注入是很重要的,我们需要采取适当措施保护SQL Server,如限制访问权限、验证输入、及时更新等。这样可以提高系统的安全性,并减少被黑客攻击的风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值