SQL Server SA权限总结

server

最近需要用到这些东西的时候,发现自己有点记不清了,这真是人老了做什么都不行了。没办法,只好在自己的blog上总结一下吧。使用Sqlexec加管理员的过程这里冰血就不涉及了。

前提需要工具:SQL Query Analyzer和SqlExec Sunx Version

第一部分:
有关去掉xp_cmdshell来保护系统的分析总结:
首先知道一下语句:
1.去掉xp_cmdshell扩展过程的方法是使用如下语句:
Code:
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扩展过程的方法是使用如下语句:
Code:
sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'

现在看看现象:
我们在取得SA权限后远程用Sqlexec执行cmd命令,出现提示SQL_ERROR,那么很可能是去掉了xp_cmdshell。

现在来看看被去掉xp_cmdshell后恢复的两种方法:
方法一、使用SQL Query Analyzer连接对方后直接写入,挺方便
Code:
sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'

方法二、使用SqlExec Sunx Version
首先在SqlExec Sunx Version的Format选项里填上%s,在CMD选项里输入
Code:
sp_addextendedproc 'xp_cmdshell','xpsql70.dll'

或者对Sql2000情况下使用
Code:
sp_addextendedproc 'xp_cmdshell','xplog70.dll'

另外使用SqlExec Sunx Version来去除xp_cmdshell的方法
和加的时候选择条件一样,然后输入
Code:
sp_dropextendedproc 'xp_cmdshell'

就可以了

第二部分:
假如对方已经把xplog70.dll删除或者改了名,我们来用下面的方法继续我们的hack任务:
当出现如下现象暗示代表很有可能是xplog70.dll删除或者改了名。
在查询分析器中写入
Code:
sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll'

提示
数据库中已存在名为'xp_cmdshell'的对象

那么我们如何恢复呢?
其实按照高手lcx提供的方法,我们可以通过使用查询分析器中写脚本来实现。
具体脚本源代码请点击连接获得。

 

时间: 2025-01-20 12:55:31

SQL Server SA权限总结的相关文章

SQL Server SA权限总结经典技术

server 前提需要工具: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')

SQL Server SA权限总结经典技术_MsSql

前提需要工具: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

Microsoft SQL Server SA权限安全

在获得SA密码后,往往因为服务器管理者或"前人"将net.exe和net1.exe被限制使用,无法添加管理员账号.我们知道VBS在活动目录(ADSI)部分有一个winnt对象,用来管理本地资源,利用它可以不依靠CMD等命令就能添加一个管理员,具体代码如下: 在获得SA密码后,往往因为服务器管理者或"前人"将net.exe和net1.exe被限制使用,无法添加管理员账号.我们知道VBS在活动目录(ADSI)部分有一个winnt对象,用来管理本地资源,利用它可以不依靠C

SQLServer · 最佳实践 · RDS for SQL Server 2012 权限限制的提升与改善

title: SQLServer · 最佳实践 · RDS for SQL Server 2012 权限限制的提升与改善 author: 石沫 背景 SQL Server 作为一种强大的关系型数据库,能够提供所有场景的应用.在绝大多数云计算公司中,都提供了SQL Server作为服务的云数据库服务,譬如阿里云.但既然是服务,那么服务就需要可管理,可控制,因此,在云计算初期,都对云数据库服务进行了严格的权限控制,好处就是可控可管理,但给用户会带来一些限制,某些限制实际上是可以再细粒度管控.因此,今

MS SQL数据库SA权限入侵的感悟

想必大家都知道MSSQL中SA权限是什么,可以说是至高无上.今天我就它的危害再谈点儿,我所讲的是配合NBSI上传功能得到WebShell.在讲之前先说几个条件,否则得到Shell是有难度的.1.存在SQL注入,并且数据库类型是MSSQL.2.连接数据库的权限必须是SA.3.后台必须有文件上传的程序.好了,我们找到一个网址hxxp://www.6x36x.com/fangchan/listpro.asp?id=53,用NBSI一会就一目了然了.很好,数据库类型是MSSQL,权限是SA,再看看第三个

关于sql server sa密码的破解的一个方法

server|破解 小弟最近发现了sql server加密密码的函数pwdencrypt(),在sp_addlogin存储过程中,又发现了口令比较的函数pwdcompare(),在sp_password存储过程中,虽然是单向加密的,但是能通过穷举来猜到sa的密码,当然其他的登录帐户的密码也是可以猜到的原帖:http://community.csdn.net/Expert/topic/3249/3249297.xml?temp=.9472315 邹建的改进的帖子: http://community

SQL Server的sa密码丢失解决

在网上看了很多如何修改SQLServer2005的密码的方法.大多数都是转了同一个帖子: 用windows权限进入,然后修改当前实例属性中的安全项,然后重新启动就可以修改了,但是操作手顺与我的SQLServer貌似不同.大概是SP1之前可以这么做吧. 首先用windows账户登录,然后在master表里执行: <div codepanel"=""> EXEC sp_password NULL, '你的新密码', 'sa'   ------------以下为网络搜集

The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator

今天遇到一个案例,在使用命令修改一个测试服务器(SQL Server 2014标准版)的服务器排序规则时,遇到了下面错误信息 (具体账号信息脱敏处理,随机生成一个账号密码) The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator     c:\SQLServer_12.0_Full>Setup /QUIET /ACTION=REBUILDDATABAS

理解SQL Server中的权限体系(下)----安全对象和权限

原文:http://www.cnblogs.com/CareySon/archive/2012/04/12/SQL-Security-SecurableAndPermission.html     在开始阅读本文之前,请确保你已经阅读过上一篇文章,文章地址:     理解SQL Server中的权限体系(上)----主体   简介     在上一篇文章中,我对主体的概念做了全面的阐述.本篇文章接着讲述主体所作用的安全对象以及所对应的权限.   理解安全对象(Securable)     安全对象