Сейчас на форуме: -Sanchez- (+7 невидимых) |
eXeL@B —› Основной форум —› Анализ VM |
Посл.ответ | Сообщение |
|
Создано: 26 декабря 2015 10:39 · Личное сообщение · #1 Чувствую не дождусь я ответов с crackmes.de, поэтому попробую спросить у местного комьюнити. Сразу оговорюсь я не пишу "новый протектор" но хочу чтобы кто-то проанализировал мою небольшую наработку. Выполнена в виде кейгенми. Меня устроит (как результат атаки на приложение) обычная валидная пара (логин-серийник). Ну а если кто-то сможет реализовать полный кейген - даже не знаю что и сказать. Приложени сишное, при компиляции забыл указать совместимость в XP (поэтому если кто на XP будет дебажить - в заголовке там с шестерки на пятерку поправьте поля MajorOperatingSystemVersion и MajorSubsystemVersion). И еще - это не результат работы навесняка - это то что выдает стандартный компилер 0419_26.12.2015_EXELAB.rU.tgz - keygenme.zip Добавлено спустя 30 минут Ну и суть, я сейчас по этой технике статью пишу и просто хотел в качестве примера дать подытоживающую ссылку - насколько сложен такой подход при взломе ПО. Поэтому код реализации вы в итоге увидите, но для начала хотелось бы получить какой-то анализ | Сообщение посчитали полезным: SReg |
|
Создано: 26 декабря 2015 12:27 · Личное сообщение · #2 я даже смотреть не буду.. логика любой ВМ.. это перенос одного кода в другой. сложность его реверса, пропорциаонально переписыванию движка. на этом ВСЕ. более продвинутые ВМ интерпритируют код в другую архитектуру.. но это ничего не меняет.. грубо говоря.. я возьму код х86 и портну в АРМ.. или Z80.. те.. типа ебитесь друзья реверсеры..но это ничего не меняет.. если реверсер стырил двиг ВМ и востановил примитивы.. да.. долго.. да нудно.. разово делать это не выгодно.. а если прот комерческий, то возможно имеет смысл ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... |
|
Создано: 26 декабря 2015 12:38 · Личное сообщение · #3 Не здесь все просто, ядро - два виртпроцессора с 1 инструкцией, эмулирующие muv, and, or, not, xor, add, shl, shr Движок родной коммерческий, (применялся и работает в моем проекте, правда в виде стековой VM) после внедрения которого AlexVel и спрыгнул с взлома (7 лет как прошло, кстати - только щас осознал . А это чуть другая архитектура которую не стыдно и в открытый доступ отдать. |
|
Создано: 26 декабря 2015 12:39 · Личное сообщение · #4 |
|
Создано: 26 декабря 2015 12:45 · Личное сообщение · #5 unknownproject ну, этож не кракми, а все-же кейгенми Но адрес правки верный Добавлено спустя 11 минут Года полтора назад я MsRem-овскую вм анализировал. http://habrahabr.ru/post/218887/ Свою постарался облегчить (билдил не с всеми настройками) чтобы по сложности была примерно на этом-же уровне. Так что думаю, у профи сильных затруднений возникнуть не должно (темболее антидампа и антиотладки нет в принципе). |
|
Создано: 26 декабря 2015 13:06 · Личное сообщение · #6 |
|
Создано: 26 декабря 2015 13:08 · Личное сообщение · #7 Байт-кода как такового не увидел. Вирт. контекст - x64, переменные на стэке. Вся вм - простыня примитивных операций над переменными, стрелка пирса, дублирование проверок на ветвлениях. Видел все это уже, не интересно. Теоретически, хороший оптимизатор (я все мечтаю о таком) может это все свернуть при должной сноровке. |
|
Создано: 26 декабря 2015 13:10 · Личное сообщение · #8 Как статью наваяю, думаю много где появится (в том числе и в коммерции) - особливо у новичков в защите, бездумно сующих в проект все подряд Добавлено спустя 2 минуты Psalmopoeus Pulcher пишет: Теоретически, хороший оптимизатор (я все мечтаю о таком) может это все свернуть при должной сноровке. Пробовал оптимизатором еще на этапе реализации - не сворачивает (разве что в компиляции под арм - но это уже особенность). И да - там пирс и шеффер (чередуются). |
|
Создано: 26 декабря 2015 13:26 · Личное сообщение · #9 |
|
Создано: 26 декабря 2015 13:43 · Личное сообщение · #10 |
|
Создано: 26 декабря 2015 14:54 · Личное сообщение · #11 |
|
Создано: 27 декабря 2015 00:48 · Личное сообщение · #12 |
|
Создано: 27 декабря 2015 01:58 · Личное сообщение · #13 |
|
Создано: 27 декабря 2015 10:30 · Личное сообщение · #14 Да что там рассказывать... Простетский код размазан как масло по воде - очень много и однообразно, уцепиться, казалось бы, не за что. Поэтому я абстрагировался от примитивов и стал разбирать циклы. Сперва это были небольшие петли по подсчету ненулевых бит, добрая половина кода которых - расшифровка констант ксором в циклах для тестирования ненулевых бит, это навеяло на мысль о бинарной арифметике, а затем, когда накопилось достаточно информации, определилсь сдвиги и сложение по разрядам, огромный цикл был свернут в одну операцию умножения. Туда-сюда, ля-ля-тополя, по чуть-чуть освоился. |
|
Создано: 27 декабря 2015 10:48 · Личное сообщение · #15 |
|
Создано: 27 декабря 2015 11:38 · Личное сообщение · #16 Psalmopoeus Pulcher сильно в теме по поводу ВМ. Помнится его задание во втором туре контеста 2010. https://exelab.ru/f/contest/ В описании задания прямо было написано "Алгоритм проверки довольно прост, чего не скажешь о виртуальной машине, на которой он исполняется ;)". ----- 127.0.0.1, sweet 127.0.0.1 |
|
Создано: 27 декабря 2015 12:09 · Личное сообщение · #17 |
|
Создано: 27 декабря 2015 13:07 · Личное сообщение · #18 Кеген, то кеген, пара строк.. Вот, еще вчера пьяненький написал. Комментарии снарядил. Code:
|
|
Создано: 27 декабря 2015 13:18 · Поправил: Rouse_ · Личное сообщение · #19 Да в принципе оно, константы я да - упустил малеха, а ты заметил. Вот оригинал: Code:
|
|
Создано: 27 декабря 2015 16:01 · Личное сообщение · #20 |
|
Создано: 27 декабря 2015 16:08 · Поправил: Rouse_ · Личное сообщение · #21 |
|
Создано: 27 декабря 2015 16:12 · Поправил: mysterio · Личное сообщение · #22 https://exelab.ru/f/contest/ upd: Раз удалено, тогда ----- Don_t hate the cracker - hate the code. | Сообщение посчитали полезным: SReg, Rouse_ |
|
Создано: 27 декабря 2015 16:13 · Личное сообщение · #23 |
|
Создано: 27 декабря 2015 16:14 · Личное сообщение · #24 |
|
Создано: 27 декабря 2015 16:22 · Личное сообщение · #25 Rouse_ пишет: mysterio там же не качается 7603_27.12.2015_EXELAB.rU.tgz - KeyGenMe_2010_task2.zip ----- 127.0.0.1, sweet 127.0.0.1 | Сообщение посчитали полезным: SReg, Rouse_ |
eXeL@B —› Основной форум —› Анализ VM |