eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
обновлён 2 декабря!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: ARCHANGEL (+4 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Основной форум —› Отладка приложения накрытого Themida
<< . 1 . 2 .
Посл.ответ Сообщение

Ранг: 6.0 (гость)
Статус: Участник

Создано: 27 марта 2010 20:34 · Поправил: Модератор New!
Цитата · Личное сообщение · #1

Есть dllка, запакованная с помощью темиды. При чем опции там не сильно понаворочены.

Цель - посмотреть как работает одна из экспортированных функций в конкретной ситуации.

dll-ка является частью большой программы и интерес представляет то как эта функция отрабатывает именно в рамках этой программы (как я уже писал - в конкретной ситуации).

В эту программу могу заинжектить свою dllку, и в нужный момент перехватить вызов этой функции.

Что делаю (пробовал много разных вариаций, остановился пока на этом):
1) стопаю все потоки кроме того где был вызов (SuspendThread)
2) отключаю уведомления об атаче/детаче потоков во всех модулях. (тут возможно не надо, но в другой ситуации с этой прогой помогло)
3) ухожу в бесконечный цикл (типа while(true);)
4) атачусь олей к запущеной проге.

В потоках нахожу этот (активных только 2, 1 которым олли атачился и вот этот), пытаюсь его отлаживать.
Он, как и следовало ожидать, находится в моем бесконечном цикле.

Пробовал:
1) ставить брекпоинт на строчке следующей за текущей
2) просто делать степ
3) trace into/over

Всё это приводит к тому что прога переходит из Paused в Running и если после этого ее стопнуть то этот поток находится в недрах WaitForMultipleObjects.
Никак не могу понять как оно туда попало, ибо все потоки вроде как стопнуты, а этому никак мимо моего брекпоинта не пройти.

Очень интересует как оно меня так жестоко обходит, ну и "что делать?"

От модератора: русский язык научись уважать! Что ещё за "апликуха"?

Ранг: 6.0 (гость)
Статус: Участник

Создано: 31 марта 2010 07:48 New!
Цитата · Личное сообщение · #2

Я немного подумал над этой проблемой. Дело не в этом, или не только в этом.

Бесконечный цикл я не прерываю и до атача олей прилага находится именно в нем.
После Атач/Ран прилага из него улетает. Это явно значит что там не просто несработал брейкпоинт.


Ранг: 1999.8 (!!!!)
Статус: Модератор
retired

Создано: 31 марта 2010 14:52 New!
Цитата · Личное сообщение · #3

Ещё раз говорю-он мог не сработать как раз из-за того, что он налетел но бряк, но отладчик не получил этого сообщения из-за того, что он скрыт от отладчика через вышеописанную функцию. Сам с таким сталкивался, поэтому и говорю. Возможно, в твоём случае такое же дело.


Ранг: 662.1 (! !)
Статус: Участник
ALIEN Hack Team

Создано: 31 марта 2010 17:45 New!
Цитата · Личное сообщение · #4

В конце концов, черт с этими плагинами. Просто напиши драйвер, который бы перехватывал в ядре NtSetInformationThread и не давал бы ей вызываться с таким параметром, как HideThreadFromDebugger. Я так понял, что ТС - фанат кодинга, библиотеки всякие инжектит, хуккает что-то там вручную, так что одним драйвером больше, одним меньше


Ранг: 312.9 (мудрец)
Статус: Участник

Создано: 1 апреля 2010 06:32 New!
Цитата · Личное сообщение · #5

Можно инжектированной dll автоподмену или автоблок добавить для NtSetThreadInformation и еще для чего-нить. Тогда меньше проблем будет с бряками. По крайней мере исключить можно будет, виноват этот способ антиотладки или нет.


Ранг: 662.1 (! !)
Статус: Участник
ALIEN Hack Team

Создано: 4 апреля 2010 20:31 New!
Цитата · Личное сообщение · #6

DenCoder
Когда библиотека инжектиктится - тогда уже поздно. Надо раньше.


Ранг: 312.9 (мудрец)
Статус: Участник

Создано: 5 апреля 2010 07:52 New!
Цитата · Личное сообщение · #7

А почему бы не создать процесс с флагом CREATE_SUSPENDED и сразу внедриться?


Ранг: 237.0 (наставник)
Статус: Участник
sysenter

Создано: 5 апреля 2010 08:47 New!
Цитата · Личное сообщение · #8

ARCHANGEL пишет:
Когда библиотека инжектиктится - тогда уже поздно. Надо раньше.

В этой ветке обсуждалось:--> Link <--
<< . 1 . 2 .
 eXeL@B —› Основной форум —› Отладка приложения накрытого Themida

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS