Посл.ответ |
Сообщение |
Ранг: 64.0 (постоянный), 2thx Активность: 0.04↘0.01 Статус: Участник
|
Создано: 12 июня 2008 17:24 · Личное сообщение · #1
Как в драйвере определить какая программа послала запрос в драйвер?
| Сообщение посчитали полезным: |
|
Ранг: 162.2 (ветеран) Активность: 0.09↘0 Статус: Участник
|
Создано: 12 июня 2008 17:53 · Личное сообщение · #2
PsGetCurrentProcess
| Сообщение посчитали полезным: |
Ранг: 64.0 (постоянный), 2thx Активность: 0.04↘0.01 Статус: Участник
|
Создано: 12 июня 2008 18:38 · Личное сообщение · #3
и имя в возвращаемой структуре будет именем вызывающего приложения?
| Сообщение посчитали полезным: |
Ранг: 64.0 (постоянный), 2thx Активность: 0.04↘0.01 Статус: Участник
|
Создано: 12 июня 2008 19:23 · Личное сообщение · #4
Подскажите смещения в структуре EPROCESS имени процесса для различных версий Windows (для разных сервиспаков они одинаковы или разные?)
| Сообщение посчитали полезным: |
Ранг: 387.4 (мудрец) Активность: 0.17↘0 Статус: Участник системщик
|
Создано: 12 июня 2008 19:58 · Личное сообщение · #5
Tolkin, google рулит:
blog.csdn.net/agentfactory/archive/2006/09/07/1190810.aspx
| Сообщение посчитали полезным: |
Ранг: 64.0 (постоянный), 2thx Активность: 0.04↘0.01 Статус: Участник
|
Создано: 12 июня 2008 20:17 · Личное сообщение · #6
спасибо.
еще нашел вариант решения.
в процедуре DriverEntry (она вызывается процессом System) в структуре EPROCESS ищем это имя и смещение его в структуре.
а затем при приходе запроса в драйвер определяем имя в структуре по найденному ранее смещению.
Метод универсален и не нужно под каждую версию Винды знать смещение
| Сообщение посчитали полезным: |
Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 12 июня 2008 20:19 · Личное сообщение · #7
PsGetCurrentProcessId можно, а резолвить лучше в ринг3, чтоб не хардкодить смещения для всех ОС, ибо везде они разные, гугл поможет найти структуры.
| Сообщение посчитали полезным: |
Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 12 июня 2008 22:19 · Личное сообщение · #8
Tolkin пишет:
Подскажите смещения в структуре EPROCESS
EPROCESS Vista http://www.nirsoft.net/kernel_struct/vista/EPROCESS.html
----- EnJoy! | Сообщение посчитали полезным: |
Ранг: 309.8 (мудрец), 21thx Активность: 0.17↘0 Статус: Участник
|
Создано: 12 июня 2008 23:37 · Личное сообщение · #9
а как можно резолвить смещения в епроцесс из ринг3
----- Shalom ebanats! | Сообщение посчитали полезным: |
Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 13 июня 2008 17:21 · Личное сообщение · #10
Смещения в епроцесс из ринг3 никак, а вот имя отрезолвить по пиду вполне.
| Сообщение посчитали полезным: |
Ранг: 105.9 (ветеран) Активность: 0.06↘0 Статус: Участник
|
Создано: 13 июня 2008 17:31 · Личное сообщение · #11
SLV пишет:
а как можно резолвить смещения в епроцесс из ринг3
Можно через ZwSystemDebugControl, но только в XP
| Сообщение посчитали полезным: |
Ранг: 309.8 (мудрец), 21thx Активность: 0.17↘0 Статус: Участник
|
Создано: 14 июня 2008 00:22 · Поправил: SLV · Личное сообщение · #12
в 2003sp1 её урезали как явную брешь в безопасности системы
----- Shalom ebanats! | Сообщение посчитали полезным: |
Ранг: 14.0 (новичок) Активность: 0=0 Статус: Участник
|
Создано: 14 июня 2008 12:38 · Личное сообщение · #13
По собственному опыту скажу - зае***сь хардкодить смещения EPROCESS для всех осей.
ZwQueryInformationProcess юзать тогда уж
| Сообщение посчитали полезным: |