Страница: 1 | 2 | 3 | 4 | 5 | 6 |
Вопрос: Защита программ от взлома с помощью PowerBASIC
Добавлено: 23.03.05 14:44
Автор вопроса: alex
На сайте http://forum.sources.ru/ с 25 февраля по 25 марта проводится конкурс "Методов защиты программ от взлома", смотрите вот этот топик:
http://forum.sources.ru/index.php?showtopic=84647&view=showall
Я тоже решил в нем участвовать со своей защитой написанной на PowerBASIC for Windows, в качестве защищаемого приложения использовал PBNote.exe из примеров C:\PBWin70\Samples\SDK\PBNote2.
Механизм защиты представляет собой самописный протектор, который компилируется вместе с основным кодом приложения.На создание протектора потратил 1 день, используя идеи Матусовского и примеры из POFFS, скачать программу можно с
http://scriptcom.narod.ru/files/textpad.zip
Кроме моей, было еще 4 защиты написанные на Ассемблере, С++, и Visual BASIC 6. Для большего эффекта, закинул свою программу на WASM.RU, и предложил ее взломать:
http://www.wasm.ru/forum/index.php?action=vthread&forum=5&topic=9055
Результат такой, за месяц, с моей страницы TextPAD скачали около сотни кракеров. Первым, защиту не ломаемой признал Broken Sword с WASM.RU, потом еще десяток кракеров написали мне письма, о том, что не смогли взломать мою программу. При этом многие спрашивали, на чем написана программа? Делались предположения, об ассмеблере, С, и даже Fortran, никто и предположить не мог, что это один из клонов Бейсика. Из всех взломщиков, только CheshireCat сумел отыскать лазейку, чтобы
обмануть защитный механизм. Именно “обмануть”, а не взломать, хотя эту дырку я оставил специально, и мне даже пришлось намекнуть на нее в форуме, чтобы хоть кто-то смог обойти защитный механизм.
Другие защиты, выложенные для конкурса, были взломаны через 1-2 дня, и только защитный механизм TextPAD остался несокрушимым.
На 80% процентов это заслуга компилятора PowerBASIC:
1.PowerBASIC создает очень эффективный машинный код, что позволяет использовать мощные криптографические алгоритмы без потери производительности.
2.Гибкость языка и встроенный ассемблер дают возможность писать самомодифицирующийся(полиморфный)код.
3.Компилятор позволяет внедрять куски зашифрованного кода
в EXE файл.
4.Встроенный механизм отображения окон DDT (Dynamic Dialog Tools)после компиляции превращается в “ассемблерную кашу” крайне сложную для анализа.
5.Чтение данных из текстовых полей DDT, осуществляется посылкой сообщений типа WM_XXXX, а не функцией GetWindowTextA как в Delhpi, что затрудняет реверсинг.
Если у кого-нибудь, есть коммерческие проекты на PowerBASIC, можно использовать мой протектор для их защиты от взлома. Тем более, что он прошел серьезную проверку лучшими кракерами. Так, что готов рассмотреть любое сотрудничество.
:)))
Ответы
Всего ответов: 88
Номер ответа: 1
Автор ответа:
gvozd
Разработчик Offline Client
Вопросов: 164
Ответов: 1317
Web-сайт:
Профиль | | #1
Добавлено: 23.03.05 15:45
А твой протектор платный? Мне будет нужен протектор. А ты ту лазейку закрыл?
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 23.03.05 15:52
Гы и на кой?! Полно в инете всяких механизмов защиты с их описанием. Ну а что касается PowerBasic'a это конечно вещь.
Номер ответа: 3
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #3
Добавлено: 23.03.05 16:19
Ну а что касается PowerBasic'a это конечно вещь.
Поддерживаю. Мы не фанаты - хорошие вещи видим сразу. Был бы Бейсик лучше - им бы пользовались.
Номер ответа: 4
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #4
Добавлено: 23.03.05 16:26
Хм, я бы по-ламал твою защиту, т.к. в машинном коде компилятора оринтируюсь более менее сносно. Но времени нет к сожалению.
Номер ответа: 5
Автор ответа:
alex
Вопросов: 84
Ответов: 453
Профиль | | #5
Добавлено: 23.03.05 16:41
Да, хочу сделать его платным. Чтобы быть заинтересованным в его развитии. Лучше всего, чтобы автор давал какой-то процент от продажи каждой копии своей программы. Если протектор сломают, я тоже не буду получать денег, это дополнительный стимул для меня улучшать защитный механизм.
Лазейку, конечно можно закрыть, это не сложно.
Номер ответа: 6
Автор ответа:
alex
Вопросов: 84
Ответов: 453
Профиль | | #6
Добавлено: 23.03.05 16:43
to CyRax:
Так мне говорили десятка два кракеров, и какой результат?
Лазейку нашел только один из сотни, да и то по моей наводке...
)
Номер ответа: 7
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #7
Добавлено: 23.03.05 16:44
Угу, успехов тебе. Будет хорошая - обязательно купим (если конечно сами что то продадим)
Номер ответа: 8
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #8
Добавлено: 23.03.05 16:55
Ну они ж PowerBasic не знают
Номер ответа: 9
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #9
Добавлено: 23.03.05 17:04
А вообще, неломаемая защита - это миф о загробной жизни
Номер ответа: 10
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #10
Добавлено: 23.03.05 17:52
alex, как-то тебе bogrus давал модуль для запуска экзешника из ресурсов (если я ничего не путаю). Этот модуль используется в этой программе/механизме защиты?
Номер ответа: 11
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #11
Добавлено: 23.03.05 18:15
Ага, так он тебе и скажет А если даже и используется, то по идее ж XP в куче не разрешает код запускать. Выходит что не используется, хотя кто знает
Номер ответа: 12
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #12
Добавлено: 23.03.05 18:58
Я не к тому, чтобы воспользоваться в корыстных целях этой информацией Просто тот модуль имел некоторые особенности, о которых хотелось узнать.
Номер ответа: 13
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #13
Добавлено: 23.03.05 19:22
Гм. Я чего-то не понял. Если полезный код зашифрован, о каком взломе может идти речь? Устойчивость программы нужно проверять, имея на руках хотя бы один валидный ключ.
Номер ответа: 14
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #14
Добавлено: 23.03.05 20:36
Вы меня заинтриговали. Качну ка и я себе.
Номер ответа: 15
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #15
Добавлено: 23.03.05 20:38
А почему такой экзешник большой - 104 кБ?