Сейчас на форуме: igorcauret, Rio (+6 невидимых) |
eXeL@B —› Вопросы новичков —› Кривая распаковка DLL PECompact 2.x или доп защита? |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 04 мая 2013 21:58 · Поправил: buhanoid · Личное сообщение · #1 Добрый день форумчане. решил поковырять программку на досуге(мод для игры танки)-узнать как она работает. С чем я столкнулся: 1.Защита от отладки-установил плагин HideOD(использовал OllyDbg) 2.Упакована PECompact-проверил Peid,в ольке нашел ОЕР,сделал дамп PE tools,починил его ImpREC(для новичка неплохо я считаю ) 3.Пробую запустить-ничего,хотя Peid распознает сигнатуру нового фаила(Delphi) Собственно вопрос:это я криво распаковал или там стоит еще какая-нибудь защита?(я подозреваю проверку хэша ) http://rghost.ru/45764050 Спасибо. |
|
Создано: 04 мая 2013 22:07 · Личное сообщение · #2 |
|
Создано: 04 мая 2013 22:17 · Личное сообщение · #3 |
|
Создано: 04 мая 2013 22:30 · Личное сообщение · #4 |
|
Создано: 04 мая 2013 23:00 · Поправил: buhanoid · Личное сообщение · #5 |
|
Создано: 04 мая 2013 23:08 · Личное сообщение · #6 |
|
Создано: 05 мая 2013 00:11 · Поправил: buhanoid · Личное сообщение · #7 |
|
Создано: 06 мая 2013 10:47 · Поправил: Nightshade · Личное сообщение · #8 WarPack.net тебя накажут) Обрати внимание на такие строки 013629C8 |. 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8] 013629CB |. B8 402A3601 MOV EAX,оригинал.01362A40 ; UNICODE "eJwrZ0hkKGIoAJLJDNkMuQypDMVAmMiQDmQBAFf4Bc8=" 013629D0 |. E8 87D1F7FF CALL оригинал.012DFB5C Это вызовы функции расшифровки строк. Например после данного вызова в ebp-8 будет расшифрованная строка. Если пробежишься по таким строкам, то найдешь адрес сайта где происходит проверка ключа. Сервак возвращает xml конфиг. Он правда пошифрован(вроде как rsa). Правда ключ расшифровки зашит там же рядом с адресом сайта. Лучше всего вообще убрать проверку ключа на сайте и сразу по нужному адресу(ebp-XX) положить расшифрованный xml. Ну а дальше - дерзай. Бота я уже поломал ради интереса. |
|
Создано: 06 мая 2013 13:36 · Личное сообщение · #9 Nightshade спасибо за потраченное время,учту ваш совет.поломка для меня второстепенна(хотя конечно неплохо,но распространять его не буду-не хочу спровоцировать волну банов).Хочу посмотреть как именно он работает и проверить сетевую часть(меня терзают сомнения насчет отсылки паролей). DLL я распаковал с помощью tihiy_grom(оказывается я делал все правильно,но из-за недостатка опыта первый блин комом вышел).Сейчас читаю статьи про Ollydbg-пытаюсь понять как отлаживать инжектированную длл. Бряк LoadLibraryA не подходит. |
|
Создано: 06 мая 2013 13:47 · Личное сообщение · #10 |
|
Создано: 06 мая 2013 14:09 · Поправил: Nightshade · Личное сообщение · #11 |
|
Создано: 06 мая 2013 17:53 · Личное сообщение · #12 похоже опять какая-то техническая заминка: открываю распакованную dll,search for-all refirenced string,выбираю какую-нибудь строку юникод.например 01361E3C |. 8D55 E4 LEA EDX,DWORD PTR SS:[EBP-1C] 01361E3F |. B8 3C243601 MOV EAX,library_.0136243C ; UNICODE eJwrZ0hkKGIoAJLJDNkMuQypDMVAmMiQDmQBAFf4Bc8=" 01361E44 |. E8 13DDF7FF CALL library_.012DFB5C ставлю на 01361E3C-New origin here жму F8 три раза-выполнить call. Жму в дампе Go to expressions - ebp-1c - там мусор какой-то и длл вываливается с ошибкой. Вроде всё по инструкций,но результата нет.Где я мог ошибиться? |
|
Создано: 06 мая 2013 18:02 · Личное сообщение · #13 |
|
Создано: 07 мая 2013 15:12 · Поправил: buhanoid · Личное сообщение · #14 что-то у меня уже глаз замылился ,необходим взгляд со стороны. делаю Search for-all string references, нахожу первую строку с юникодом eJwLZ0hkKGIoAJLJDNkM+gyGDHoMBgwAL/4DiA==, рядом с ней строки Cipher not initialized и повторы функций: 0142CA3B |. 50 PUSH EAX ; /Arg4 0142CA3C |. 8B4424 48 MOV EAX,DWORD PTR SS:[ESP+48] ; | 0142CA40 |. 50 PUSH EAX ; |Arg3 0142CA41 |. 6A 0E PUSH 0E ; |Arg2 = 0000000E 0142CA43 |. 68 515A5E26 PUSH 265E5A51 ; |Arg1 = 265E5A51 0142CA48 |. 8BC7 MOV EAX,EDI ; | 0142CA4A |. 8B0B MOV ECX,DWORD PTR DS:[EBX] ; | 0142CA4C |. 8B55 00 MOV EDX,DWORD PTR SS:[EBP] ; | 0142CA4F |. E8 70FCFFFF CALL library_.0142C6C4 ; \library_.0144C6C4 предполагаю,что это итерации для какого-то блочного алгоритма(в коде светились строки md5 и Rijndael(AES)). после них 0142D3A9 . 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10] 0142D3AC . B8 F4D44201 MOV EAX,library_.0142D4F4 ; UNICODE "eJwLZ8hnKGLIYUhh8GdIYwhhSGTIY8hmKGbQY0hlqABiAGmKBi8=" 0142D3B1 . E8 A627F8FF CALL library_.013AFB5C соответственно ставлю бряк на 0142D3B1, чтобы ключ проинициализировался и можно было сделать EIP на другую строку с юникодом и в регистре ebp появилась бы расшифрованная строка. Но DLL падает до этого бряка(точнее завершается корректно с кодом 0). Как можно еще проинициализировать ключ? |
|
Создано: 08 мая 2013 14:23 · Поправил: Vostol · Личное сообщение · #15 |
|
Создано: 10 мая 2013 18:48 · Личное сообщение · #16 |
|
Создано: 10 мая 2013 20:13 · Личное сообщение · #17 |
|
Создано: 10 мая 2013 21:38 · Личное сообщение · #18 |
|
Создано: 10 мая 2013 22:04 · Личное сообщение · #19 Vostol скорее всего да,справочник купил-но толку,команды отдельные знаю,что значат конструкции-нет(тут также как в программировании-только синтаксис знать мало). Сейчас проблема крутится возле инициализации ключа шифрования-не получается инициализировать и сохранить работоспособность при смене EIP(чтобы посмотреть шифрованные строки). |
|
Создано: 10 мая 2013 23:11 · Личное сообщение · #20 buhanoid пишет: Сейчас проблема крутится возле инициализации ключа шифрования-не получается инициализировать и сохранить работоспособность при смене EIP(чтобы посмотреть шифрованные строки). о каком ключе шифрования идёт речь вообще? строки накрыты base64, под ним бинарные данные - zlib поток разжимаем и радуемся |
|
Создано: 11 мая 2013 12:53 · Личное сообщение · #21 -=AkaBOSS=- спасибо,строки расшифрованы. UNICODE "eJwrZkhlKAHCTIY8hnSGYgY9hgqGXIYcBgBBeATx" "settings.xml" вот этот файл отсылает сервер,он скорее всего зашифрован этим ключом UNICODE "eJyNks1Ow0AMhOdRqkooiUB9gEo9gLhwQZzgABzSsKRRQ1glodC351tXUfNTfg7ejjfj2bFrpy85ZYo11wvoVTPl/La61pVuOGMl" "не распаковался" Теперь вопрос-как начать отладку? как автономной не получится,если программу акцептор загрузить в отладчике и потом инжектить в неё длл-как её потом там найти? Или есть еще какие-то способы? |
|
Создано: 11 мая 2013 14:19 · Поправил: -=AkaBOSS=- · Личное сообщение · #22 buhanoid пишет: "settings.xml" вот этот файл отсылает сервер этот файл создаётся лоадером дллки - WarPackLauncher.exe там чистый XML Code:
buhanoid пишет: "не распаковался" buhanoid пишет: Или есть еще какие-то способы? правда, надо будет обойти несколько проверок, типа GetModuleHandle("WorldOfTanks.exe") и попыток читать/писать память этого модуля | Сообщение посчитали полезным: buhanoid |
|
Создано: 11 мая 2013 15:12 · Личное сообщение · #23 buhanoid пишет: инжектить в неё длл-как её потом там найти? В ольге есть дивное сочетание Alt+E, "Executable Module" | Сообщение посчитали полезным: buhanoid |
|
Создано: 16 мая 2013 14:15 · Личное сообщение · #24 |
|
Создано: 16 мая 2013 14:54 · Личное сообщение · #25 |
|
Создано: 17 мая 2013 23:49 · Личное сообщение · #26 |
|
Создано: 18 мая 2013 09:14 · Личное сообщение · #27 |
|
Создано: 19 мая 2013 20:04 · Личное сообщение · #28 |
|
Создано: 19 мая 2013 21:11 · Поправил: B_TAHKE · Личное сообщение · #29 |
|
Создано: 21 мая 2013 16:02 · Личное сообщение · #30 |
. 1 . 2 . >> |
eXeL@B —› Вопросы новичков —› Кривая распаковка DLL PECompact 2.x или доп защита? |
Эта тема закрыта. Ответы больше не принимаются. |