Запустить процесс как локальная система

У меня есть обычная программа, запущенная от имени администратора. Но это не совсем все привилегии, которые мне нужны. Как повысить этот процесс до уровня учетной записи локальной системы?

Я не хочу использовать какие-либо внешние инструменты для достижения этого уровня. Было бы идеально, если бы я мог вызвать некоторые функции Win32 для достижения этой цели. Я также готов написать и запустить службу Windows, чтобы передать свои привилегии соответствующему процессу.

Кто-нибудь, пожалуйста, дайте мне подсказку. Мои поиски просто отправляют меня по кругу.

-1

Решение

  1. Программа отправляет идентификатор сеанса в сервис
  2. Сервис вызывает OpenProcessToken и DuplicateTokenEx для создания токена локальной системы
  3. Сервис вызывает SetTokenInformation для изменения идентификатора сеанса токена в соответствии с
  4. Сервис вызывает DuplicateHandle для создания дескриптора токена
  5. Сервис отправляет дескриптор в программу
  6. Программа вызывает SetThreadToken, используя полученный дескриптор

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector