Как стать автором
Обновить

Комментарии 72

Хотел намекнуть на то, что текст статьи попадает под наше законодательство, посмотрел на ник… задумался.
НЛО прилетело и опубликовало эту надпись здесь
А пока никто и не собирался, слава Лейн. В конце концов, холиворы оставим на потом, а почитать хорошую статью про исследование систем защиты приложений всегда приятно (^_^)
Было время, когда я только искал свой профиль в сфере IT, я любил всяческие крякмиксы и т.п. Но именно из-за нелегальности данного направления долго не задержался в этой сфере. Теперь же, читая подобные топики многое конечно-же не допонимается, но тем не менее, вызывает состояние некоторой эйфории и ностальгии.
Последний раз открывал олли наверно год назад, а раньше это было моей главной работой, но прекратил также как и Вы из-за незаконности хакинга и того, что это дело тянет на себя просто уйму времени к сожалению. А вообще есть в скринах отладчика и всех хакерских тулзах, что-то магическое.)
Отлаживать чужое может и не легально. Но крякмисы не защищенны какой-либо лицензией, и собственно сделаны для того, чтобы их анализировали. В этом плане все чисто.
Да и интерес у органов Вы не будете вызывать до тех пор, пока не начнете выкладывать кряки на право и на лево, или пока не перейдете этим дорогу софтверным компаниям из черного списка.
Ну или реверс будет предлогом взять Вас за что-то другое.
Отличная статья, я раньше играл в эту версии игры, очень занятная времяубивалка. Сейчас играю в неё же только на фейсбуке — флеш версия.
а нам вы это зачем сообщили?
Сделайте свои скрины в jpg, ибо 400кБайтная картинка в краткой новости в png — это жестоко…
Преобразовал в .JPG, подсчитал размеры.
Те файлы, где .PNG-версии были объёмнее (в частности, титульную картинку) заменил.
Бедная Зума, как же над ней только не издевались =) Из лучшей классической игры в своем жанре превратилась в подопытного кролика :)
>> превратилась в подопытного кролика
Скорее в лягушку для препарирования.
А почему бедная? Своего рода «уважуха» игре.
Уважаемую игру(программу) не ломают. Это понимают не сразу, это приходит со временем.
А можно пример уважаемой программы, к которой нет кряка по «этическим соображениям»?
Avid ProTools 9/10 win, mac поломали через дикие костыли. ни к одной версии PT нет ни одного нормального кряка от уважаемой группы.
Steinberg Cubase 6 под обе платформы, поломана только обрезанная версия под mac
Steinberg Cubase 5 под win — полтора года не ломали, mac вроде так и никто и не делал.

это только популярное.
Cubase группа H2O перестала ломать из-за слишком больших трудозатрат, если мне не изменяет память. Они как эмулятор аппаратного ключа написали, так сразу в ридми указали, что больше их на такие подвиги не тянет.
я бы не сказал, что сложные системы для обработки звука популярны. Это же не фотошоп какой, которым можно фотографии урезать совсем без навыков.
можете считать эти программы фотошопом для аудио, если вам нравится такое сравнение.

практически каждая уважающая себя аудио или музыкальная студия имеет либо cubase, либо PT в наличии, потому что это стандарт.
это я к тому, что у среднего юзера задача обработки изображений куда актуальнее обработки звука. А студии — это совсем не средний юзер.
Поэтому та же уважаемая группа лучше напишет таблетку для популярного в массах PS, чем кряк для PT, которым воспользуются 3.5 человека.
вы сильно недооцениваете этот рынок.
почему? Зашел в гугле на первый сайт по запросу software popularity, software.informer.com. Среди их пользователей Photoshop стоит у 932 781 пользователя, Steinberg Cubase — у 5 471.
По оборотам рынки, возможно, и одинаковы, но по количеству пользователей и, соответственно, популярности кряков, емкость совершенно разная.
Может быть. Но уж эти-то 5471 пользователя без Cubase не могут совершенно никак. Как минимум потому, что и альтернатив-то нет, по сути (как, например, Gimp в случае в Photoshop)
И что? Спасибо за сравнение ложки с саперной лопатой, в этом вы преуспеваете.

Зайдите уже на какой-нибудь популярный русский торрент-трекер и гляньте количество скачиваний, у пятой версии оно стремится к 100 000. Вот это — показатель популярности работы варез-групп, а какой-то сайт, занимающийся индексированием непонятно как — нет.
Как выше упомянул braintorch, Cubase не ломали не по этическим соображением, а совсем по-другим причинам. После того как Steinberg выпустили версию с защитой от Syncrosoft, h2o (команда, которая обычно занималась взломом профессионального аудио-софта), смогли выпустить крек только через 9 месяцев после выхода Cubase. В .nfo файле к креку было сказано, что взлом этой защиты был для них делом принципа, но из-за чудовизных трудозатрат (речь шла о паре человеко-лет), больше они эту защиту ломать не будут. Как-то так всё было.
Я за других не в ответе, я имел ввиду конкретно отдельных личностей. Пусть кто хочет тот и ломает, но если кому-то нравится какая-то программа (игра) с правильной ценой, которая отвечает требованиям цена/качество, то ее не грех купить, отдав некую дань разработчикам. Я знаю тех кто ломал, но при этом некоторые программы легально покупал для себя. Я себе лично купил Skyrim, т.к. мне нравится этот цикл игр и я долго ждал продолжения.
Ну а вы минусуйте дальше.
Не занудничайте, ломают всё. Мне вот интересно стало, почему такое убожество стоит 16 евро, я в него и бесплатно играть не стану.

Так для сравнения — на Маке игры подобного уровня имеют ценовую категорию около 5$ (специально только что полез посмотреть как дела у маководов с мелкими играми).
Под Линуксами вообще фришные игры такого рода, пусть они может и не такие разукрашенные.
А здесь же имеем случай, когда игра для секретарши продается по цене, приближающейся к квейкам, скайримам, варкрафтам при распродаже на Стиме.

Я предлагаю вообще ни покупать ни взламывать такое.
Уважаемую игру как раз и ломают. Кому нахрен надо тратить время на взлом никому не нужного говна.

Если ломают, значит кому-то это нужно (с) кто-то сказал.
> Что ж, центральная проверка — однозначный шедевр. Надо, наверное, запостить это на govnokod.ru, ну да ладно, мы сюда не позубоскалить собрались.


Не может ли быть так, что эта центральная проверка — результат работы декомпилятора?
А ведь действительно. Как-то не подумал об этом с самого начала…
Получается, от кряка\кейгена спасьтись можно только онлайн-верификацией? Хотя и тут можно хосты закрыть :(
От кейгена помогает длинный RSA.
От длинного RSA помогает короткий патч.
до следующего апдейта+фикзна что патч с компом делает
А вы не пользуйтесь чужим, делайте свои. :)
А откуда у вас уверенность в том, что кейген не делает ничего лишнего.
Хочете достать сыр с мышеловки, будьте готовы попасться. Пусть как вы не будете его доставать (патч, кейген, етс.).
>Хочете достать сыр с мышеловки, будьте готовы попасться. Пусть как вы не будете его доставать
золотом на крак-сайты :)
А откуда у вас уверенность в том, что кейген не делает ничего лишнего.
Верно, но когда он сидит в песочнице, пусть творит что́ хочет, главное — ключ бы давал.

Если кейгену нужно знать количество сетевых адаптеров на компе для генерации ключа, песочница может только помешать.

А взяли бы они RSA ключ побольше и уже keygen было бы не сделать, да? Интересно почему они такой небольшой ключ выбрали…
Вот как раз для того, чтобы ключ был короткий. Типа удобство пользователя без скила копипаст.
О, меня в своё время Acronis порадовал. У них ключ был — 128 бит, из них 64 бита — данные ключа, еще 64 бита — эти же данные зашифрованные по RSA.
В общем, универсальный кейген я помнится тогда сделал для всех продуктов Acronis. Ключ просто брутфорсом брался за несколько секунд на тогда еще слабом железе.
Потом они усложнили задачу. RSA стало 128 бит. Правда, я интерес уже потерял к тому моменту.

Самое ржачное было — находить копии своих кейгенов с перебитыми в нём «by ...» :)))
Зума с мясом. Спасибо!
Надо было использовать 1024-битый ключ, а не 96, тогда и кейгена бы не было.
тогда мне кажется был бы аккуратный патчик заменяющий JE на JNE :)
Ошибка большинства. Это не совсем корректный патч. Нужно патчить или нопами или на безусловный переход, но не менять условие на противоположное.
Ну, справедливости ради, там и не самое удачное место было для патча. Лучше было внутри самой сравнивающей функции перекинуть все ветвления на уже готовый MOV AL, 1 (а то и просто заменить XOR AL, AL на такой же MOV AL, 1).
Ну, да. Но тут сейчас речь больше об общей технике патчей переходов.
Я ведь тоже написал образно. Наверное придется вычислить куда надо перейти и вписать jmp. Это как-то надежнее что ли. А вот насчет nop я не уверен, разве не может переход вести выше того места, где идет проверка? Как тогда nop'ами туда добраться?
Где не нужно чтобы переход сработал заполняем нопами, а где нужно чтобы сработал меняем на jmp.
Никогда бы не подумал, что моя недописанная может вдохновить кого-то на такой интересный разбор.
Да, блин, локальная проверка введенного лицензионного ключа — это эпик фейл.

Не зря всё же в моем мозге живет уверенность в том, что все дыры, благодаря которым «рутуются» и «джейлбрейкаются» современные смартфоны — это фича, а не баг. Ну то есть — часть игры, в которую мы с вами играем.

