Сейчас на форуме: igorcauret, Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Кривая распаковка DLL PECompact 2.x или доп защита?
<< . 1 . 2 .
Посл.ответ Сообщение

Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 04 мая 2013 21:58 · Поправил: buhanoid
· Личное сообщение · #1

Добрый день форумчане.
решил поковырять программку на досуге(мод для игры танки)-узнать как она работает.
С чем я столкнулся:
1.Защита от отладки-установил плагин HideOD(использовал OllyDbg)
2.Упакована PECompact-проверил Peid,в ольке нашел ОЕР,сделал дамп PE tools,починил его ImpREC(для новичка неплохо я считаю )
3.Пробую запустить-ничего,хотя Peid распознает сигнатуру нового фаила(Delphi)
Собственно вопрос:это я криво распаковал или там стоит еще какая-нибудь защита?(я подозреваю проверку хэша )
http://rghost.ru/45764050
Спасибо.



Ранг: 5.2 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 21 мая 2013 16:05
· Личное сообщение · #2

buhanoid пишет:
Vostol
упс, какая щекотливая ситуация
за исходник длл буду благодарен

Дай денег отбить на продажах =)



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 21 мая 2013 16:28 · Поправил: buhanoid
· Личное сообщение · #3

Vostol
я и не собирался выкладывать,сам для себя,только в образовательных целях.
Что-то не получается отладка,поэтому пошел другим путем-пытаюсь запустить длл в своем же процессе и там уже посмотреть что к чему.
вот типа такого http://rghost.ru/private/46155110/4a22a20b134bf6a5c6854f3d32d189cc



Ранг: 15.9 (новичок), 2thx
Активность: 0.010
Статус: Участник

Создано: 21 мая 2013 20:16
· Личное сообщение · #4

Как предположение - может прикрутить длл к любой проге, к примеру Блокноту, с помощью функи LoadLibraryA, и дальше уже копать её после запуска Блокнота.



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 21 мая 2013 20:23
· Личное сообщение · #5

так можно инжектором воспользоваться,все равно упадет при попытке чтения/записи памяти модуля.
я пока вижу только один реальный путь-отлаживать как я сейчас начал.



Ранг: 5.2 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 27 мая 2013 11:01
· Личное сообщение · #6

Прикрутка к блокноту чревата непредсказуемыми последствиями поведения. В итоге будет AV и краш блокнота.




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 28 мая 2013 07:47
· Личное сообщение · #7

Кто может дать последний варпак?



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 28 мая 2013 08:54
· Личное сообщение · #8

Nightshade
http://rghost.ru/private/46314626/4046f7909a62fea9255be485718201a1




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 28 мая 2013 11:54
· Личное сообщение · #9

Я б на твоем месте начал отладку ближе к адресу
Code:
  1. 039717E0            B8 F41A9703      MOV EAX,warpack.03971AF4                 ; UNICODE "eJwLZ0hkKGIoAJLJDNkM+gyGDHoMBgwAL/4DiA=="

Адреса у тебя конечно будут другие(первые цифры 4) из-за разной image base.



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 28 мая 2013 15:46
· Личное сообщение · #10

как бы проблема в том,что при трассировке отладчик не доходит до этого места-длл завершается или танки зависают.при переносе eip-тоже краш.



Ранг: 0.8 (гость)
Активность: 0=0
Статус: Участник

Создано: 14 июня 2013 13:14
· Личное сообщение · #11

Здравствуйте. Ну что получилось разобраться с защитой раз тема не обновляется?



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 12 августа 2013 19:44
· Личное сообщение · #12

http://rghost.ru/private/48072546/21ccfabf94d3fcce93de65413a15d2e5
обновленный до версии 0.8.7(может кому надо)

| Сообщение посчитали полезным: CHITA_YAS

Ранг: 0.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 03 сентября 2013 04:41
· Личное сообщение · #13

всем привет
есть ли успехи по обходу защиты?




Ранг: 95.2 (постоянный), 26thx
Активность: 0.060
Статус: Участник

Создано: 06 ноября 2013 11:21 · Поправил: inf1kek
· Личное сообщение · #14

Да нету там защиты как таковой, как было так и осталось, просто выкладывать такие вещи смысла нету, апдейты частые. Да и вообще, грешная тулза




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 06 ноября 2013 11:45 · Поправил: Модератор
· Личное сообщение · #15

Закрыт старый топ, всё равно никакого исследования тут толком не было, всё другие сделали.
ТС хочет продолжать с новой версией, открыто.



Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 02 апреля 2014 11:00
· Личное сообщение · #16

