Показать сообщение отдельно
Старый 24.03.2015, 08:25   #6
urban81
Писатель
Доп. информация
Лампочка Подготовка к инжекту!

Всем здравствуйте.Делаем инжект на тестовом приложении в эмуляторе винсе. В ПЕ идиторе будем править ехе!.Для этого сделаем приложение, которое может писать и читать в виртуальный ком порт. Сначала сделаем, которое пишет...Запустим его...Потом которое читает с порта - его то мы и будем править в ПЕ идиторе...При запущенном приложении, которое пишет, наше приложение которое читает, при удачном инжекте(перехвате АПИ реадфайл...)-будет писать лог...
Предисловие:
В ПЕ-эдиторе при разборе тестового ехе есть такие вещи:
...
Imports Table: COREDLL.dll
OrigFirstThunk: 00003108 (Unbound IAT)
ForwarderChain: 00000000
First thunk RVA: 00004000
Ordn Name 859 (Bound to: 8000035B)
...
"Ordn Name" - это, возможно, имя АПИ функции. "Bound to" - это думаю адресс функции. Значит "Ordn Name" - это название функции и "Bound to"-это адресс функции...То внедрив вручную длл со своей функцией (API ReadFile) можно поменять "Bound to", зная нужный "Ordn Name" и ... Вот только неизвестно какой какой "Ordn Name" принадлежит API ReadFile? И нет подобных примеров как эту задумку реализовать.По логике вещей это всё должно происходить в коде - добавляешь в таблицу новые функции и заменяешь (запомнив) у прежних адреса на свои. а в своих используешь запомненые адреса.но чтоб в готовом ехе это сделать - надо функцию свою в него дописать и вычислить адреса.
"ordn name" = ordinal,
Нужный номер можно подсмотреть в public\common\oak\lib\<arch>\retail\coredll.def
Выкладываю проект с тестовыми приложениями.Кто в теме ПРОБУЕМ!!!Всем спасибо!
[[Ссылки могут видеть только зарегистрированные пользователи. ]]>
urban81 вне форума  
Пользователь сказал cпасибо:
 
Время генерации страницы 0.03324 секунды с 11 запросами