Сейчас на форуме: jinoweb (+4 невидимых)

 eXeL@B —› Программирование —› Права на OpenProcess и DuplicateHandle в elevated
Посл.ответ Сообщение

Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 24 марта 2020 19:49
· Личное сообщение · #1

Есть прога, манифестом запущенная от админа, моя, можно править. Для полноты картины - ее запускает другая прога через CreateProcess, если имеет значение - параметрами запуска тоже можно играть.
Есть другая прога, уже не моя, запущена от юзера, в которой сидит моя длл.
Надо перекинуть хэндл из 2й проги в первую, все нужное перекидываю через пайпы, но если 2я прога запущена от юзера - OpenProcess с PROCESS_DUP_HANDLE на pid 1й проги говорит нет доступа.
Как можно решить сию проблему?




Ранг: 338.5 (мудрец), 349thx
Активность: 2.112.42
Статус: Участник

Создано: 24 марта 2020 21:00
· Личное сообщение · #2

Как можно решить проблему элевации прав.. эксплойтом или глупостью юзера

-----
vx





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 24 марта 2020 21:06
· Личное сообщение · #3

Значит открывай не из 2-го процесса первый, а наоборот. Копировать можно в любую сторону.

| Сообщение посчитали полезным: ZLOFENIX

Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 24 марта 2020 21:34
· Личное сообщение · #4

difexacaw пишет:
глупостью юзера

Именно она и является проблемой, от которой все это и ползет.
Archer пишет:
Копировать можно в любую сторону

А вот этого не знал, попробую, правда это будет еще костыльней.




Ранг: 338.5 (мудрец), 349thx
Активность: 2.112.42
Статус: Участник

Создано: 24 марта 2020 21:39
· Личное сообщение · #5

ZLOFENIX

Скопируй в изолированный процесс с урезанными правыми описатель с полным доступом, создай защиту

-----
vx




Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 24 марта 2020 21:57 · Поправил: ZLOFENIX
· Личное сообщение · #6

Archer пишет:
Копировать можно в любую сторону

Хотя стоп, в смысле можно звать DuplicateHandle в любом из процессов на хендл из первого или предлагаешь копирнуть из 2го в 1й что-то? Мне как раз нужен хендл из 1го во 2м.
ZLOFENIX пишет:
Скопируй в изолированный процесс с урезанными правыми описатель с полным доступом, создай защиту

Совсем садизм какой-то.




Ранг: 338.5 (мудрец), 349thx
Активность: 2.112.42
Статус: Участник

Создано: 24 марта 2020 22:17
· Личное сообщение · #7

ZLOFENIX

Да, изврат так не делается. Если два обьекта, не важно процесса изолированы по причине безопасности, то интерфейс должен строиться безопасным, а не на извратах в частности с открытием общего доступа к обьектам. Ты создаёшь уязвимость.

И либа обычно не сидит" в процессе, если это так, то это попытка уйти из под слоя системной защиты. Сидит значит скрытно и на более низком уровне прав.

Что привело к необходимости обмена описателями ?

Очевидно что это никакой даже не примитив интерфейс, это попытка обойти защиту. Это никак не сработает легальным путём.

-----
vx




Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 24 марта 2020 22:39 · Поправил: ZLOFENIX
· Личное сообщение · #8

Да не, ты слишком глубоко копаешь, все гораздо проще.
Есть лаунчер игр, моя длл в нем хватает создание процессов и передает хэндл на процесс из CreateProcessInternal в мою х64 прогу, которая без извращений вроде HeavensGate сует в него эту же длл, ну почти без извращений - угоном контекста, так и пауканим по надобности. С гейтом я знатно наимелся, работает не у всех. Моя основная прога запускается от админа, еще и с дебаг привилегиями, она уже запускает 2ю, которая инжектор, а вот лаунчер игор запускают юзеры и руки у них.. юзерские, приходится костылить.
Имею радость имения с хэндлами, т.к. посчитал что проще перекинуть его с полным доступом, чем ид созданного процесса, ибо фиг знает откроется он или нет на полный доступ, пока он в заморозке сразу после создания.




Ранг: 338.5 (мудрец), 349thx
Активность: 2.112.42
Статус: Участник