добрый день.
не знал как размять мозги, а тут такая головоломка.
новая версия dll http://rghost.ru/private/53705037/d4a74ff8aaa598b05a63b10394a7fdd0
Первым делом запустил ExeinfoPE- "PECompact 2.78 or above" - видно разработчики перешли на новую версию упаковщика.
Начнем распаковку(на этот раз решил не пользоваться приватным распаковщиком ).
Для этого нужно найти OEP, можно, конечно воспользоваться методом ESP Trick, но увидел более интересный и быстрый способ(хотя куда уж быстрее):
Code:
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. 00BBB42A    B8 ACC5BB00     MOV EAX,00BBC5AC
  4. 00BBB42F    50              PUSH EAX
  5. 00BBB430    64:FF35 0000000 PUSH DWORD PTR FS:[0]

это начало библиотеки, переходим по адресу 00BBC5AC, листаем чуть ниже и вуаля:
Code:
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. 00BBC66D    5D              POP EBP
  4. 00BBC66E    FFE0            JMP EAX
  5. 00BBC670    0000            ADD BYTE PTR DS:[EAX],AL
  6. 00BBC672    0000            ADD BYTE PTR DS:[EAX],AL

переход на настоящую точку входа, ставим бряк на jmp, запускаем, нажимаем раз F8 и мы на оригинальной точке входа:
Code:
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. 00B32143    C3              RETN
  4. 00B32144    55              PUSH EBP  // OEP
  5. 00B32145    8BEC            MOV EBP,ESP
  6. 00B32147    83C4 C0         ADD ESP,-40

Можно дампить и восстанавливать таблицу импорта.
Вот в последнем у меня и возникла заминка
http://rghost.ru/private/53705186/c022f0e8db7dbf647a36b025da6bbb86 дерево для ImpREC

некоторые функции не распознаются и адрес у них короче, как починить?

| Сообщение посчитали полезным: metal59

Ранг: 441.3 (мудрец), 297thx
Активность: 0.410.04
Статус: Участник

Создано: 02 апреля 2014 11:35
· Личное сообщение · #17

PeCompact эмулирует только GetProcAddress

| Сообщение посчитали полезным: buhanoid

Ранг: 3.5 (гость), 2thx
Активность: 0.010.02
Статус: Участник

Создано: 02 апреля 2014 12:12 · Поправил: buhanoid
· Личное сообщение · #18

добавил в дерево IAT вместо неизвестных строки
Code:
  1. kernel32.dll      01A3 GetProcAddress

дамп восстановился без ошибок, но dll не инжектится, видно добавили какую то защиту(не в релоках же дело,раньше без них нормально работало) - дальше разбираюсь.
распакованная dll http://rghost.ru/private/53706556/de48c0237482c2350041772023e4cdc2
--**--
посмотрел внимательно, действительно релоки, восстановил
http://rghost.ru/private/53707407/352d3397d9ae69ee07606365971cfee8 рабочая распакованная dll
--**--
03/04/2014
Продолжаю ковырять программу в свободное время, по совету знатока решил исследовать dll в целевом процессе.
Перед этим прогнал dll в IDR (Die указал что она написана на Delphi) - искал какие библиотеки используются для работы с сетью чтобы поставить бряк (ключ проверяется на сервере),оказалось это Indy+SSL, значит нужно искать что-то вроде GetToStream/Post.
Запустил программу, приатачился к процессу, сделал инжект библиотеки(как я понял бряки на LoadDLL бесполезно ставить), нашел ее в исполняемых модулях, поставил bp на set access memory, поискал функции работы с сетью-ничего похожего не нашел, думаю дальше.
--**--
поразбирал маленько снифером, клиент отсылает специфичную строку user agent, так как в Search all intermodular calls ничего похожего на работу с сетью не нашел(netapi вообще не используется), решил поставить бряк на эту строку(user agent) - но точка остановки не сработала. В общем думаю дальше.



Ранг: 1.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 сентября 2014 10:32
· Личное сообщение · #19

Текушая версия варпака 0.8.9.314 (для клиента 0.9.3):

Инсталляха:
http://rghost.ru/private/58276286/ece26e165b8407e9d9c9f89e7199b481

DLL оригинальная и распакованная (thx 2 tihiy_grom)
http://rghost.ru/private/58276317/76f0df2e17751b1efb3a3171e94a0446




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 30 сентября 2014 11:14
· Личное сообщение · #20

Это не варёзник и уж точно не гамерский варёзник, не надо это сюда постить.
Старый топик закрыт.


<< . 1 . 2 .
 eXeL@B —› Вопросы новичков —› Кривая распаковка DLL PECompact 2.x или доп защита?
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати