分享、学习、提高
2007/05/11 12:54
参照用Win2003 server打造安全的个人Web服务器对服务器进一步做了一些配置。出于对SQL安全性的考虑,我参照

引用

4、删除以下的扩展存储过程格式为:
  use master
  sp_dropextendedproc '扩展存储过程名'

  xp_cmdshell:是进入操作系统的最佳捷径,删除

  访问注册表的存储过程,删除
  Xp_regaddmultistring  Xp_regdeletekey  Xp_regdeletevalue  Xp_regenumvalues  
  Xp_regread      Xp_regwrite     Xp_regremovemultistring    

删除了这些存储过程,但今天发现在MSSQL中使用新建作业时提示找不到xp_regread,于是就想办法恢复这些SP。找了另一台2003的机子对比,通过sp_addextendedproc exec 'xp_regread','xp_star.dll',恢复了'xp_regread'。
但是这回提示变成,
Cannot load the DLL xp_star.dll, or one of the DLLs it references.
Reason: 126(The specified module could not be found.).
(注:我的其实是中文的,但错误提示没Copy下来,在搜索时找到了他人英文版出的一模一样的提示)

晕,再把其它过程也都恢复,
sp_addextendedproc xp_regaddmultistring,'xp_star.dll'
sp_addextendedproc xp_regdeletekey,'xp_star.dll'
sp_addextendedproc xp_regdeletevalue,'xp_star.dll'
sp_addextendedproc xp_regenumvalues,'xp_star.dll'
sp_addextendedproc 'xp_cmdshell','xplog70.dll'
还是一样的提示,不知道哪里出了问题:(

MSSQL重打一次SP4,打一下后,还是不行。

最后在安装目录的Install目录下,看到了最后一个文件xpstar.sql,有希望,查询分析器运行了它一下,哈,搞定:)
发表评论
表情
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
昵称   密码   游客无需密码
网址   电邮   [注册]