Точнее можем поиграть, если захотим…
Вообще да, зачастую производители намеренно не заморачиваются над защитой, т.к. было бы желание — всё равно сломают. А те кто хотят взять лицензионку — возьмут её и так.
А насчёт локальной проверки лицензионного ключа в зуме — это вполне не эпик фейл. Ну проверялся бы ключ через сервер, что толку если поправив 1 байт в ехе-шнике игра игнорировала бы ответ от сервера «неверный ключ».
В крайнем случае — эмулятор сервера можно написать. Который будет отвечать, что ключ верный.
И только мне название "обратная разработка" кажется издевательством над читателем? (да, я в курсе, что так reverse engineering переведена на википедии).
Последнее время на Хабре пошла какая-то волна насильственных переводов терминов.

Так как правильно-то перевести?

… это просто обёртка, архив, который по лицензионному ключу разархивирует в свою же папку реальный бинарь с Zuma, названный popcapgame1.exe…
Тогда получается, что лицензия после изменения количества сетевых адаптеров не слетит.
Аж чем-то ностальгическим от поста повеяло. Ловите +. За то, что при виде скринов Olly я вспоминаю себя лет 10 назад.

Если кому-то интересно — давным-давно, курсе на 2-м пробовал ломать (и изучать ASM по ходу пьесы) Хрумер (по-моему 5-й). До кровавых мозолей зеленых соплей и красных глаз. До бессвязного бормотания «MOV EAX, EDX; XOR EDX, EDX;» и поднимаемого абсолютно пустого взгляда в ответ на попытку человеков отвлечь мое внимание от экрана. До ненавистных ассемблерных снов. Программирование на ASM — это что-то как наркота! Слава Программерскому Богу, я спрыгнул. Держусь уже года 4 (было парочка халтур, но небольшие).

Но думается мне, что после этого поста я смахну пыль со своих старых добрых Olly, SoftIce и IDA, восстановлю пароль с cracklab и опять посмотрю на какой-нибудь код с другой стороны компилятора. И сейчас я говорю за это спасибо. Надеюсь опять спрыгнуть получится.
Есть такое: после нескольких часов, проведенных в IDA, наступает состояние какого-то просветления.
Читая в последнее время хабр, все больше хочется создать тему, в которой люди будут пытаться взломать алгоритм написанный другим хаброюзером.
Вообще интересно, но, к сожалению, ассемблер знаю довольно поверхностно и постоянно нахожу что то не до конца понятное.
Что ж, центральная проверка — однозначный шедевр

Я извиняюсь, а разве не так разворачивается в ассемблер выражение вида isigit(a) или ishex(a)?
Это не ассемблер в общем-то. Это результат декомпиляция байткода ActionScript.
Вариантов два:
1) был говнокод
2) так отработал декомпилятор на оптимизированном байткоде.
Можно проверить при желании.
Транслятор ActionScript никогда не делал inlining и, насколько я знаю, не умеет его делать до сих пор.
Тем более, что судя по использованию для декомпиляции Flare, этот код был написан на AS1/AS2 который стар как бивни мамонта.
данный взлом от начала и до конца проделан в образовательных целях и не имеет целью нести убытки компании PopCap Games

Просто на будущее, лучше не употреблять слово «взлом». Это все же тянет попасть под законодательство. Лучше говорить «анализ ПО». Суть действий не меняется, а цель с которой эти действия совершаются звучит благороднее.
А за статью большое спасибо.
Ну как дети, ей-богу! Как не формулируй, законодательству всё равно как вы взлом называете :)
Ностальгия. Занимался «исследованием» лет в 15… пока не поймали… пришлось завязать.

Когда не встаешь с компа всю ночь и под утро наконец находишь нужный ключ к программе или тот адрес где нужно поставить магические jz или jnz, было сравнимо с оргазмом и душевным удовлетворением =))

Но а про сам НЕ взлом…

Вы можете «взлом» называть как хотите и представлять как хотите, но судье будет глубоко все равно почему и зачем вы это делали, даже если это для образовательных целей вашей бабушки.

Другое дело, как себя поведет правообладатель. Ему главное захотеть — и будете всю жизнь работать на выплачивание штрафа. Мне повезло, в 15 лет в тюрьму не посадиш и штраф не выпишешь — простили…

А так — я лично за «исследования». Это даже интереснее чем само программирование.
Я скучаю по этой штуке…

image
image
А я сколько не пытался привыкнуть к этой штуке, а Олька всё равно роднее, но да, ностальгия =)
Да, TRW2000 был однозначно лучшим из лучших, но, к сожалению, для W98 максимум. Я даже какое-то время не выбрасывал старенький ноут с 98, для таких случаев)
Было исключительно удобно запускать дебаггер уже _после_ прохождения всех антиотладочных защит, и оказываться хоть в ring0 сразу)
Гыгы, вы в теме (:
К слову о Zuma.
В Steam все игры Popcap защищены весьма просто. Нужно просто в исполняемом файле удалить всё, грубо говоря, до второго MZ(executable header).
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории