| Вернуться на сайт |
Руководство по
исследованию защиты программы
KeyPIN.exe версии 2.3.0
(c)FM
Итак, мы имеем программу KeyPIN, как написано в описании "Универсальный генератор пин кодов карт экспресс оплаты для GSMLite (Мегафон), MTS, Beeline и Джинс". Такое количество операторов сразу наводит на мысли, да? Немного отвлекусь от темы, сказав, что данное руководство является логическим продолжением моей статьи "Генераторы карточек: почему это не работает" на сайте.
Кстати, программа любезно предоставлена товарищем Max и скачана c http://www.mysiteinc.com/westwood/index.html.
Сразу проникшись особым доверием к программе, распаковываю архив и наблюдаю кучу файлов, нужными из которых являются только 2 – сама программа и ocx-компонент к ней (наблюдательные люди при этом сразу отмечают, что язык написания программы – Visual Basic). Остальные файлы в виде доков, htm и т.д. являются платежками и описаниями способов оплаты данной почти халявной программы (стоимость всего $5). Мы не буржуи и не лохи, у нас есть мозги, поэтому запускаем DrWeb. Сразу ставим программе плюс за отсутствие вирусов и троянов, это уже интереснее, поэтому копаем дальше.
Запускаем чудесную утилиту PeId (у меня 0.92, есть уже 0.93), и чудесным образом узнаем, что программа упакована пакером Petite 2.1. Я про такой слышал, даже есть примеры распаковки для другой версии, но без заморочек помогла опять же прога PeId, вернее плагин Generic Unpacker. Самостоятельно найдена точка входа OEP = 004019F8 и после нажатия Unpack свершилось чудо – файл стал размером 424кб и PeiD опознал его как VisualBasic 5-6.
Теперь уже можно смотреть, что от нас требует программа. Запускаем, нажимаем регистрацию. Прога просит ввести серийный номер. Нет ни имени пользователя, ничего такого, что намекает на написание кейгена. Это тоже плюс. Вводим все 1, наблюдаем за реакцией. Реакция ожидаемая: неправильный код:

Ну что, теперь понятно, что и как искать. Далее запускаем еще один чудесный инструмент, дизассемблер IDA. Не вдаваясь в подробности, ищем строчку "reg" (еще варианты serial и т.д.) и наблюдаем следующую картину:

Строчка над <reg> сразу наводит на мысли о не зря выпитом пиве ;-) Вставляем серийник SaeUmy3zX29zR6cVpk в программу, наблюдаем:

О чудо! Но следом:

А счастье было так возможно! Прога на Visual Basic требует MacOS десятой версии (тут я ржал!!!), но и на этом не остановилась:

Надо ли кому-нибудь говорить, что эти окна уже прописаны в программе (т.е. не являются системными сообщениями)? Я думаю, что нет.
Вывод для тех, кто верил до конца: халявных генераторов (как впрочем и не халявных) НЕ БЫВАЕТ!