老早就想写这篇文章了,为什么呢?因为至从在灰色轨迹看到COOLCAT的那篇《肉机保护术一》后,天天晚上就睡不着,感觉是不错,但总觉得好象有破绽,苦思苦想后,终于明白了,还是有很多破解方法和保护方法的,哈,但是最近很忙,所以不能写太多,自己好好理解吧,嗯,如果你有SQL基础的话,下面的东西,你会觉得很简单的.......
灰色上的那篇文章上的SQL语句是这样的:
if exists (select * from
dbo.sysobjects where id = object_id(N'[dbo].[XP_cmdshell]') and
OBJECTPROPERTY(id, N'IsExtendedProc') = 1)
exec sp_dropextendedproc N'[dbo].[XP_cmdshell]'
GO
破解
先sp_helpextendedproc XP_cmdshell 看看是哪个DLL文件
再EXEC sp_addextendedproc XP_cmdshell ,@dllname ='DLL文件名'
一般SQL2000是通过下面语句恢复
EXEC sp_addextendedproc XP_cmdshell ,@dllname ='XPlog70.dll'
而SQL97是通过下面语句恢复
EXEC sp_addextendedproc XP_cmdshell ,@dllname ='XPsql70.dll'
就这么简单,哈
嗯,所以说,那个灰色上的那篇文章做的保护还是不周到。
再加保护:
DROP PROCEDURE sp_addextendedproc
if exists (select * from