Содержание
Даже при запуске программ с повышенными правами (администратор) некоторые разделы реестра и файлы недоступны для записи. Это может быть связано с тем, что файлы принадлежат TrustedInstaller, а администраторам не предоставляется доступ на запись. В этом случае запуск программы от имени TrustedInstaller может помочь исправить заблокированный раздел реестра или очистить файл, к которому все равно нельзя получить доступ.
СВЯЗАННЫЙ: Как запустить программу под учетной записью SYSTEM (LocalSystem) в Windows
Как запускать программы как TrustedInstaller
Вы можете запускать программы как TrustedInstaller, используя различные инструменты или методы. Следуйте одному из инструментов ниже, который подходит вам.
PowerRun
PowerRun — это бесплатная утилита, которая может запускать программы с привилегиями TrustedInstaller. Если у вас есть заблокированный раздел реестра или файл, принадлежащий TrustedInstaller, и вы не можете переименовать или заменить файл, этот инструмент может помочь.
Загрузите PowerRun и запустите его. Добавьте необходимые программы в список и запустите как TrustedInstaller.
Поддержка командной строки PowerRun
PowerRun поддерживает следующие аргументы командной строки.
Usage: PowerRun_x64.exe [/SW:Commands: /SW:0 = Hide window /SW:1 = Show window (Default) /SW:2 = Minimize window /SW:3 = Maximize window /WD:(Path) = Working directory /SYS = Only System User (Not TrustedInstaller) Examples: PowerRun_x64.exe "C:\Test.exe" PowerRun_x64.exe "C:\Test.exe" param1 param2 etc. PowerRun_x64.exe "C:\Test.bat" param1 param2 etc. PowerRun_x64.exe /SW:2 "/WD:C:\" notepad.exe C:\test.txt PowerRun_x64.exe Regedit.exe "C:\Test.reg" PowerRun_x64.exe Regedit.exe /S C:\Test.reg PowerRun_x64.exe %SystemRoot%\system32\cmd.exe PowerRun_x64.exe cmd.exe /k echo hello world! PowerRun_x64.exe /SYS cmd.exe /k echo hello world! PowerRun_x64.exe /SW:0 "Reg.exe" add "HKLM\Software\keyname" /v "valuename" /t REG_SZ /d "hello" /f
NSudo
NSudo (GitHub) — это инструмент, похожий на PowerRun, но он может запускать программы под учетной записью System (LocalSystem), Current User, Current Process или TrustedInstaller.
NSudo: поддержка командной строки
NSudo version 6.2.1812.31 -U:[ Option ] Create a process with specified user option. Available options: T TrustedInstaller S System C Current User P Current Process D Current Process (Drop right) PS: This is a mandatory parameter. -P:[ Option ] Create a process with specified privilege option. Available options: E Enable All Privileges D Disable All Privileges PS: If you want to use the default privileges to create a process, please do not include the "-P" parameter. -M:[ Option ] Create a process with specified Integrity Level option. Available options: S System H High M Medium L Low PS: If you want to use the default Integrity Level to create a process, please do not include the "-M" parameter. -Priority:[ Option ] Create a process with specified [rocess priority option. Available options: Idle BelowNormal Normal AboveNormal High RealTime PS: If you want to use the default Process Priority to create a process, please do not include the "-Priority" parameter. -ShowWindowMode:[ Option ] Create a process with a specified window mode option. Available options: Show Hide Maximize Minimize PS: If you want to use the default window mode to create a process, please do not include the "-ShowWindowMode" parameter. -Wait Make NSudo wait for the created process to end before exiting. PS: If you don't want to wait, please do not include the "-Wait" parameter. -CurrentDirectory:[ DirectoryPath ] Set the current directory for the process. PS: If you want to use the NSudo's current directory, please do not include the "-CurrentDirectory" parameter. -UseCurrentConsole Create a process with the current console window. PS: If you want to create a process with the new console window, please do not include the "-UseCurrentConsole" parameter. -Version Show version information of NSudo. -? Show this content. -H Show this content. -Help Show this content. Context Menu: -Install : Copy NSudo to the Windows directory and add the context menu. -Uninstall : Remove NSudo in the Windows directory and the context menu. PS: 1. All NSudo command arguments is case-insensitive. 2. You can use the "/" or "--" override "-" and use the "=" override ":" in the command line parameters. For example, "/U:T" and "-U=T" are equivalent. 3. To ensure the best experience, NSudoC does not support context menu.
Пример:
Чтобы запустить командную строку как TrustedInstaller, включите все привилегии и уровень целостности по умолчанию:
NSudo -U:T -P:E cmd
Процесс Хакер
Если вы используете превосходную программу Process Hacker, вы можете запустить программу как TrustedInstaller двумя различными способами:
Вариант 1. Использование встроенных опций
В Process Hacker, нажмите на вкладку Службы. Щелкните правой кнопкой мыши Доверенный установщик обслуживание и нажмите Начало.
Вернитесь на вкладку Процессы, щелкните правой кнопкой мыши TrustedInstaller.exe
нажмите Разнообразный и нажмите Запустите как этот пользователь …
Введите программу, которую вы хотите запустить, как TrustedInstaller — например, Командная строка (cmd.exe
) и нажмите ОК.
Обратите внимание, что поле Имя пользователя гласит NT AUTHORITY\SYSTEM
, Кроме того, когда программа запускается в контексте TrustedInstaller, диспетчер задач или любой диспетчер процессов показывает, что она работает как пользователь SYSTEM.
Это тот случай, если вы используете какой-либо метод в приведенной выше статье. Это нормально и может быть проигнорировано. Порожденный процесс запускается с привилегиями TrustedInstaller, хотя и говорит СИСТЕМА.
Вариант 2. Использование плагина
Загрузка плагина Process Hacker (файл .dll) позволяет запускать программы как TrustedInstaller через главное меню Process Hacker. Вот ссылки для скачивания плагина:
TrustedInstallerPlugin_x32.zip (for 32-bit) https://wj32.org/processhacker/forums/download/file.php?id=795&sid=37bfe842abb595845e0663ae5b4da06b TrustedInstallerPlugin_x64.zip (for 64-bit) https://wj32.org/processhacker/forums/download/file.php?id=796&sid=37bfe842abb595845e0663ae5b4da06b Source code at GitHub: https://github.com/processhacker/plugins-extra/tree/master/TrustedInstallerPlugin (via) TrustedInstaller - Process Hacker Forums: https://wj32.org/processhacker/forums/viewtopic.php?t=2407
После копирования TrustedInstallerPlugin.dll
к Process Hacker\Plugins
каталог, закройте и снова откройте Process Hacker.
Вы увидите Запуск от имени доверенного установщика… Команда под главным меню.
Заключительные слова
Запуск программ с привилегиями TrustedInstaller может быть рискованным, и вам не нужно делать это в большинство случаев, и до тех пор, пока программы могут получить доступ к необходимым системным файлам. Этот вид возвышения должен использоваться только тогда, когда это необходимо и если вы знаете, что делаете.
Я видел случаи, когда TrustedInstaller неправильно блокировал определенные системные библиотеки DLL, а сама система не могла прочитать файл, показывая 0 КБ в Проводнике. Доступ к свойствам файла и переход на вкладку «Безопасность» показали, что разрешения не могут отображаться. И ICACLS.EXE при запуске из командной строки администратора даже не видит файл, так как он говорит: «Система не может найти указанный файл. Успешно обработано 0 файлов; Не удалось обработать 1 файл ».
В конце концов мне пришлось использовать командную строку запуска с правами Ti, а затем очистить эти файлы перед запуском проверки системных файлов.