我做了一些搜索,找到了一个名为winexe的小工具的参考资料(这很棒,因为psexec正是我想要模拟的),但它的工作方式并不完全像我想要的那样……
我正在尝试做的是通过在bash.中编写脚本来自动执行内存转储过程(这通常是我在windows机器上手动执行的)。我将Redline文件夹复制到目标系统,使用psexec连接,然后运行.bat脚本。效果很好。在我的Linux机器上试过了,如果我把winexe和cmd.exe连接起来,然后手动运行.bat,它就能正常工作……
问题是,如果我尝试这样做:
winexe -U=username%password //hostname 'cmd.exe /c C:\Temp\Redline\RunRedlineAudit.bat'winexe -U=username%password //hostname C:/Temp/Redline/RunRedlineAudit.bat它会回调:
Failure Encountered:
Privilege Escalation Script and/or Helper Script not found.有没有关于这个问题可能是什么以及如何解决的想法?到目前为止,我认为我可能只是编写脚本一直到cmd.exe连接,然后手动完成最后一步,但这并不有趣;)
批处理脚本:
@ECHO off
SETLOCAL enableextensions enabledelayedexpansion
SET elevate=.\elevate.cmd
SET helper\.\Helper.bat
SET args=%1
IF NOT EXIST "%elevate%" goto :failed
IF NOT EXIST "%helper%" goto :failed
For /f "tokens=2 delims=[]" %%G in ('ver') Do (set _version=%%G)
For /f "tokens=2,3,4 delims=. " %%G in ('echo %_version%') Do (set _major=%%G& set _minor=%%H& set _build=%%I)
if "%_major%"=="5" goto sub5
if "%_major%"=="6" goto sub6
Echo unsupported OS version
goto:eof
:sub5
call %helper% %args%
GOTO :end
:sub6
ECHO Requesting Elevation
call %elevate% %helper% %args%
GOTO :end
:failed
:ECHO.
:ECHO.
ECHO Failure Encountered:
ECHO Privilege Escalation Script and/or Helper Script not found.
GOTO :end
:end
ENDLOCAL
@ECHO on发布于 2015-04-29 00:12:48
你能发布你的.bat文件内容吗?
同时,尝试使用--system标志运行winexe
发布于 2015-04-30 03:09:45
问题出在elevate.cmd和Helper.bat的路径上。
当您执行cmd /c C:\Temp\Redline\RunRedlineAudit.bat时,
cmd shell将在用户的文件夹中执行RunRedlineAudit.bat,并且它将
在那里搜索所需的文件。
要解决此问题,应在以下变量中将相对路径替换为绝对路径:
SET elevate=.\elevate.cmd
SET helper=.\Helper.bat
https://stackoverflow.com/questions/29830313
复制相似问题