Сейчас на форуме: (+6 невидимых) |
eXeL@B —› Протекторы —› Анализ ASProtect |
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . 17 . 18 . 19 ... 38 . 39 . >> |
Посл.ответ | Сообщение |
|
Создано: 28 марта 2008 15:30 · Поправил: vnekrilov · Личное сообщение · #1 Я выложил свой первый туториал по анализу ASProtect v2.4 build 12.20 (Анализ подпрограммы эмуляции инструкций.rar http://dump.ru/files/o/o489862518/ ). В этом туториале я подробно описал процесс восстановления эмулированных инструкций типа: Code:
Полный цикл статей по распаковке ASProtect (Актуальная версия 25 декабря 2009): ASProtect_Unpacking_Tutorial_2009-12-25.rar http://rapidshare.com/files/325720799/ASProtect_Unpacking_Tutorial_2009-12-25.rar 7,9 МБ Программы, рассматриваемые в статьях: ASProtect_Unpacking_Apps_2009-12-25.rar http://rapidshare.com/files/325718084/ASProtect_Unpacking_Apps_2009-12-25.rar 22,2 МБ Буду благодарен за критику, замечания, пожелания и отзывы. Скрипты: Текущая рекомендуемая версия ODBGScript [1.78.3]: ecf1_03.06.2010_CRACKLAB.rU.tgz - ODbgScript.dll Последний текущий комплект скриптов [от 19 февраля 2011]: 69ca_18.02.2011_CRACKLAB.rU.tgz - Скрипты для распаковки Asprotect от 19 февраля 2011.rar Статьи по частям: Актуальная версия статей [Последняя - 25.11.2010]: Выпуск 2 0754_29.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 1 2844_29.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 2 8e06_30.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 3 50a0_03.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 4 1b51_05.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 5 0ff8_05.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 5 (продолжение) a182_06.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 6 82b8_15.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 7 74e4_16.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 8 b2e1_17.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 9 532c_18.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 10 76af_20.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 11 fe67_22.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 12 079c_20.01.2010_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 13 8415_03.06.2010_CRACKLAB.rU.tgz - Распаковка Asprotect - Часть 14 0a66_18.02.2011_CRACKLAB.rU.tgz - Распаковка Asprotect - Части 15 и 16 DriEm конвертировал мой цикл статей в формате PDF, который можно скачать по ссылке |
|
Создано: 02 июля 2009 11:12 · Личное сообщение · #2 o_nix судя по выложенному тобой логу, ты распаковываешь прогу MultiPoster 2.0.9.99 вот кусок декодированного отчёта: Code:
программа защищена данной версией: [WPExport], [2.0], [2.4 build 11.20 Release], [Сергей Усманов]. ----- EnJoy! |
|
Создано: 02 июля 2009 11:14 · Личное сообщение · #3 господа я конечно извиняюсь за возможный оfftop, но есть действительно проги в которых не работает ни один автоматический проход на oep (с использованием скриптов VoIX'a и Vnekrolov'a), сам сталкивался и уже не раз, при том что скрипты сбора IAT и не которые другие уважаемого Vnekrolov'a все таки делают свое дело порой завешивая намертво отладчик с прогой To: o_nix пробуй другие модификации ольги к примеру RAMOllyDBG или EXECrytor Edition (tuts4you.com тебе в помощь), со всеми включенными галочками в Exceptions, насчет багов ODbgScript скажу, что особой разницы по отработке скриптов что на 1.48 версии что на 1.67 версии я не заметил, а твои крякозяблы частенько выскакивают при отладке прог накрытых последними версиями aspr'aми и особливо при установке хардварных бряков и правки кода, прыжков в коде самого aspr'a , с обычными бряками дела вроде обстоят лучше, поэтому если ты роешься ручками к ОЕП, учитывай то, что aspr во многих местах начинает контролить изменения своего кода, и зачастую мы получаем такой же сабж с крякозяблами. P.s.: воспользуюсь случаем, спрошу уважаемые господа может, кто-нибудь подскажет хороший способ как пройти до Stolen OEP в последних версиях аспра (1.4 - 1.5), естественно в сложных случаях к примеру когда аспр кует HWID, ругается на то, что он явно не тот а затем тут же ExitThread! или с последними версиями только здравый инлайн помогает?! В обычных случаях и со Stolen OEP скрипты VoIX'a и Vnekrolov'a очень хорошо работают, даже на последних версиях ASPR'a.. |
|
Создано: 02 июля 2009 11:55 · Личное сообщение · #4 |
Ранг: 281.8 (наставник), 272thx Активность: 0.25↘0.01 Статус: Участник Destroyer of protectors |
Создано: 02 июля 2009 11:59 · Поправил: MasterSoft · Личное сообщение · #5 |
|
Создано: 02 июля 2009 12:33 · Личное сообщение · #6 он же выложил отчёт в base64! всё, что идёт после Application data: и есть закодированные в base64 данные аспр просто не светит в явном виде данные, которые планирует отправить разработчику )) для расшифровки base64 можно воспользоваться любым онлайн декодером base64 а версию прота определил, скачав эту прогу и прогнав её через ASPriNF v1.6 ----- EnJoy! |
Ранг: 281.8 (наставник), 272thx Активность: 0.25↘0.01 Статус: Участник Destroyer of protectors |
Создано: 02 июля 2009 12:59 · Личное сообщение · #7 |
|
Создано: 02 июля 2009 13:53 · Личное сообщение · #8 Я внимательно прочитал последние вопросы и ответы этого топика. Первое, что хочу отметить, что приложенные мной скрипты не являются панацеей на все случаи жизни. Мне встречаются программы, очень умело защищенные этим протектором, на котором скрипты падают. Кроме того, иногда приходится менять установки Phantom, поскольку программа не останавливается на OEP, а просто запускается, а бывает, что и заваливается отладчик. Поэтому, в каждом конкретном случае, приходится все это анализировать, и применять соответствующие меры, чтобы распаковать программу. ODBScript намертво зависает, если нет какого-либо дампа, которые должны сделать предлагаемые мной скрипты. В этом случае, как я уже писал, приходится убивать сеанс отладки через диспетчер задач, и смотреть, какой пропущен дамп. Цель моих статей - это не тупое выполнение инструкций, а понимание того, что происходит в процессе распаковки программы, и, тем самым, приобретение опыта в распаковке не только этого пакера, но и других протекторов. И я признателен этой переписке, поскольку она показывает на упущенные мной вопросы, на которые следует обратить внимание. Хотя, откровенно говоря, все нюансов, которые имеются при распаковке программы, учесть практически невозможно. |
|
Создано: 02 июля 2009 14:01 · Поправил: Konstantin · Личное сообщение · #9 o_nix но последующий запуск любого другого скрипта контроль crc (прога написана на Delphi) или Эмуляция API Asprotect в главной области кода.osc подвешивает ollydbg намертво у меня оба скрипта отрабатывают нормально (пользуюсь чистой олькой + плаг phantom) И ещё прозьба ... нельзяли уделить немного внимания распаковке программ при наличии валидного ключа Как и писал MasterSoft - сначала регистрируешь прогу, а потом анпакаешь любым скриптом. Это нужно чтобы восстановился криптованный код. Для твоего случая, например вот здесь: Code:
До этого делал через VolX - так он работает только со своими данными реги Он не работает со своими рег. данными, как и скрипт vnekrilov-а, они эмулируют работу API аспра. Что тебе мешает подсмотреть что возвращают эти апи при запуске твоей нераспакованной, зареганой проги, и сравнить что подставляет скрипт при эмуляции? |
|
Создано: 02 июля 2009 14:06 · Личное сообщение · #10 |
|
Создано: 02 июля 2009 16:08 · Личное сообщение · #11 o_nix пишет: нельзяли уделить немного внимания распаковке программ при наличии валидного ключа Мне приходилось распаковывать программу с валидным ключем, что позволило восстановить закриптованные участки кода. Однако, разработчик программы привязал проверку прочитанных данных регистрационного ключа при дальнейшей работе программы. Поэтому мне пришлось изменить немного код программы, в котором, перед переходом на OEP, пришлось дописать код, который обеспечил выполнение некоторых подпрограмм, которые в упакованной программе, вызывались с помощью APIs Asprotect. Еще раз хочу подчеркнуть, что я писал чуть выше - опытные программисты могут настолько сильно защитить свои программы, что с этой защитой не справятся любые скрипты, и приходится проводить подробный анализ этой защиты, чтобы обеспечить нормальную работу распакованной программы. |
|
Создано: 02 июля 2009 16:44 · Личное сообщение · #12 vnekrilov - всё это понятно ... спасибо за проведённую большую работу. Именно потому что у тебя так всё разложено по полочкам я всётаки решился взяться за новый аспр. Единственное чего можно желать это видеоролики твоих уроков тк любой комментарий важен... темболее для тех кто неоченьто и разбирается а сказать можно намного больше чем написать. Да распаковывал мультипостера - это первая прога которую я вспомнил тк знаю что автор их хорошо защищает аспром (знаю его, общаемся с ним) и в ней нет дополн. длл и размер маленький .. готовый стандартный крякме беспокоить его нехотелосьбы у него и так работы валом по даработке прог То что скрипты у когото всётаки заработали на этой проге подталкивает обновить винду что в ней нетак др. мыслей нет По поводу ошибки что выкладывал пробовал и на ollydrx получается тоже самое аспр палит что над ним издеваются |
|
Создано: 02 июля 2009 17:39 · Личное сообщение · #13 |
|
Создано: 02 июля 2009 17:42 · Личное сообщение · #14 |
|
Создано: 02 июля 2009 18:23 · Личное сообщение · #15 |
|
Создано: 17 июля 2009 12:33 · Личное сообщение · #16 следующий вопрос вот есть dll-ка, запакованная аспротектом, примерно 2.2-2.4(как определить точно не знаю, мож подскажете?) при ее загрузке появляется окно, там указан ID вида 23B56253-EAFB, требуется имя и ключ у меня есть валидные ID, имя и ключ ключ вида XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX так вот, в пробовал подменить значение, генерируемое функцией которая его генерирует (там цикл с константами 9C3B248E и C1A7F39A), пишет что ключ не верный затем я узнал номер винта, по которому генерится этот ID, и по выполнению функции DeviceIoControl заменял в буфере свой серийник на тот, для которого есть имя и ключ, генерировался верный ID, но при этом имя и ключ все равно не подходят так же я обратил вниамание на то, что обращение через DeviceIoControl к винту при проверки серийника происходит дважды, при том второй раз генерится не ID а какое то другое число. номер серийника я подменял и второй раз. так вот, вопрос, кто разбирался с этими ID в старших версиях аспротекта? в чем может быть дело? человек, который дал мне валидные данные и прогу к сожалению не помнит, после чего он получил пару имя-ключ, давал ли он при этом какую то инфу и если давал то какую может ли в аспротекте пара имя-ключ привязываться еще к чему то кроме собственно проги и ID, которае она выводит в окошке? |
|
Создано: 17 июля 2009 13:47 · Поправил: gegter · Личное сообщение · #17 |
|
Создано: 17 июля 2009 15:27 · Поправил: Модератор · Личное сообщение · #18 |
|
Создано: 17 июля 2009 15:28 · Личное сообщение · #19 9C3B248Eh и 0C1A7F39Ah - это константы, используемые в функции хэширования строки хвида, на выходе - в eax дворд хвида, по которому потом считается 16-ти битный (двухбатный) CRC пример: 4A555021-3501 где 4A555021 - dword, хэш строки хвида (серийный номер харда, например) 3501 - word, CRC16 от строки "4A555021" если кому нужно, могу выложить утиль, которая формирует валидный хвид от любых данных ----- EnJoy! |
|
Создано: 17 июля 2009 15:32 · Поправил: Модератор · Личное сообщение · #20 |
|
Создано: 17 июля 2009 15:56 · Поправил: user_ · Личное сообщение · #21 |
|
Создано: 17 июля 2009 16:48 · Личное сообщение · #22 |
|
Создано: 17 июля 2009 19:13 · Личное сообщение · #23 ASProtect HWiD создание валидного хвида из любой строки-источника (может быть серийным номером харда, например) create valid hwid from any source string (may be hdd serial number, for example) 1ed9_17.07.2009_CRACKLAB.rU.tgz - ASProtect_HWiD.v1.0.rar ----- EnJoy! |
|
Создано: 17 июля 2009 19:51 · Личное сообщение · #24 |
|
Создано: 17 июля 2009 22:19 · Личное сообщение · #25 progopis пишет: я думал ты имел в виду тулзу которая сама считывает номер харда вообще-то я вполне определённо выразился ;) Jupiter пишет: если кому нужно, могу выложить утиль, которая формирует валидный хвид от любых данных под любыми данными понимается строка, будь то серийный номер харда или что-нить ещё в принципе, можно сделать и получение серийника харда - это не проблема фишка в том, что если патчишь хвид, то с помощью моей тулзы можно сделать любой хвид, который при этом будет валидным ----- EnJoy! |
|
Создано: 18 июля 2009 00:08 · Поправил: Модератор · Личное сообщение · #26 |
|
Создано: 18 июля 2009 00:42 · Личное сообщение · #27 |
|
Создано: 18 июля 2009 00:50 · Личное сообщение · #28 Jupiter пишет: чтобы ф-ция хэширования всегда возвращала в eax одно и то же значение. и всё. Функция хеширования вызывается много раз (около 100), патчить надо только в том случае если CRC-функция вызывается для хвида. Если нужен пример, глянь релиз аспра. Там патчится на хвид двордом 35BE0DF3 (первая часть хвида). |
|
Создано: 18 июля 2009 01:07 · Личное сообщение · #29 как я уже писал выше, ф-ция хэширования возвращает DWORD (4 байта | 32 бита) хэша после чего этот дворд переводится в строку и лишь потом считается crc16 от этой строки и добавляется в конец хвида всё это я описал и разобрал на примере в посте #29 поэтому мои слова "если уж патчить - то не после, а вместо" относятса как раз к получению хвида, а не к другим ф-циям ----- EnJoy! |
|
Создано: 18 июля 2009 08:47 · Личное сообщение · #30 Всё дело в том, что то что я называл progopis пишет: CRC-функция это как раз твоя Jupiter пишет: ф-ция хэширования возвращает DWORD Ну так вот. Эта хэширующая функция используется МНОГО раз и не только во время получения хвида. И всё же вот: progopis пишет: Если нужен пример, глянь релиз аспра. Там патчится на хвид двордом 35BE0DF3 На этом холивар окончим. |
|
Создано: 19 июля 2009 03:03 · Личное сообщение · #31 Jupiter пишет: если уж патчить - то не после, а вместо Хз..патчат обычно на подмену, под конкретный ключ, если есть валидная пара. Тут обычно последовательность действий, и "после", и "вместо", а на выходе из функи, или каком-то этапе - это уже частность... ----- Чтобы юзер в нэте не делал,его всё равно жалко.. |
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . 17 . 18 . 19 ... 38 . 39 . >> |
eXeL@B —› Протекторы —› Анализ ASProtect |