Создано: 24 марта 2020 22:47
· Личное сообщение · #9

ZLOFENIX

> без извращений вроде HeavensGate сует в него эту же длл, ну почти без извращений - угоном контекста, так и пауканим по надобности.

Так это же весь штатный набор извратов

-----
vx




Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 24 марта 2020 22:53 · Поправил: ZLOFENIX
· Личное сообщение · #10

difexacaw пишет:
Так это же весь штатный набор извратов

Ну в дотнет - обычный CreateRemoteThread.
Просто лаунчер - х32, а запускаемое - х64 тоже, подходящих вариантов знаю только эти два - врата и х64 костыль, который втыкает длл.



Ранг: 145.8 (ветеран), 191thx
Активность: 0.140.36
Статус: Участник

Создано: 25 марта 2020 10:54 · Поправил: Alchemistry
· Личное сообщение · #11

К сожалению, эта тема показывает в очередной раз общий уровень писателей читов и античитов (первые рано или поздно переходят во вторую фазу). Из описания совершенно непонятно зачем твоей инжектнутой длл описатель процесса, запущенного от админа и на другом IL, если цитата "все нужное перекидываю через пайпы".

| Сообщение посчитали полезным: difexacaw

Ранг: 4.2 (гость)
Активность: 0.04=0.04
Статус: Участник

Создано: 25 марта 2020 10:57
· Личное сообщение · #12

ZLOFENIX, копировать хэндл должна прога с правами. Можно сразу из CreateProcessInternal перехватчика делать инжект, без извратов. Для этого потребуется отобразить образ инжектора в процесс лаунчер.




Ранг: 338.5 (мудрец), 349thx
Активность: 2.112.42
Статус: Участник

Создано: 25 марта 2020 19:19 · Поправил: difexacaw
· Личное сообщение · #13

Alchemistry


Они не могут описать(сформулировать) задачу, так как скилл около нулевой, есчо поверх комерс мотив; считают приватом всякий тривиальный треш связанный с искомой задачей

Тут рядом в теме на днях один такой нарисовался, ответ на любой вопрос в виде ссылки на ghb найденной в гугле.

-----
vx





Ранг: 90.1 (постоянный), 91thx
Активность: 0.290.56
Статус: Участник

Создано: 25 марта 2020 19:37
· Личное сообщение · #14

difexacaw пишет:
Они не могут описать(сформулировать) задачу,

Может ты просто тупой?
Игра запускается от лаунчера когда юзеру вздумается с обычными привилегиями, а инжектору нужно поймать этот момент чтобы замаппить чит в клиент игры.
Для этого лежит дллка в папке с лаунчером, когда лаунчер запускает процесс игры дллка узнает нужный хэндл и ей нужно передать это в инжектор, но он запущен от админа, и у дллки тупо нет прав чтобы инициировать связь с более привилегированным процессом.

-----
В облачке многоточия


| Сообщение посчитали полезным: ZLOFENIX

Ранг: 16.3 (новичок), 3thx
Активность: 0.010.06
Статус: Участник

Создано: 25 марта 2020 19:39 · Поправил: ZLOFENIX
· Личное сообщение · #15

hiddy пишет:
без извратов

Извраты появляются при х86->х64.

Boostyq
Практически да, кроме момента читов.

Alchemistry пишет:
К сожалению, эта тема показывает в очередной раз общий уровень писателей читов и античитов (первые рано или поздно переходят во вторую фазу). Из описания совершенно непонятно зачем твоей инжектнутой длл описатель процесса, запущенного от админа и на другом IL, если цитата "все нужное перекидываю через пайпы".

А я говорил что это читы или античиты? Может тема показывает желание пернуть в лужу у некоторых старперов? Тебе до слов "все нужное" докопаться хочется, без полного мануала по передаваемым данным не прожить? Надо - значит надо.

difexacaw пишет:
комерс мотив

А это ты где нашел? Еще и скилл приплел.

Болезные, придумали какую-то дичь и обсирают по придуманным причинам.

Задачу решил перекинув в прогу с правами ид процесса и таки успешно открыв из него.


 eXeL@B —› Программирование —› Права на OpenProcess и DuplicateHandle в elevated
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати