![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| ASGDeveloper |
|
||||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
Есть классический внедренец (инжектор) который внедряет dll-ку в некий процесс А. При помощи kerberos'а и иды был выявлен алгоритм инжекта:
И все казалось бы хорошо, но библиотека в конечном результате работает и делает свое черное дело, но вот в списке модулей загруженных А ее нет. Есть варианты почему? ЗЫ Правда при более тщательном разборе полета оказалось, что третья строка выглядит так:
Это сообщение отредактировал(а) ASGDeveloper - 15.12.2007, 20:54 |
||||
|
|||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
А как ты его получаешь ? Перехват API ? |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
||||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Попробуй использовать менее известную программу или получать список вручную, желательно парой различных способов. |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
||||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Чудес не бывает. Если ее нет среди "загруженных модулей" и она не прячется, значит успела выгрузиться. "Черное дело" может продолжать, например, нить или другая библиотека. Попробуй удалить ее файл после инжекта. Посмотрим получиться или нет. У тебя есть исходники и ее и "инжектора", что ты можешь утверждать что они делают, а чего нет ? |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
||||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Да, причем не обязательно именно тот же, который загружал библиотеку. Кто такая "идоа" ? Что показала попытка удаления файла библиотеки после инжекта ? |
|||
|
||||
| bartram |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1606 Регистрация: 22.2.2004 Где: Russia, Samara Репутация: 3 Всего: 29 |
||||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Спасибо. Буду знать. P.S. Просто из любопытства: неужели с ее помощью можно получить уверенность, что знаешь все фокусы, которые подопытный процесс может выкинуть ? (Не положив пару лет на его изучение |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
Файл кто-то держит и он не удаляется. Анлокер (unlocker) не видит. Мы с идочкой выделили несколько основных процедур и ее возможности позволяют дойти до таких вот подробностей:
Это сообщение отредактировал(а) ASGDeveloper - 16.12.2007, 16:53 |
|||
|
||||
| Riply |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Ну вот видишь. А ты говорил "не прячется" Теперь, когда все встало на свои места, осталась только техника. Получаем "не хакнутый" список модулей, находим нужный, пробуем анлоадить его и смотрим, что получится |
||||
|
|||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
||||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Даже и не знаю как быть. Публиковала, здесь код, показывающий принцип определения, что мы" хакнуты" и получения адреса "настоящей" функции, но сразу после этого ветку удалили. Я так и не поняла: Из-за меня или нет. Может я какие правила нарушила Попробую на словах. 1. Мапим файл DLL в которой находится интересующая нас функция ( Почти всегда это NtDll.dll ). 2. В замапеном образе пробегаемся по его IMAGE_EXPORT_DIRECTORY. и находим интересующую нас функцию. 3. Сравниваем "адреса" (плохое название, но не знаю как обозвать. м.б. смещения ?), того что возвращает GetProcAddress и ф-ии из замаплиного образа. 4. Различаются - мы "хакнуты". Вызываем функцию, используя полученный нами "адрес" из мапа. Она и даст нам искомое. Сумбурно получилось, но надеюсь понятно |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: нет Всего: 1 |
||||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |