Я человек новый и хотел бы сначала узнать мнение этого форума, тк екзелабе.ру мою тему удалили. Сейчас повсеместно ставят 64-битные операционки, отладка идет с косяками, через некоторое время туториалы Рикардо Нарвахо станут классической литератоурой без практического применения. Может быть модераторы кряклкаба правы, тк там может быть университет, а я со своими 2*2 =4. Введение в крэкинг с помощью OllyDbg 1.1 в Windows 7 x64 Создано: 16 июля 2018 03:08 Цитата · Личное сообщение · Правка · Стереть #1 Это информация будет полезна для начинающих крэкеров. Надо отметить, что часть примеров из туториала нельзя выполнить в x64. Глава 34 - Ручная распаковка UPX'a и восстановление IAT Самый лучший вариант - это изучать и запускать все примеры в 32- разрядной Windows. Но по целому ряду причин, на все новые компьютеры с 8-16 Гб памяти пользователи устанавливают 64-битные операционные системы, а виртуальные машины создают дополнительные трудности. Итак, запускаете OllyDbg 1.1. Дебагер должен запуститься без ошибок. Если выскакивают сообщения об ошибках, для начала отключите все плугины. Приведу список плагинов, проверенных в Windows 7 x64: CmdBar.dll Cmdline.dll } взяты из туториала OllyDump.dll PhantOm.dll (вместо HideDebugger.dll и HideOD.dll) Если дебагер запускается с ошибками, вы можете запустить его в режиме совместимости с Windows XP SP3 и использовать для поиска серийных номеров. Для распаковки программ этот вариант не подходит, тк Windows 7 x64 запускает программу в безопасной среде и загружает дополнительные библиотеки, такие как, apphelp.dll и тд. Эти библиотеки эмулируют часть функций из kernel32.dll и ntdll.dll. Конечно, вы можете сравнить импорт в ImpREc d 32- и 64-разрядной ОС и составить таблицу соответствий для каждой API-функции. В x64 следует использовать только PhantOm.dll, тк плагины, указанные в туториале, не скрывают дебагер, но определяются навесной защитой. Удалите их из папки плагинов. Вместо ImpRec в x64 лучше использовать Scylla_x86.exe, ver 0.9, тк версия ImpRec из туториала не может определить часть api-функций при поиске IAT. Scylla_x86.exe, ver 0.9 не видит отлаживаемый процесс в случае запуска дебагера в режиме совместимости. PhantOm.dll и Scylla_x86.exe, ver 0.9 можно взять из архива "Исследование кода VMProtect. Часть 1. Патч хешей", автор Djeck. Остальное описано в Главе 34. Вместо метода PUSHAD часто устанавливают брекпоинт hr esp-4 Вместо правки OEP в PETools в уже отремонтированном дампе, лучше использовать следующий прием: -в Scylla x86 оставляете OEP, указываете VA и раззмер IAT и нажимаете кнопку Get Import (реконструктор IAT сканирует образ программы в памяти). - там же после валидации всех элементов IAT, исправляете OEP на исходный, найденный в дебагере, и нажимаете кнопку Fix Dump Глава 35 - Распаковка ASPack v2.12 Набор инструментов и плагинов описан выше. Дамп снимается с помощью плагина OllyDump.dll. Метод 2 для автовосстановления дает рабочий дамп.
(Перед тем как опубликовать тему, я попрактиковался до 41 главы, но в виндовс 7 32-бит (на 64-битке все шло со скрипом), а также снял вмпротект по туториалу Джека, не совсем нуб).
Я бы все же поставил в ВМваре винXP32, и пробовал бы в нем. Потому что результат действий, описанный в туториалах, и результат, получаемый, используя не-родную среду для повторения действий, описанных в туториале, отличаются. По своему небольшому опыту - тот же поиск базы Kernel32 будет другим для ОС Виста+. А 64-разрядность добавит подводных камней. И потом, ОС в виртуалке угробить - не страшно.
trsoft, Не правильный подход к задаче. Если в отладчике или есчо где то возникает какая то ошибка, то нужно разобраться и найти её причину, а не менять софт(плагины). 32-64 разницы особой нет, есть лишь мелкие нюансы типо rip адресации и набора регистров, но зная 86 архитектуру даже не встанет вопрос разницы. В кернел да, адресная трансляция и тп, но это пока вам не нужно. Конкретно по пакерам и прочей защите - её варианты бесконечны, особенно если это касается защиты от ав. Поэтому как и всегда нужно понять общие принципы, когда вы это будите знать/понимать то плагины использовать не будите из их кривости. При должном уровне знаний любая задача с отладчиком решается за десятки минут в компиляторе. С чего начать - любая интересная вам задача приведёт к цепочке вопросов и так рекурсивно, на которые вы будите искать ответы. Постепенно вы вольётесь в тему и сможете что то самостоятельно разработать.
Indy_, я разобрался Olly 1.1. Исходная версия с русификатором. Дебагер падал при открытии любой программы в дебагере. 1. Заменил dbghelp.dll на последнюю 32-битную версию. 2. Снял все галочки на вкладкеисключений. 3. Включил режим совместимости и после того как все запустилось, отменил его. После этого все работает при любых настройках. По плагинам, скрывающим отладчик. Если загружены старые плагины, то программы обнаруживают отладчик. Они работают только с флагами 32-разрядной структуры PEB. Фантом работает корректно во всех версиях, т.е. определяет версию и разрядность операционной системы.
Глава 38 - Распаковка Yoda's Protector v1.3 (Yoda's Crypter) В W7 x64 отличаются все адреса таблицы импорта от указанных в туториале Нарвахо: 00460ADC 1F 4D 5E 00 24 4D 5E 00 M^.$M^. 00460AE4 29 4D 5E 00 2E 4D 5E 00 )M^..M^. что затрудняет ручной поиск и восстановление IAT. Короче, качаете посл. версию ImpRec.1.7e и методом Трейс 1 исправляете все адреса, кроме одной апи-функции из user32, замененной аналогичной из ntdll, правите вручную.Ссылка на архив ImpRec.1.7e без пароля выдается гуглом на 1-й странице запроса.
Немного, это на 15лет, увы. Проверьте "Ссылкоподборку", там много всякого. В частности, ссылки на блоги и статьи по ИБ.
А эти туториалы только для 1 олли, или можно их пройти во второй? Для себя я юзаю 2ую, 1ую в глаза не видел, если честно. Думал, что как бы вторая (логично) как апгрейд первой. Потом где-то видел инфу, что первую и вторую писали разные люди. Где истина?