Перехват API-функций

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Перехват API-функций

Сообщение karlex » 12.07.2009 (Вс) 13:07

Замена NOP'ов и MOV EDI, EDI на интерцептор.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Перехват API-функций

Сообщение Хакер » 12.07.2009 (Вс) 13:12

Потоко-безопасный. Только с чего ты взял, что этот способ не требует наличия дизассемблера/ассемблера?

Или твой перехват будет работать только если функция начинается mov edi, edi? А если на mov eax, eax? А если не будет начинаться? Тогда «Простите, но перехватчик недостаточно умён, чтобы перехватить эту функцию»? А если функция начиналась на mov edi, edi, но её уже перехватил такой же перехватчик?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Перехват API-функций

Сообщение karlex » 12.07.2009 (Вс) 13:38

Хакер писал(а):Потоко-безопасный. Только с чего ты взял, что этот способ не требует наличия дизассемблера/ассемблера?

Или твой перехват будет работать только если функция начинается mov edi, edi? А если на mov eax, eax? А если не будет начинаться? Тогда «Простите, но перехватчик недостаточно умён, чтобы перехватить эту функцию»? А если функция начиналась на mov edi, edi, но её уже перехватил такой же перехватчик?

Ааа, понял. Да, ты как всегда прав. Для начала реализую самый элементарный вариант, а там посмотрим, быть может здорово затянет (уже начинает) и буду дальше развивать.
Кстати, мне кажется и с бесполезным кодом перед API-функцией могут возникнуть проблемы, ведь нет гарантий, что всегда будет доступно 5 байт.

Хакер писал(а):А если не будет начинаться?

В смысле не будет начинаться?
Последний раз редактировалось karlex 12.07.2009 (Вс) 13:41, всего редактировалось 1 раз.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Перехват API-функций

Сообщение Хакер » 12.07.2009 (Вс) 13:40

В смысле если функция не будет начинаться бесполезной инструкцией.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Перехват API-функций

Сообщение karlex » 12.07.2009 (Вс) 13:49

Да, сложноватая ситуация.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

Пред.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Mail.ru [бот] и гости: 63

    TopList