| eXeL@B —› Вопросы новичков —› API Hook без модификации кода | 
| Посл.ответ | Сообщение | 
| 
 | 
Создано: 10 января 2009 17:11  · Личное сообщение · #1 Привет. Поиск по сайту выдает в основном перехват процессов и их АПИ, надо немного другое, желательно без сплайсинга. Хочу поинтересоваться, возможно ли совершить перехват, например, CreateFile следующим образом: 1. положить свою DLL в папку с EXE и назвать ее kernel32.dll 2. переопределить функцию CreateFile на свою и вызвать ее 3. подключить внутри этой DLL оригинальную kernel32.dll и передать ей управление Если это возможно буду очень признателен за какие-нибудь исходники (желательно ASM), перечисление проблем возникающих при этом или более подробный алгоритм реализации. Спасибо. ![]()  | 
| 
 | 
Создано: 10 января 2009 17:21  · Личное сообщение · #2  | 
| 
 | 
Создано: 10 января 2009 17:55 · Поправил: coderess  · Личное сообщение · #3 1. положить свою DLL в папку с EXE и назвать ее kernel32.dll Сначала программа будет сканировать текущую папку на наличие в ней необходимых библиотек, следовательно этот вариант возможен, на tuts4you есть пара injectme, в которых реализована внедрение путем замены библиотеки, помещением последней в текущий каталог 2. переопределить функцию CreateFile на свою и вызвать ее Это изменение таблицы импорта? не совсем понял о чем идет речь. ----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes ![]()  | 
| 
 | 
Создано: 10 января 2009 19:59  · Личное сообщение · #4  | 
| 
 | 
Создано: 11 января 2009 02:05  · Личное сообщение · #5  | 
| 
 | 
Создано: 14 января 2009 07:30 · Поправил: Neo32  · Личное сообщение · #6 Помнится я такую Фигню уже мутил даже написал прогу которая создает исходник библиотеки для фасма в которую включены эти функции домой приду скину просьба топик не закрывать  
З.Ы. Как и обещал прога в аттаче.Она создает исходник (асм) длл с импортироанными из другой длл функцииями(только по именам).Можно дописать код полученного исходника для отлова функций GetModuleHandleA и подобных для перехвата в том случаее если прога создает свою таблицу импорта.Недостаток - патчить все же придется имя библиотеки в таблице импорта например на kernel31.dll так как в первую очередь грузятся длл из системных папок. Хотя прога эта мне не очень помогла так как экзешник каким то образом все раво получал реальный хэндл библиотек минуя мой перехватчик а не хэндл моей библиотеки и получал реальные адреса процедур.Может кто знает каким образом это возможно?Прога была запакована секюромом 7.хх версии.Надеюсь тебе поможет  
![]()  | 
| 
 | 
Создано: 14 января 2009 10:56  · Личное сообщение · #7  | 
| 
 | 
Создано: 14 января 2009 17:00  · Личное сообщение · #8  | 
| eXeL@B —› Вопросы новичков —› API Hook без модификации кода | 









 

 Для печати