Ловить запуск процесса в ProcessNotifyRoutine хорошо, но есть такая подлая вещь как запуск COM объектов. Имею в виду те, которые как отдельный процесс живут. То есть через LPC каким-то макаром месага идет от одного процесса, в svchost.exe, который потом создаст процесс COM объекта.
Хочется иметь инфу о том, кто же этот процесс COM объекта реально создал. Какой процесс сделал CoCreateInstance и в результате svchost.exe запустил новый процесс.
Я подозреваю что надо ловить Lpc месаги и как-то по ним ловить создание. На сколько это реально?
не легче качнуть чё-нить для расстановки ловушек(API шпионы...) и брякаться на этой функе, а дальше смотреть чё за процесс вызвал... или не катит ? Тем более делается это в ядре... конечно систему будет тормозить, но если ненадолго, то потерпеть можно.
Dart Sergius пишет: А воабще для чего это? Для того чтобы полноценно определять, кто кого родил. Но не плодить чуть-чуть хуков там, чуть-чуть здесь, и еще вот там. А делать в одном месте все.
Ранг: 324.3 (мудрец), 222thx Активность: 0.48↘0.37 Статус: Участник
Создано: 12 апреля 2010 12:36 · Поправил: DenCoder · Личное сообщение · #7
Ну я бы пошел таким путем: немного реверса rpcrt4.dll, выход на таблицы Nt-функций в ntoskrnl.exe, нахождение нужных Nt-функций... Не знаю пока этого точно, но предполагаю с большой степенью вероятности, что для COM ntoskrnl направляет в соответствующий отдельный драйвер ядра, так что и CoCreateInstance в концов концов ведет к коду в этом драйвере. В нем должно быть спрятано много раз недокументированное API, в числе которых более интересный механизм уведомлений о действиях над COM-объектами, чем предлагает нам юзермод. Вопрос исследований...
DenCoder Ядро ничего про это не знает. Hexxx Посмотрел, вобщем запрос на порт "\RPC Control\epmapper". Процесс создаёт rpcss!_LaunchActivatorServer() в контексте svchost. Самое простое что приходит на ум, это как вы и сказали ловить Lpc-сообщения. Только нужно вкрыть их формат.
Пара старых статей мож... www.drdobbs.com/article/printableArticle.jhtml?articleId=184416546&dept_url=/ www.drdobbs.com/article/printableArticle.jhtml?articleId=184416246&dept_url=/
Ratinsh пишет: Пара старых статей мож...http://www.drdobbs.com/article/printableArticle.jhtml?articleId= 184416 546&dept_url=/http://www.drdobbs.com/article/printableArticle.jhtml?ar ticleId=184416 246&dept_url=/ Это про ring-3. А мы про ядро.