Сейчас на форуме: asfa, Rio (+5 невидимых)

 eXeL@B —› Вопросы новичков —› Возможна ли автоматизация
Посл.ответ Сообщение

Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 15 февраля 2014 07:10 · Поправил: VOLKOFF
· Личное сообщение · #1

Скажем, нужно сравнить методы\адреса хуков оверлеев программ для захвата DX OpenGL, программ такого рода, как известно много и каждый раз "руками" бы смотреть не хотелось. Как можно максимально упростить задачу, по возможности автоматизировав шаги?




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

Создано: 15 февраля 2014 23:27 · Поправил: DenCoder
· Личное сообщение · #2

VOLKOFF пишет:
Как можно максимально упростить задачу,

задачи нет

Но чтоб имелось хотя б одно решение, выделяйте сигнатуры )

-----
IZ.RU




Ранг: 42.2 (посетитель), 42thx
Активность: 0.040
Статус: Участник

Создано: 16 февраля 2014 01:49
· Личное сообщение · #3

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



Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 16 февраля 2014 10:34 · Поправил: VOLKOFF
· Личное сообщение · #4

DenCoder пишет:
выделяйте сигнатуры

О каких сигнатурах речь?

На стадии глобального хука, поиска opengl32.dll, d3d8.dll, d3d9.dll, dxgi.dll, или ddraw.dll в процессе итп, пока не интересно, а вот когда подключенная библиотека ставит куда-нибудь, скажем, в районе IDirect3DDevice9 хук, это то, что как раз интересует.

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




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

Создано: 16 февраля 2014 15:08
· Личное сообщение · #5

Так нужен просто детект хуков методов интерфейсов? Сомневаюсь, что есть готовое, но кто его знает. Если и есть, то трудно сказать, по каким ключам искать.

А сигнатуры я имел в виду - помимо поиска статических IID, поиск IID в QueryInterface и ещё различных функциях (в зависимости от интерфейса) по "слепку" маш. кода. Цель - получить все IID интерфейсов, указатели на vptr и дальше в цикле проверять принадлежность адреса метода родному модулю. Не в диапазоне адресов -> хук. Но тут могут быть всякие подводные камни. В зависимости от доступности устройства, поддерживающего интерфейс и его включенных функций, система может сама поставить где-то хук.

Реализовать это возможно и не исключено, что есть. Только пока проще найти библиотеку для хуков DirectX, чем для их поиска )

-----
IZ.RU


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


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

Создано: 17 февраля 2014 14:24 · Поправил: Dr0p
· Личное сообщение · #6

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


 eXeL@B —› Вопросы новичков —› Возможна ли автоматизация
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати