Pull to refresh

Comments 31

Спасибо за статью. Всегда интересно почитать про взлом программ.
Теперь есть представление о том, как делают кейгены :)
Очень размытое представление. Львиная доля приемов не рассмотрена (за ненадобностью в донном случаи). У каждого своя техника, etc. :)
Берём программу проверяющую ключ, пишем программу, которая генерит ключ проходящий все проверки, профит.
256битные ключи я обычно факторизую тупо Maple'ом. А вот дальше приходится поднимать уже тяжелую артиллерию.
UFO just landed and posted this here
Она в конце статьи. В «материалах»
Автору на заметку: расковыряй что-нить с таким же описанием но с применением вирт.машин. К примеру старенький кейгенми от Ms-Rem(тот самый что с брайнфаком) или с минимальными опциями после Enigma, RLpack(там пи-код простейший). Совет даю потому что ничего не видел на хабре по ковырянию вирт.кода и тем более его сворачиванию.
ЗЫ: У меня пока на диске черновик ковыряния полиморфиков, хотя врядли это кому-нить уже надо, поэтому и не выкладываю )
>> расковыряй что-нить с таким же описанием но с применением вирт.машин
У меня были статьи о ковырянии вм, но на crackmes.de, который слег точно также как и мой винт со всеми старыми статьями и проектами.

У RLPack даже скорей RLProtector вм вообще уныла. На счет вм энигмы я тоже в курсе ;)

Посмотри как пойдет эта статья, может выкину еще парочку по заданиям с кряклаб контеста 2010, там во втором задачи как раз была вм, а первое просто интересное. :)
>>У RLPack даже скорей RLProtector вм вообще уныла. На счет вм энигмы я тоже в курсе ;)
Ну ведь смысл-то хабра не показать свою крутость, а нести знания в массы! Понятно что в RLpack плюшевая ВМ. Однако даже на ее примере можно показать методики ковыряния. К примеру у меня знакомый сразу переходит к написанию сворачивания, без написания какой-либо проверялки. Я не разделяю подхода своего знакомого, потому что много раз оказывался в ситуации, когда из-за невнимательности неправильно понял логику пи-кода и приходилось проверять чуть ли не все правила сворачивания. Сейчас конечно же подход к разгребанию совершенно другой )))
Ну ок. Постараюсь рассмотреть что-то с вм.
Вот вспомнил, что была в паблике статья о разборе вм обсида с последующем написанием декомпилятора, в которой я был соавтором.
tport.org/releases/tools/oi122.7z
Применение ВМ не сильно затрудняют анализ. Тк любой байт-код — это набор инструкций под другой процессор, а тк все это виртуализируется, то всегда известно какое имеет соответствие для ia32 любая команда
>>Применение ВМ не сильно затрудняют анализ.
Ну значит Вы должны быть серьезный чел. Берите VMprotect и через 2-3 недели ждем статью на хабре. Судя по вашим словам, для Вас это Элементарно!
Не знаю, я не могу судить о своих знаниях. Мне хватает того, что знаю. Не вижу необходимости ковырять vmprot т.к. уже несколько человек имеют неплохие наработки, как правило я изучаю, то что мне интересно или надо, а не по заказу. Я могу хоть сейчас описать ВМ протектора SF, но не буду это делать по ряду многих причин.
Сами по себе ВМ не сложные. Имеется некий набор команд, некоторая структура которая является памятью ВМ и сам обработчик, который исполняет команды. Если человек может изучить архитектуру и ассемблер нескольких разных процессоров, то в чем проблема изучить еще один, виртуального процессора если уже будет описание? Сложность, как правило, в получении этого даташита из-за замусоренности реализации ВМ, но посидев полные 2-3 дня можно уже на глаз выявлять основные моменты обработчиков команд. Другое дело, что автоматизировать это довольно сложно бывает.
>>Не знаю, я не могу судить о своих знаниях. Мне хватает того, что знаю.
Сумбурно как-то то Вы пишете, что не можете себя оценить и тут же пишете, что Вам уже хватает. Ну да ладно…

>>Другое дело, что автоматизировать это довольно сложно бывает.
Вот именно это и имеет ценность! Толку-то от того что видно глазами то? Смысла никакого! Не будешь же руками хекс-код писать в хью. Автоматизация как раз и имеет смысл!
Сколько времени ушло на квест?
Будут продолжения?
Ушло 3 дня, с которых в первые 2 сидел по 2-3 часа, а потом пришли выходные и в субботу ночью уже был отправлен кейген автору.
Посмотрим как пойдет эта статья, т.к. эта моя первая более-менее большая статья. И будет ли свободное время в достаточном количестве.
Массивы и константы используемые в алгоритмах были нетронуты, почему SnD Reverser Tool сходу определил их? Я имею ввиду простейший xor констант и массивов, ведь это 50% успеха знать алгоритмы. Хотя и без этого весьма интересный крякмис.
ЗЫ Пропустил все задания с 2010, не смотрел даже.
>> ЗЫ Пропустил все задания с 2010, не смотрел даже.
Думаю еще можно найти задания. Попробую порыться в архивах, может завалялись.
Ух. Спасибо, работа похоже откладывается )
Такие виды защиты устарели… Это методы 90-х.
А какие не устарели? Что вообще сейчас работает?
Когда цена вопроса заходит за килобакс, то даже рипают код из-под VMprotect и Oreans Code Virtualizer, есть такой печальный опыт :(
>>А какие не устарели? Что вообще сейчас работает?
Я бы рекомендовал ставить вопрос по-другому, по-школьному: «А что именно нужно защищать?». Можно защищаться по разному. Если один разработчик ставит акцент на запускаемость его ПО только обладателями лицензии, то другому куда важнее чтобы код не разобрали и не применили в своих продуктах конкуренты.
Нужно чтобы конкуренты не рипнули алгоритм при бюджетах на реверс > 5 килобаксов. Есть что-нибудь подходящее?
Вы о чем? О вышеописанном крякмисе?
Если да, то такие методы (с использованием крипто, хешей и т.д.) не устаревают и будут использоваться еще очень долгое время.

Какие по вашему новые методы? VMP, ASPR, фима, арма и прочие? — ну так для некоторых из них и на паблике инструментов для разбора хватает. О привате вообще молчу (гляньте последние 20-30 релизов, там кейгены для прог и под фимой и под вмп, и один из последних — для декомпилятора VB под энигмой (правда с патчем паблик-кея) ).

За статью спасибо, очень познавательно.
И особое спасибо — это за инфу о подделке CRC32.
Ну, между нами говоря, то большинство таких «великих» релизов FFF это или подмена паблик-кея, или же выуживание данных со скарженого ключа, етс. Если вы могли заметить, то большая часть их «великих» кейгенов идет вместе с патчем. Да, не спорю, команда хорошая, но у них основная масса релизов это патчи и крякед ехе, они поддержуют свою репутацию толко вот такими редкими «скандальными» релизами.
Sign up to leave a comment.

Articles