在bat代码前面有没有什么好的代码获取管理员权限的

查看 192|回复 27
作者:kangaroo7758   
徒自伤悲   
可以参考一下
但是完全不依赖外部命令,检测可以做到,提权这个真没研究过,毕竟无论vbs还是ps都是需要解释器的,有大神感兴趣了可以研究一下纯批处理内置命令提权方法。
Forget_dust   
[ol]@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||(
powershell -Command "Start-Process '%~f0' -Verb RunAs"&&EXIT)[/ol]复制代码
since1979   
[ol]%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit[/ol]复制代码
溪流花落   
[ol]%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"[/ol]复制代码
Hendy12345   
[ol]if not "%1"=="am_admin" (
powershell -Command "Start-Process '%0' -ArgumentList 'am_admin' -Verb RunAs"
exit
)
[/ol]复制代码
Hendy12345   
[ol]if exist "%SystemRoot%\SysWOW64" path %path%;%p%\SysNative;%SystemRoot%\SysWOW64;%~dp0
bcdedit >nul
if '%errorlevel%' NEQ '0' (goto UACPrompt) else (goto UACAdmin)
:UACPrompt
%1 start "" mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&exit[/ol]复制代码
溪流花落   
[ol]>NUL 2>&1 REG.exe query "HKU\S-1-5-19" || (
    ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\Getadmin.vbs"
    ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\Getadmin.vbs"
    "%TEMP%\Getadmin.vbs"
    DEL /f /q "%TEMP%\Getadmin.vbs" 2>NUL
    Exit /b
)
[/ol]复制代码
徒自伤悲   
[ol]>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )[/ol]复制代码
Hendy12345   

辰羿 发表于 2026-2-23 14:56

收到谢谢
您需要登录后才可以回帖 登录 | 立即注册

返回顶部