SQLserver提权
利用xp_cmdshell,在默认情况下xp_cmdshell禁用,是sa权限时不一定要拿到webshell利用
还是先看配置文件(一般配置文件都是与config相关)
查看当前网站权限
可以看到,权限很低
当打了很多补丁时,没有可利用的exp,数据库如果是高权限(sa)就可以用数据库提权
登录数据库
首先打开xp_cmdshell
Use master dbcc addextendedproc('xp_cmdshell','xplog70.dll');
调用xp_cmdshell
exec master.dbo.xp_cmdshell 'whoami'
SQLserver agent提权
sqlserver agent(SQL server代理),一个代理程序,存在于SQLserver数据库中,在服务器突然蓝屏、被ddos等出现问题时作紧急处理、作业提交;通过ms_db数据库里的存储过程:sp_add_job、sp_add_job_step让SQLserver agent执行相关函数或命令
用于普通权限下的提权
1、数据库配置文件
当前登录用户为webadmin
2、登录数据库
登录数据库后发现,当前用户权限很低
3、提权
注意:首先对方要开启sqlagent.exe
提权方法
修改目标主机名,登录数据库后,选择数据库名为msdb,直接粘在sql命令框内
看不到回显,在命令的第9行,可以看到把回显输出到了c:\inetpub\wwwroot\results.txt中
有时候因为某些问题可能执行命令没有回显,可以用这种方式输出到一个txt或者用dnslog的方式去看
登录webshell后先看数据库配置文件,看当前数据库权限
agent服务开启
适用于补丁很多,数据库权限很低