Сейчас на форуме: _MBK_ (+7 невидимых) |
eXeL@B —› Основной форум —› Помогите найти OEP (ExeCryptor) |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 25 июля 2007 11:09 · Личное сообщение · #1 Доброго времени суток, ув. знатоки! Падаю перед вами на коленочки и очень сильно прошу помочь с распаковкой проги упакованой бякой под названием EXECryptor. По туториалам удалось восстановить импорт, но к сожалению не удалось разобраться как дойти до OEP. Вернее скорее всего я до него доходил, но не сумел понять что это он ибо похоже, что байты скрадены. Ссылка на прогу на разных обменниках: slil.ru/24663145 rapidshare.com/files/44899776/TradeBot.rar.html ifolder.ru/2782974 Размер файла 1,1 метра. PS: Если все же кто-то будет смотреть её, то может глянет хоть одним глазком какой алгоритм шифрации пакетов там используется? Верно ли мое предположение, что там BlowFish? Собственно конечной целью является не взлом программы, а выяснение алгоритма шифрации, но это я уже сам скорее всего смогу сделать. |
|
Создано: 29 июля 2007 14:54 · Личное сообщение · #2 Ну все пипец криптору какие молодцы подтягиваются ;)) kioresk пишет: эти секции должны быть не проинициализированы, т.е. сдамплены сразу после их заполнения и исправления адресов криптором. Иначе из-за отличий в адресах API-функций распакованный файл не будет работать на других системах. Ну это мы как то без тебя выяснили читай выше Ты нам за метаморф че нить скажи умное.. |
|
Создано: 30 июля 2007 10:45 · Личное сообщение · #3 |
|
Создано: 30 июля 2007 11:13 · Личное сообщение · #4 RSI Да. Если не сложно. Я все сделал как завещал kioresk, но все равно ловлю Access Violation pavka Распиши подробнее если не сложно что такое метаморф Пробовал искать по форуму, но инфы совсем мало kioresk Спасибо большое. Очень подробно и очень наглядно. Все сделал как ты сказал, даже не забыл исправить ImageBase и Number of Section. Добавил третью секцию и исправил вторую в распакованный RSI файл и все равно есть проблемы в конечном экзешнике. Кстати попутный вопрос. А зачем отключать все Exceptions? Если их все отключить, то очень конкретно напрягает раз по 100 тыкать на F9 пока дойдешь до нужного места... |
|
Создано: 30 июля 2007 11:46 · Личное сообщение · #5 pavka, не пойму, чем тебе этот мусор мешает, откуда к нему такой интерес? Антиотладку и восстановление импорта KaGra, Pnluck и Haggar давно описали. Реестровый триал также известен. С OEP можно вообще не заморачиваться. Ну утащил он часть кода в свою секцию, видоизменил его — но код ведь как работал, так и работает. Уже не раз обсуждалось, но имхо большинство защищенных криптором программ стоят менее 200 долларов. Врядли кто-либо станет из-за таких денег заморачиваться анализатором и паттернами только для того, чтобы восстановить код, который и так работает. Trinok, Пардон, неточно выразился. Под отключением подразумевал отмечание всех исключений галками, чтобы на них не останавливаться. Выложи полный текст ошибки, там указаны адреса где происходит ошибка и при обращении к какому участку памяти. |
|
Создано: 30 июля 2007 12:20 · Личное сообщение · #6 kioresk Делаю как ты сказал. Далее с помощью PETool--> Dump Partial Start: 0074B000 End: 007BB000 Сохраняю в файл Poly3.dmp То же самое для второй секции Start: 0063D000 End: 00648000 Сохраняю в файл Poly2.dmp Открываю распакованый RSI файл в CFF Explorer Далее: Section Headers--> Add section (File Data)--> Poly3.dmp Удаляю .reloc Delete Section (Header And Data) Section Headers--> Add section (File Data)--> Poly2.dmp Затем Rebuild Image Size и Rebuild PE Header Сохраняю. Запускаю. Ввожу любые логин и пароль жму OK Получаю сообщение External Exception 8000003 и через пару секунд Access Violation at adress 0049ED13 in module 'unpacked_1.exe'. Read of address 00000057 |
|
Создано: 30 июля 2007 12:45 · Личное сообщение · #7 Кстати для новичков есть отличный и универсальный способ для нахождения вм оеп 1) скрываем ольку плагинами и хайдером 2) запускаем прожку, снимаем бряк с entrypoint 3) ставим бряк на запись в ресурсы 4) после срабатывания бряка ставим бряк на доступ в секцию кода 5) после срабатывания ставим бряк на esp-4, который предварительно смотрим в любой другой прожке, но не в тлс криптора ;) 6) после срабатывания бряка и выравнивания стека до начального - записываем состояние регистров и выбрав любое свободное место в файле прописываем туда их состояния, затем джамп на тот код где сработал бряк с выровненным значением стека, ну и далее восстановление импорта соответственно... Да, затем после распаковки можно убить потоки проверки целостности файла, которые иногда создаются на вм оеп (обычно их 2) поставив бряки на CreateThread и определив адреса этих потоков по параметрам в стеке, соответственно изменив первый байт по этим адресам на ret, ну и соответственно не забыть обнулить в дампе dword по адресу tls callback (который можно посмотреть в PE_Tools'е) Сей способ для новичков, знаю что регистры можно не выставлять, просто не все новички найдут реал vm oep, а по этому способу проще, посему pavka,r99,RSI и прочим криптороубивцам помидорами в меня не кидаться ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 30 июля 2007 12:47 · Личное сообщение · #8 |
|
Создано: 30 июля 2007 13:08 · Личное сообщение · #9 kioresk пишет: не пойму, чем тебе этот мусор мешает, откуда к нему такой интерес? Ну вообще то это не мусор или не совсем мусор а иногда и в перемешку с важными кусками кода ;) Грамотно поставленый криптор и все старания мимо денег kioresk пишет: Антиотладку и восстановление импорта KaGra, Pnluck и Haggar давно описали. Реестровый триал также известен. С OEP можно вообще не заморачиваться. Ну утащил он часть кода в свою секцию, видоизменил его — но код ведь как работал, так и работает. Топикстартер хочет исследовать алго какой смысл для него в распаковке мог и бы и так исследовать.. Smon пишет: которые иногда создаются на вм оеп Хм ...После EP и до входа в код проги потоки не создаются Только до еп и при инициализации |
|
Создано: 30 июля 2007 13:19 · Личное сообщение · #10 pavka ну тогда интересно почему прожка уже после дампа (секции распакованы, импорт обработан, вм оеп без правки регистров, стек в норме) - и вылетают два окошка с crc ? ) пробовал на болванке и на crazy minesweeper'е - резалт одинаков. Разве криптор восстанавливает стек задолго до oep и еще до создания тредов ? ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 30 июля 2007 13:35 · Личное сообщение · #11 |
|
Создано: 30 июля 2007 13:42 · Поправил: pavka · Личное сообщение · #12 Ты можешь попоробовать встать на еп и прогнать до старта в секции кода имхо там тусня регистров идет постоянно вся распаковка импорт и т.д все проходит до еп, после можно можно выбирать любое начало и криптору пофиг на этот код он его совершенно не контролирует ! В crazy minesweeper'е там в процесе инициализации делфи создаются два потока, или один точно не помню Посмотрел точно не чекает ;)эти треды только до EP и в прцессе инициализации |
|
Создано: 30 июля 2007 14:07 · Личное сообщение · #13 Smon пишет: ну тогда интересно почему прожка уже после дампа (секции распакованы, импорт обработан, вм оеп без правки регистров, стек в норме) - и вылетают два окошка с crc ? ) Потому, как эти проверки идут в параллельных потоках криптора, отодрать который полностью практически невозможно. ИМХО, но распаковка криптора, если в итоге не отлетает триал - пустое это все. Патчить нужно. |
|
Создано: 30 июля 2007 15:02 · Поправил: Smon · Личное сообщение · #14 pavka пишет: треды только до EP и в прцессе инициализации ну так в процессе инициализации то есть, значит уже после oep, сталобыть мы говорим об одном и том же , о том что треды инициализируются в vm oep YDS пишет: Потому, как эти проверки идут в параллельных потоках криптора, отодрать который полностью практически невозможно. я о уже сдампленной и распакованной проге , а не о отлаживаемой А по поводу триала - это вообще лучший вариант, задача поиска места патча - нетривиальна, но наличие более старых версий или версий под другими протами её реально облегчают ЗЫ: Давно новостей нет, надеюсь криптор пошёл по пути аспра ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 30 июля 2007 15:18 · Личное сообщение · #15 YDS пишет: если в итоге не отлетает триал - пустое это все. Патчить нужно. Все зависит от програмера ;) если триал криптора и в отдельных потоках проверяется какая проблема вовремя вывести поток ;) да и саму проверку где криптор считывает ключи поймать на раз, два Хуже если програмер не дурак а сделал свою проверку да еще обкрутил это дело метаморфом ... Ну и все же удобней ковырять прогу распакованую хоть и с с кусками криптора.. |
|
Создано: 30 июля 2007 16:22 · Личное сообщение · #16 Smon пишет: Потому, как эти проверки идут в параллельных потоках криптора, отодрать который полностью практически невозможно. я о уже сдампленной и распакованной проге , а не о отлаживаемой Так и я об ней же Код криптора-то все равно остался, несмотря на то, что сделали дамп. Smon пишет: ЗЫ: Давно новостей нет, надеюсь криптор пошёл по пути аспра Туда ему и дорога pavka пишет: да и саму проверку где криптор считывает ключи поймать на раз, два Поймать, где считывает ключи может и можно, но найти, как ее пофиксить "на раз-два" сильно сомневаюсь, что получится, т.к. этот код (в тех прогах, что мне попадались), всегда был обфусцирован. |
|
Создано: 30 июля 2007 16:44 · Личное сообщение · #17 |
|
Создано: 30 июля 2007 19:45 · Личное сообщение · #18 kioresk Сделал как ты сказал. Сдампил и с помощью FlexHex заменил .reloc на сдампленную. С помощью CFF Explorer добавил poly3: 0074B000 — 007BB000 bneemfco. Все равно неприятности Запускаю прогу ввожу логин + пасс и жму OK Access Violation at adress 0049ED13 in module 'unpacked_1.exe'. Read of address 00000057 Вот тут на всякий то, что у меня получилось ifolder.ru/2843991 И тут тоже rapidshare.com/files/45963296/unpacked_2.rar.html Размер 1 метр |
|
Создано: 30 июля 2007 23:13 · Поправил: RSI · Личное сообщение · #19 |
|
Создано: 31 июля 2007 10:59 · Поправил: kioresk · Личное сообщение · #20 RSI, В предыдущем и в этом варианте ошибка происходит, т.к. OEP не полностью восстановлен. Сравни сколько занимает код оригинального OEP, спертого криптором, и восстановленный код (с учетом строки): 1. 4A97A0 — 4A9824 = 84 байт (оригинальный OEP спертый криптором)
Trinok, Попробуй в распакованном r99 файле заменить 2-ю и 3-ю секции (poly2 и poly3). Если все равно будут ошибки — оставляй крипторовский OEP или восстанавливай оригинальный (основную работу RSI уже все равно сделал). |
|
Создано: 31 июля 2007 13:45 · Личное сообщение · #21 |
|
Создано: 31 июля 2007 17:06 · Личное сообщение · #22 |
|
Создано: 31 июля 2007 17:34 · Личное сообщение · #23 kioresk пишет: Я бегло посмотрел, может еще чего не заметил Хм ...видимо как и топик и при этом ты умудрился скачать распакованые файлы всех участников этого топика kioresk пишет: Если все равно будут ошибки — оставляй крипторовский OEP или восстанавливай оригинальный Поясни пожалуйста этот перл мудрости.. |
|
Создано: 31 июля 2007 22:50 · Поправил: r99 · Личное сообщение · #24 |
|
Создано: 01 августа 2007 03:16 · Личное сообщение · #25 |
|
Создано: 01 августа 2007 05:16 · Личное сообщение · #26 |
|
Создано: 01 августа 2007 16:25 · Поправил: r99 · Личное сообщение · #27 |
|
Создано: 01 августа 2007 16:34 · Личное сообщение · #28 |
|
Создано: 01 августа 2007 18:56 · Личное сообщение · #29 |
|
Создано: 01 августа 2007 21:52 · Поправил: r99 · Личное сообщение · #30 |
|
Создано: 02 августа 2007 04:46 · Личное сообщение · #31 |
<< . 1 . 2 . 3 . >> |
eXeL@B —› Основной форум —› Помогите найти OEP (ExeCryptor) |