Cracking: шаг второйXakep, номер #045, стр. 045-040-1 Александр А. Феденко aka badman forever (fedenko_soft@mail.ru) В статье "Cracking: шаг первый", вышедшей в июльском номере журнала, я описал инструментарий, который необходим для взлома программ, и обещал в дальнейшем рассказать о методах взлома различных защит на конкретных примерах. Выполняю данное обещание. Итак, шаг второй, практический. Ты установил шароварную программу. И автор даже согласен дать тебе возможность бесплатно ею попользоваться. Но поскольку он, как и ты, не прочь иногда посидеть с девочками в баре, попивая ром с кока-колой и закусывая рябчиком в ананасах, прокатиться по улице на сверкающем "Ягуаре", то в его прогнившей душе зарождается мысль, что ты ему должен. И не веря, что восторженные пользователи сразу же побегут платить свои кровные, как только он об этом попросит, автор начинает добавлять в программу различные ограничения или штуки, которые будут мешать тебе работать, пока ты не заплатишь. Но в тебе-то течет кровь твоих предков, свято веривших в коммунизм, а попросту говоря: в полную халяву. И в тот момент, когда рука человека, всосавшего вкус капитализма с молоком матери, тянется к кошельку или кредитной карточке, твоя рука решительно сворачивается в увесистый кукиш :). И тебе остается одно - исправить чужую программу, лишь бы не платить денежку. Даже если цена ей полкопейки. Конечно, можно скачать готовый крэк или даже написать свою программу. Но ведь ты твердо решил стать крэкером. Nag-screen'ы в шароварных программах Один из самых популярных способов убеждать пользователя в том, что зарегистрированная программа предпочтительнее незарегистрированной, - время от времени (лучше в самый неподходящий момент) выводить так называемый nag-screen. Т.е. окно, в котором автор обычно напоминает, что неплохо бы уже и денежку заплатить. В простейшем случае других ограничений у программы может и не быть, и тогда nag-окно является единственным раздражающим моментом. Иногда такие окна всплывают и в бесплатных программах и имеют рекламный характер, что, впрочем, раздражает не меньше. Nag-окна можно увидеть в ICQ, ACDSee, WinRAR, да что там говорить, практически во всех шароварных программах. Так как ты сейчас будешь первый раз в жизни взламывать программу, я решил подобрать пример достаточно несложный. И удаление nag-окна вполне для этого подходит. В качестве подопытного кролика у нас будет выступать программа Mail Them Pro 6.2 (www.kadmy.com), предназначенная для массовой рассылки электронной почты (говоря языком русским - для спама). При запуске она каждый раз выводит окно, в тексте которого тебе предлагают расстаться с 70 американскими рублями без 5 американских копеек. После нажатия кнопки "I Agree" nag-screen исчезает и запускается главное окно программы. Кроме того, незарегистрированная версия позволяет за одну сессию отсылать письмо не более чем на 40 адресов. Также отключена функция сохранения списков рассылки, а в хвост отсылаемых писем добавляется строчка "NEVER SEND SPAM. IT IS BAD". Крякаем Mail Them Pro Итак, ставь Mail Them Pro, и мы приступим к процессу взлома. Как я уже сказал, наша основная задача - отключить nag-screen. Остальные ограничения нас пока не интересуют. Конечно, если удастся обойти и их - отлично, если нет - черт с ними, это пока не главное. Посмотрим на сам файл mailthem.exe с помощью редактора QView или встроенного в FAR вьювера. Наметанный глаз сразу заметит, что программа написана и откомпилирована в среде Delphi. Например, на это указывают встречающиеся в общей каше названия стандартных классов и обработчиков событий, свойственные этому компилятору. В частности, упоминание класса TApplication. Скажу честно, я специально подобрал программу, написанную в Delphi. Дело в том, что при взломе таких программ у крэкера есть дополнительные возможности и будет глупо ими не воспользоваться. Вообще, знание того, на каком языке написана и в чем откомпилирована программа, позволяет порой существенно ускорить процесс взлома и избавляет от массы рутинной работы. Всегда помни об этом. |


















































































































