Как запустить CMD/программу в системе (LocalSystem) в Windows?

Admin

Для выполнения некоторых действий в Windows недостаточно иметь права администратора. Например, вы не можете заменять или удалять системные файлы и некоторые ключи реестра, останавливать системные службы или выполнять некоторые другие потенциально небезопасные действия, которые могут повлиять на стабильность вашей операционной системы. В этих случаях системный администратор может стать владельцем файлов или других объектов или выполнять действия от имени системной учетной записи. В этой статье мы рассмотрим, как запустить приложение или командную строку в качестве привилегированного SYSTEM (LocalSystem) в Windows 10.

Отказ от ответственности. Внесение изменений в образ Windows от имени учетной записи SYSTEM — нестандартная операция. Обратите внимание, что неправильные действия с привилегиями NT AUTHORITY\SYSTEM могут привести к поломке вашей Windows. На практике запуск процессов от имени системной учетной записи используется редко. В большинстве случаев решить проблему можно стандартными способами:
беги как, запускать приложение без прав администратора и подавлять запрос UAC, взять на себя ответственность на файлы/ключи реестра, отключить контроль учетных записей для всех или только определенные приложения, предоставить привилегии управления сервисом для пользователей без прав администратора.

Содержание:

  • Как запустить CMD под учетной записью локальной системы в Windows (версии до Vista)?
  • Как запустить CMD/Process как SYSTEM в Windows 10 с помощью PSExec?
Встроенная учетная запись SYSTEM используется SCM (Менеджер службы контроля) для запуска системных служб и управления ими. С помощью системной учетной записи (она также может называться ПОЛНОМОЧИЯ NT\СИСТЕМА, Локальная система или Компьютер\ЛокалСистем), выполняется большинство системных служб и процессов (включая ядро ​​ОС NT). Откройте оснастку MMC управления службами (services.msc) и обратите внимание на сервисы, которые Локальная система в Вход в систему как столбец. Эти службы работают под учетной записью SYSTEM.
службы Windows, работающие как локальная система

Как запустить CMD под учетной записью локальной системы в Windows (версии до Vista)?

В Windows XP и Windows Server 2003 (которые больше не поддерживаются) был интересный трюк, который позволял вам запустить программу или интерактивную командную строку (cmd.exe) с системными привилегиями, используя Task Планировщик. Достаточно было открыть командную строку под учетной записью администратора и выполнить следующую команду:

at 10:23 /interactive cmd.exe

где, 10:23 текущее время + одна минута (в 24-часовом формате)

Когда наступит указанное время, появится командная строка, работающая под учетной записью локальной системы. Если вы запустили эту команду в сеансе терминала (RDP) в Windows Server 2003/XP, обратите внимание, что командная строка с правами System отображается только в сеансе консоли (подключиться к консоли компьютера можно через mstsc /console или mstsc /admin).

windows xp - запустить интерактивный cmd от имени системы

Windows 10 не поддерживает запуск интерактивной командной строки с помощью at команда. Рекомендуется использовать schtasks.exe вместо.

Предупреждение. Из-за улучшений безопасности эта задача будет выполняться в ожидаемое время, но не в интерактивном режиме. Используйте утилиту schtasks.exe, если требуется интерактивная задача ('schtasks /?' для подробностей). Запрос не поддерживается.
не может работать в Windows 10 — используйте утилиту schtasks.exe, если требуется интерактивная задача

Как запустить CMD/Process как SYSTEM в Windows 10 с помощью PSExec?

В Windows 7 и более поздних версиях интерактивная командная строка не может быть запущена под системной учетной записью с помощью планировщика заданий. Чтобы запускать команды как NT Authority\System, вы можете использовать PSExec.exe утилита от Sysinternals.

Вы можете загрузить инструмент PSExec.exe с веб-сайта Microsoft: https://docs.microsoft.com/en-us/sysinternals/downloads/psexec. Любой администратор Windows знаком с PSExec. В большинстве случаев он используется для удаленного управления Windows, а также имеет полезную функцию для запуска процессов от имени системной учетной записи. Некоторые антивирусы могут идентифицировать PSExec.exe как потенциально опасную программу (кстати, именно psexec использовался для распространения пресловутого вируса notpetya).

PSExec не нужно устанавливать. Откройте командную строку с повышенными привилегиями («Запуск от имени администратора»), перейдите в папку, в которой находится PSexec.exe, и выполните следующую команду:

psexec -i -s cmd.exe

– позволяет запустить процесс/приложение в интерактивном режиме (пользователь может взаимодействовать с приложением на рабочем столе; если вы не используете этот параметр, процесс запускается в сеансе консоли),

с – означает, что процесс (в данном случае командная строка) должен запускаться от имени системной учетной записи.

При первом запуске PsExec вам будет предложено принять лицензионное соглашение.

psexec -s -s cmd - запускать от имени системы

После запуска команды появится новое окно командной строки. Администрация NT\Система счет. Убедитесь, что это правда, выполнив эту команду:

whoami

запустить cmd под NT AUTHORITY\SYSTEM

Таким образом, вы можете запускать любую программу, команду или скрипт от имени системной учетной записи. Достаточно заменить cmd.exe в параметре PsExec на имя исполняемого файла приложения, которое вы хотите запустить.

В появившемся окне командной строки вы можете запускать любые команды от имени SYSTEM. Теперь вы можете изменять, переименовывать или удалять системные файлы/ключи реестра, принадлежащие TrustedInstaller или SYSTEM. Все программы или процессы, которые вы запускаете в этом окне, будут работать с повышенными привилегиями LocalSystem. Например, вы можете остановить системную службу или закрыть файл, открытый системным процессом.

Используя PSExec, вы можете открыть интерактивную командную строку с привилегиями NT AUTORITY\SYSTEM на удаленном компьютере. Для этого используется следующая команда:

psexec -s \\mun-b21pc12 cmd.exe

Если “Couldn’t install PSEXESVC service», убедитесь, что:

  • Командная строка запускается от имени администратора;
  • Другой экземпляр службы PSEXESVC не запущен Служба PSEXESVC

Существует также ряд сторонних инструментов для запуска приложений от имени системной учетной записи (AdvancedRun , Запуск от имени системы, PowerRun), но не вижу смысла их использовать. Во-первых, они сторонние и нельзя быть уверенным, что в них нет вредоносного кода. Во-вторых, официальная утилита PsExec от Microsoft отлично справляется со своей задачей.

Как восстановить (сбросить) поврежденный кэш значков в Windows 10?
Как восстановить (сбросить) поврежденный кэш значков в Windows 10?

Когда значки различных приложений и типов файлов отображаются в Проводнике, Windows вместо при до...

Цветной принтер печатает только в черно-белом режиме в Windows
Цветной принтер печатает только в черно-белом режиме в Windows

У одного из моих пользователей возникла досадная проблема с цветным принтером HP. После подключен...