Cracking: скручиваем счетчик

Xakep, номер #048, стр. 048-064-2


Прежде чем приступать к взлому и хвататься за отладчик, нужно понять принцип работы защиты, разгадать, где ее слабые места, и какой инструмент тебе понадобится, чтобы вскрыть их. Очевидно, если программа имеет ограниченный период работы, то она где-то хранит дату своей инсталляции или дату, когда бесплатное использование станет невозможным. Самым распространенным местом хранения подобной информации стал системный реестр. Что ж, давай отследим, к каким ключам обращается Sygate Personal Firewall Pro при запуске. Для этого я воспользовался утилитой Registry Monitor. Чтобы получить отчет только о деятельности взламываемой программы (куда обращаются все остальные, нас не интересует), в меню Edit выбираем пункт Filter/Highlight, в поле Include вводим SMC (главный исполняемый файл нашего файрвола называется SMC.EXE) и нажимаем кнопку Apply. Теперь обращения остальных процессов к реестру не будут засорять лог работы программы Registry Monitor. Запускаем брандмауэр Sygate. После появления окна регистрации сразу же завершаем приложение, либо в Registry Monitor отключаем дальнейшее отслеживание обращений (пункт Capture Events в меню Edit). А теперь смотрим на наш улов в поисках ценной информации. А найти что-то нужное в этой куче непросто. Но, тем не менее, меня заинтересовало обращение к параметру BypassPromptReg (можно перевести как "пропускать приглашение к регистрации") в разделе HKEY_LOCAL_MACHINE \ SOFTWARE \ Sygate Technologies, Inc. \ Sygate Personal Firewall. Тем более что такой параметр найден не был. После двойного щелчка мышкой по соответствующей строчке в отчете, Registry Monitor запускает стандартную программу редактирования реестра (RegEdit) и автоматически открывает нужный раздел. Затем я создал параметр BypassPromptReg типа DWORD и присвоил ему значение 1, что соответствует значению Истина для логических переменных. Закрываем RegEdit и Registry Monitor, заново запускаем Sygate Personal Firewall Pro и видим его рабочее окно без всяких намеков на необходимость регистрации. Надеюсь, ты заранее приготовил пиво, чтобы обмыть победу. Иначе придется бежать в ближайший магазин.

Честно говоря, я и сам не ожидал, что все так просто получится. Зато мы снова убедились, как важно заранее понять, насколько это возможно, суть исследуемой защиты, выбрать нужный инструмент и суметь правильно его применить. Ведь нам удалось не только взломать программу за пару минут, но и сделать это, не прибегая к помощи отладчиков и дизассемблеров. И даже не меняя код самой программы, а лишь добавив один параметр в реестр.

Создаем reg-файл, которым сможет воспользоваться любой желающий, чтобы зарегистрировать Sygate Personal Firewall Pro 5.0. Вот как он выглядит:

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Sygate Technologies, Inc.\Sygate Personal Firewall]

"BypassPromptReg"=dword:00000001

Пациент 2. LockDown Millennium Pro

Что ж, раз все оказалось слишком просто, давай попробуем взломать что-нибудь посложнее. Это будет пакет LockDown Millennium Pro 1.1.0 (www.lockdowncorp.com), состоящий из нескольких программ, призванных обеспечивать безопасность твоего компьютера. Лично у меня возникают огромные сомнения в надежности и полезности входящих в него утилит. Но вполне возможно, что и у него найдутся свои пользователи. Нас же он интересует исключительно с точки зрения содержащейся в нем защиты от тех, кто не желает платить за него денежку. Как и в предыдущей программе, в нем имеется ограничение - 30 дней бесплатного использования. Главное меню всего пакета (файл LDProMenu.EXE) в строке заголовка своего окна сообщает о количестве оставшихся дней. Если срок вышел - об этом говорит фраза "DEMO EXPIRED" - все входящие в состав пакета программы становятся недоступными для запуска.

Назад на стр. 048-064-1  Содержание  Вперед на стр. 048-064-3