关于存储过程安全
--删除master库中不安全的扩展存储过程
use master
go
--它可以直接运行系统命令--------------------------------------------------
execute sp_dropextendedproc 'xp_cmdshell'
go
--对安全有威胁的OLE存储过程-----------------------------------------------
execute sp_dropextendedproc 'sp_OACreate'
go
execute sp_dropextendedproc 'sp_OADestroy'
go
execute sp_dropextendedproc 'sp_OAGetErrorInfo'
go
execute sp_dropextendedproc 'sp_OAGetProperty'
go
execute sp_dropextendedproc 'sp_OAMethod'
go
execute sp_dropextendedproc 'sp_OASetProperty'
go
execute sp_dropextendedproc 'sp_OAStop'
go
--访问注册表的存储过程----------------------------------------------------
execute sp_dropextendedproc 'Xp_regaddmultistring'
go
execute sp_dropextendedproc 'Xp_regdeletekey'
go
execute sp_dropextendedproc 'Xp_regdeletevalue'
go
execute sp_dropextendedproc 'Xp_regenumvalues'
go
execute sp_dropextendedproc 'Xp_regremovemultistring'
go
execute sp_dropextendedproc 'Xp_regwrite'
go
--以下这些存储过程也有一定的安全隐患---------------------------------------
execute sp_dropextendedproc 'sp_sdidebug'
go
execute sp_dropextendedproc 'xp_deletemail'
go
execute sp_dropextendedproc 'xp_dirtree'
go
execute sp_dropextendedproc 'xp_dropwebtask'
go
execute sp_dropextendedproc 'xp_enumerrorlogs'
go
execute sp_dropextendedproc 'xp_eventlog'
go
execute sp_dropextendedproc 'xp_sscanf'
go
execute sp_dropextendedproc 'xp_findnextmsg'
go
execute sp_dropextendedproc 'xp_fixeddrives'
go
execute sp_dropextendedproc 'xp_getfiledetails'
go
execute sp_dropextendedproc 'xp_logevent'
go
execute sp_dropextendedproc 'xp_subdirs'
go
execute sp_dropextendedproc 'xp_makewebtask'
go
execute sp_dropextendedproc 'xp_readmail'
go
execute sp_dropextendedproc 'xp_runwebtask'
go
execute sp_dropextendedproc 'xp_readerrorlog'
go
execute sp_dropextendedproc 'xp_sendmail'
go
execute sp_dropextendedproc 'xp_sprintf'
go
execute sp_dropextendedproc 'xp_servicecontrol'
go
execute sp_dropextendedproc 'xp_stopmail'
go
execute sp_dropextendedproc 'xp_startmail'
go
execute sp_dropextendedproc 'xp_unc_to_drive'
go
--############################################################
--访问注册表的存储过程中
--execute sp_dropextendedproc 'Xp_regread'
--go
--删除后在SQL Server代理的作业中无法看作业的属性
--关系DLL文件为xpstar.dll
--############################################################
--execute sp_dropextendedproc 'xp_grantlogin'
--go
--无法 将 Drop PROCEDURE 用于 'xp_grantlogin',因为 'xp_grantlogin' 是 过程。请使用 Drop PROCEDURE。
--execute sp_dropextendedproc 'xp_logininfo'
--go
--无法 将 Drop PROCEDURE 用于 'xp_logininfo',因为 'xp_logininfo' 是 过程。请使用 Drop PROCEDURE。
--execute sp_dropextendedproc 'xp_revokelogin'
--go
--无法 将 Drop PROCEDURE 用于 'xp_revokelogin',因为 'xp_revokelogin' 是 过程。请使用 Drop PROCEDURE。
--############################################################
--execute sp_dropextendedproc 'xp_msver'
--go
--execute sp_dropextendedproc 'xp_loginconfig'
--go
--execute sp_dropextendedproc 'sp_addlogin'
--go
--execute sp_dropextendedproc 'sp_password'
--go
--execute sp_dropextendedproc 'sp_addsrvrolemember'
--go
--############################################################
--恢复扩展存储过程
--sp_addextendedproc 'xp_cmdshell', 'xpLOG70.dll'
--sp_addextendedproc 'Xp_regread', 'xpstar.dll'
恢复扩展存储过程,执行以下语句。至于sp_makewebtask 这个存储过程你可以从别人那拷贝过来一个脚本,执行以后生成的存储过程一样可以用。
use master
exec sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll'
exec sp_addextendedproc xp_dirtree,'xpstar.dll'
exec sp_addextendedproc xp_enumgroups,'xplog70.dll'
exec sp_addextendedproc xp_fixeddrives,'xpstar.dll'
exec sp_addextendedproc xp_loginconfig,'xplog70.dll'
exec sp_addextendedproc xp_enumerrorlogs,'xpstar.dll'
exec sp_addextendedproc xp_getfiledetails,'xpstar.dll'
exec sp_addextendedproc sp_OACreate,'odsole70.dll'
exec sp_addextendedproc sp_OADestroy,'odsole70.dll'
exec sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll'
exec sp_addextendedproc sp_OAGetProperty,'odsole70.dll'
exec sp_addextendedproc sp_OAMethod,'odsole70.dll'
exec sp_addextendedproc sp_OASetProperty,'odsole70.dll'
exec sp_addextendedproc sp_OAStop,'odsole70.dll'
exec sp_addextendedproc xp_regaddmultistring,'xpstar.dll'
exec sp_addextendedproc xp_regdeletekey,'xpstar.dll'
exec sp_addextendedproc xp_regdeletevalue,'xpstar.dll'
exec sp_addextendedproc xp_regenumvalues,'xpstar.dll'
exec sp_addextendedproc xp_regread,'xpstar.dll'
exec sp_addextendedproc xp_regremovemultistring,'xpstar.dll'
exec sp_addextendedproc xp_regwrite,'xpstar.dll'
exec sp_addextendedproc xp_fileexist,'xpstar.dll'
文章评论