当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server危险扩展删除与恢复详解

MSSQL
在SQL Server下数据库链接的使用
SQL Server数据库中处理空值时常见问题
巧用一条SQL语句实现其它进制到十进制转换
通过JDBC连接DB2数据库技巧
深入浅出SQL教程之嵌套SELECT语句
SQL Server备份文件中导入现存数据库
SQL多表格查询合并至单一声明的常用方式
也谈如何缩小SQL SERVER日志文件
四个语句帮你提高 SQL Server 的伸缩性
用JavaBean编写SQL Server数据库连接类
sql2k中新增加的Function的sqlbook 的帮助
Mssql处理孤立用户的存储过程
探讨SQL Server中Case 的不同用法
快速清除SQLServer日志的两种方法
解决Sql Server警报的疑难问题
MySQL的数据类型和建库策略
SQL SERVER应用问题解答13例(一)
SQL SERVER应用问题解答13例(二)
多种还原.bak数据库文件方式
SQL语句中的一些特殊参数如何用变量来代替

MSSQL 中的 SQL Server危险扩展删除与恢复详解


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 84 ::
收藏到网摘: n/a

  将有安全问题的SQL过程删除.比较全面.一切为了安全!

删除了调用shell,注册表,COM组件的破坏权限

MS SQL SERVER2000

使用系统帐户登陆查询分析器

运行以下脚本:

use master

exec sp_dropextendedproc 'xp_cmdshell'

exec sp_dropextendedproc 'xp_enumgroups'

exec sp_dropextendedproc 'xp_loginconfig'

exec sp_dropextendedproc 'xp_enumerrorlogs'

exec sp_dropextendedproc 'xp_getfiledetails'

exec sp_dropextendedproc 'Sp_OACreate'

exec sp_dropextendedproc 'Sp_OADestroy'

exec sp_dropextendedproc 'Sp_OAGetErrorInfo'

exec sp_dropextendedproc 'Sp_OAGetProperty'

exec sp_dropextendedproc 'Sp_OAMethod'

exec sp_dropextendedproc 'Sp_OASetProperty'

exec sp_dropextendedproc 'Sp_OAStop'

exec sp_dropextendedproc 'xp_regaddmultistring'

exec sp_dropextendedproc 'xp_regdeletekey'

exec sp_dropextendedproc 'xp_regdeletevalue'

exec sp_dropextendedproc 'xp_regenumvalues'

exec sp_dropextendedproc 'xp_regremovemultistring'

exec sp_dropextendedproc 'xp_regwrite'

drop procedure sp_makewebtask

go

删除所有危险的扩展:

exec sp_dropextendedproc 'xp_cmdshell' [删除此项扩展后,将无法远程连接数据库]

以下3个存储过程会在SQL SERVER恢复备份时被使用,非必要请勿删除

#exec sp_dropextendedproc 'xp_dirtree' [删除此项扩展后,将无法新建或附加数据库]

#exec sp_dropextendedproc 'Xp_regread' [删除此项扩展后, 还原数据库辅助]

#exec sp_dropextendedproc 'xp_fixeddrives' [删除此项扩展后,将无法还原数据库]

恢复脚本

use master

EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

EXEC sp_addextendedproc xp_enumgroups ,@dllname ='xplog70.dll'

EXEC sp_addextendedproc xp_loginconfig ,@dllname ='xplog70.dll'

EXEC sp_addextendedproc xp_enumerrorlogs ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_getfiledetails ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc Sp_OACreate ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OADestroy ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OAGetErrorInfo ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OAGetProperty ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OAMethod ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OASetProperty ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc Sp_OAStop ,@dllname ='odsole70.dll'

EXEC sp_addextendedproc xp_regaddmultistring ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regdeletekey ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regdeletevalue ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regenumvalues ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regremovemultistring ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regwrite ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_dirtree ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_regread ,@dllname ='xpstar.dll'

EXEC sp_addextendedproc xp_fixeddrives ,@dllname ='xpstar.dll'

go

全部复制到"SQL查询分析器"