Сейчас на форуме: zombi-vadim, zds (+4 невидимых) |
eXeL@B —› Программирование —› Вопросик о процессах. |
Посл.ответ | Сообщение |
|
Создано: 20 июля 2013 10:29 · Личное сообщение · #1 Возможно ли имея hToken (NT AUTHORITY\SYSTEM, NT AUTHORITY\LOCAL SERVICE) создать процесс от имени данного юзера? Системные привилегии имеются. Я полистал интернет и справочник по Native API, но по данному вопосу поиски не увенчались успехом. CreateProcessAsUser не хочет давать в диспетчере задач процессу имя пользователя SYSTEM. Но я практически уверен, что ответ где-то под носом. Знает кто на эту тему что-либо ? |
|
Создано: 20 июля 2013 11:12 · Личное сообщение · #2 Во-первых, зависит от токена. Не от каждого токена можно создавать процессы. Во-вторых, есть ещё CreateProcessWithTokenW, они работают немного по-разному. CreateProcessAsUser хочет сервис, насколько помню. В-третьих, что значит, что не хочет давать в диспетчере задач процессу имя пользователя. Брать надо Process Explorer/Process Hacker и смотреть токен, и от этого уже разбираться. |
|
Создано: 20 июля 2013 11:27 · Личное сообщение · #3 |
|
Создано: 20 июля 2013 12:06 · Личное сообщение · #4 1. Вообще я имел в виду не доступ к токену, а TokenPrimary или TokenImpersonation. Но коль процесс создаётся, вряд ли дело в этом. 2. А какая нужна? 3. Перефразирую вопрос. Что пишет Process Explorer/Process Hacker про токен нового процесса? Или ты предлагаешь погадать, что было сделано не так? 4. Если я правильно помню, для CreateProcessAsUser и так нужен сервис, ибо он хочет какую-то махровую привилегию, типа TCB. А коль уже в сервисе, не проще ли заспавнить обычный процесс с наследованием токена? Да, я в курсе, что ситуация может быть и другая, но уточнить не помешает. |
|
Создано: 20 июля 2013 12:32 · Личное сообщение · #5 |
|
Создано: 20 июля 2013 12:39 · Личное сообщение · #6 |
|
Создано: 20 июля 2013 13:09 · Личное сообщение · #7 |
|
Создано: 20 июля 2013 13:15 · Личное сообщение · #8 The SetThreadToken function assigns an impersonation token. А тебе нужен primary для создания процессов. Так что проверка такая вряд ли сгодится. А вообще дальше только гадания могу предложить. Брать надо и разбираться. Ключевые точки-прямо перед созданием через Process Hacker поглядеть на токен, сразу после создания поглядеть код ошибки и создалось ли успешно, там же поглядеть на новый процесс и его токен. |
|
Создано: 20 июля 2013 13:24 · Личное сообщение · #9 |
|
Создано: 20 июля 2013 13:31 · Личное сообщение · #10 |
eXeL@B —› Программирование —› Вопросик о процессах. |