И так! Про это скажут многие сказано достаточно, но всё это фуфло )))! Сказано, да сказано, тока вот как в реале реализовать, многие знают тока под Linux, многие знают, как это сделать, когда идёт патчинг отдельно взятой проги(например при её взломе), где всё халява, где всё видно в какую область данных она грузится и что да как вызывает!!!! А вот, что если просто взять и перехватить Syscall, тут вазникают траблы! И так есть два пути перехватаЖ 1) Заменить нужную функцию в таблице экспортов-> трабл эта таблица не всегда грузиться по одному и тому же месту 2) Взять, эту функцию и прям в ней поставить jmp на наш обработчик-> трабл, при этом надо не потереть ничего другого, а в Cpp — файле качественно сделать asm вставку по возврату! 3) все эти функции, грузит из библиотек ntoskernrl.exe(если я не ошибаюсь) и патчить его-> трабл СТРАШНО!
Вывод: Кто, если как-нить отлавлил syscall( Ну просто так для интереса например считал скока раз вызывается NtCreateFile )) )То напишите как, без всяких там умных слов!!! P.S: умные слова нужно обычно потом, когда идёт отладка!!!
Здравствуйте, Krio, Вы писали:
K>И так! Про это скажут многие сказано достаточно, но всё это фуфло )))! Сказано, да сказано, тока вот как в реале реализовать, многие знают тока под Linux, многие знают, как это сделать, когда идёт патчинг отдельно взятой проги(например при её взломе), где всё халява, где всё видно в какую область данных она грузится и что да как вызывает!!!! А вот, что если просто взять и перехватить Syscall, тут вазникают траблы! И так есть два пути перехватаЖ 1) Заменить нужную функцию в таблице экспортов-> трабл эта таблица не всегда грузиться по одному и тому же месту 2) Взять, эту функцию и прям в ней поставить jmp на наш обработчик-> трабл, при этом надо не потереть ничего другого, а в Cpp — файле качественно сделать asm вставку по возврату! 3) все эти функции, грузит из библиотек ntoskernrl.exe(если я не ошибаюсь) и патчить его-> трабл СТРАШНО! K>Вывод: Кто, если как-нить отлавлил syscall( Ну просто так для интереса например считал скока раз вызывается NtCreateFile )) )То напишите как, без всяких там умных слов!!! P.S: умные слова нужно обычно потом, когда идёт отладка!!!
есть hooklib от z0mbie
выходил с 29A issue 7
_h_t_t_p://vx.netlux.org/vx.php?id=z001
собственно делает простую вещь, дизассемблирует код что есть, и втыкает туда заглушку
дает тебе вызвать свой код перед вызовом любой функции
Nt там или нет это пофиг, чисто x86 disasm, patch, asm
Здравствуйте, rm822, Вы писали: R>собственно делает простую вещь, дизассемблирует код что есть, и втыкает туда заглушку R>дает тебе вызвать свой код перед вызовом любой функции
R>Nt там или нет это пофиг, чисто x86 disasm, patch, asm
Ну вот, снова здарова! Да, что вы всё заладили, то про кол! НЕЕЕТУ никакого exe или dll какую надо патчитьу НЕТУУУУУУ! про то как ловить ЛЮБОЙ системной вызов в КОНКРЕТНОЙ проге писал ещё рихтер в своей замечательной книжке( Благослови его бог)! Надо ловить syscall в самой системе (через драйвер если уж быть формальным), например как это делает SoftIce, она же нуждается в "коде" она просто ловит ситемный вызов! А как сделать перехват в проге,то это да реализуемо просто, согласен!
Здравствуйте, Krio, Вы писали:
K>Здравствуйте, rm822, Вы писали: R>>собственно делает простую вещь, дизассемблирует код что есть, и втыкает туда заглушку R>>дает тебе вызвать свой код перед вызовом любой функции
R>>Nt там или нет это пофиг, чисто x86 disasm, patch, asm
K>Ну вот, снова здарова! Да, что вы всё заладили, то про кол! НЕЕЕТУ никакого exe или dll какую надо патчитьу НЕТУУУУУУ! про то как ловить ЛЮБОЙ системной вызов в КОНКРЕТНОЙ проге писал ещё рихтер в своей замечательной книжке( Благослови его бог)! Надо ловить syscall в самой системе (через драйвер если уж быть формальным), например как это делает SoftIce, она же нуждается в "коде" она просто ловит ситемный вызов! А как сделать перехват в проге,то это да реализуемо просто, согласен!
Пробегись по статьям кудя я давал линк, там это есть и 100% есть либы чтобы это реализовать.
Меня эта тема не интересовала, но вот VX-community ее давно освоила.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Ловля системного вызова!
От:
Аноним
Дата:
27.10.06 19:06
Оценка:
Мда! ссылка стоящая! Но Опять много технологии, а конкретики мало! Уже читаю 2 часа, но тока обогащаюсь познаниями(что уже порядком надоело)! А вот чёткого семпла нигде нет! Похоже придётся вешать свой комп в сотый раз, пока придумаю как, потому что воды везде много, а вот чётко и конкретно по делу сказать мало что кто может(напоминвет одного препода из универа, к нему тоже обращаещся, а он мог в ответ тока разве что и сказать rtfm, а конкретно видать влом было)
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Krio, Вы писали:
IID><skipped сумбурный набор слов>
IID>Шрайбер
А при чём здесь автор учебника по микросхемам?
Ответ в одно слово-это скорее отмазка
IID>><skipped сумбурный набор слов>
IID>>Шрайбер K> А при чём здесь автор учебника по микросхемам? K> Ответ в одно слово-это скорее отмазка K>
Извините, но это переходит всякие границы. Для начала, вы не смогли нормально сформулировать вопрос. Потом, запостили совершенно не в тот форума. И затем, получив несмотря на все это _правильный_ и квалифицированный ответ, который привел бы вас и к примерам, и к деталям реализации, начали хамить.
Юноша, учитесь слушать то, что вам говорят, а не изливать потоки мыслей. Если что то не поняли — переспросите нормально. И прав тот преподаватель, который говорил вам — RTFM. Который из — вам уже указали.
Да, прежде чем отвечать — перечитайте правила форума и "как правильно задавать вопросы". Прочитали? Прочитайте еще раз, переведите дух и подумайте. Успехов.
Здравствуйте, Andrew S, Вы писали:
IID>>><skipped сумбурный набор слов>
IID>>>Шрайбер K>> А при чём здесь автор учебника по микросхемам? K>> Ответ в одно слово-это скорее отмазка K>>
AS>Извините, но это переходит всякие границы. Для начала, вы не смогли нормально сформулировать вопрос. Потом, запостили совершенно не в тот форума. И затем, получив несмотря на все это _правильный_ и квалифицированный ответ, который привел бы вас и к примерам, и к деталям реализации, начали хамить. AS>Юноша, учитесь слушать то, что вам говорят, а не изливать потоки мыслей. Если что то не поняли — переспросите нормально. И прав тот преподаватель, который говорил вам — RTFM. Который из — вам уже указали. AS>Да, прежде чем отвечать — перечитайте правила форума и "как правильно задавать вопросы". Прочитали? Прочитайте еще раз, переведите дух и подумайте. Успехов.
Предыдущий оратор прав. А по существу вопроса — www.sysinternals.com уже отменили? Там Руссинович (если не знали, то это очень известный, наравне с рекомендованным вам Шрайбером, автор по внутренностям Windows) рассказывает классический (с его руки) способ перехватить Native API. Открываем брявзер и вперед — читать.