![]() |
|
![]() ![]() ![]() |
|
Zakhar_Shan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 14.6.2007 Где: Тюмень Репутация: 1 Всего: 2 |
||||
|
||||
Gradov |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 124 Регистрация: 31.10.2006 Репутация: 2 Всего: 3 |
Пункты 1 и 2 понятны, а вот c помощью RSA, что закрывать? Сам хеш md5? Если да, то зачем, непонятно... По-моему для такой небольшой задачи одного md5 вполне хватит. Хотя кашу маслом не испортишь, конечно... А вообще я не понимаю какой во всем этом смысл? Ну собрал идентификационные данные компа, взял хеш, закриптил RSA и запихнул в файл. Далее при запуске проги считываются данные компа, берется хеш, декриптуется по RSA и тут мы подходим к самому главному - конечному условию проверки на совпадение/несовпадение ключей. Обычно условный переход (jnz, je, ...). Исправляем в проге пару байтов и все. К чему все эти MD5, RSA? Может я чего то не понимаю объясните, плиз. Это сообщение отредактировал(а) Gradov - 5.4.2009, 23:52 |
|||
|
||||
Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
Эти пару байтов надо найти. Закрываемая программа не такая уж важная, чтобы ею занимался опытный хакер. Сломать ее можно, но потребует некоторого времени. Если не брать мудреные способы типа динамического изменения кода и т.п. проверку можно тупо размножить в нескольких местах программы. Это повергнет любого хакера в уныние - иное дело ломать фотошоп и другое - студенческую программку. Профессиональных угонщиков автомашин больше всего бесят встраиваемые вручную хозяевами "секретки" - типа размыкателей масс. С одной стороны - никакой элетроники, обычный тумблер. С другой стороны - попробуй его найди. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
RSA нужен для того, что бы даже имея программу и зная, как она считает этот MD5 было невозможно сгенерить правильный ключ. Для генерации ключа понадобится инсталятор, доступа к которому у студентов не будет. Так что только ломать сам код, но от этого уже не защититься, можно только усложнить жизнь хакеру, понаставив побольше проверок (и разных) |
|||
|
||||
3315720 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
я так к серийнику диска С, привязывал. хешировал по всякому с разными прибавками, но без шифровки в реестре. хорошая мысль. нужно будет добавить.
|
|||
|
||||
Zakhar_Shan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 14.6.2007 Где: Тюмень Репутация: 1 Всего: 2 |
||||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
||||
|
||||
3315720 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
брал серийник и привязывал. в семплах даже пример есть. всю инфу о дисках выдаёт. о хардах, сд, флеш. там и серийник есть. просто это логично- куда поставил туда и привязал, вместо того чтобы спрашивать разрешения у разработчика поменять видеокарту или сдшник добавить. как это практикуют некоторые, например тот же фотошоп. с обычным sata проблем не возникало, с raid включением не сталкивался... |
|||
|
||||
Zakhar_Shan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 14.6.2007 Где: Тюмень Репутация: 1 Всего: 2 |
||||
|
||||
3315720 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
||||
|
||||
Zakhar_Shan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 14.6.2007 Где: Тюмень Репутация: 1 Всего: 2 |
||||
|
||||
Gradov |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 124 Регистрация: 31.10.2006 Репутация: 2 Всего: 3 |
С этим полностью согласен. Усложнить можно и естественно нужно.
Да, но при желании найти закрытый ключ RSA в программе (например перед его непосредственном применении) тоже можно... ![]() Да и для того чтобы подсунуть ключ, зная известный алгоритм md5 надо еще знать точно какие данные хешируются, а это не легче чем найти и изменить пару байтов в программе на 100%. ![]() |
||||
|
|||||
xvr |
|
||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
Угу, но все равно придется ковырять бинарник
![]()
|
||||||||
|
|||||||||
1000000dollars |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 6.10.2007 Репутация: нет Всего: 8 |
Выносим важную часть кода в Dll, шифруем её преподским ключом через RC4(например). Подключаем в качестве ресурса в исполняемый модуль. После запуска просим ключик, расшифровываем ресурс во временный файл. Пытаемся загрузить dll. Далее - зависит от фантазии.
Сделать это несложно, а ломать - сдохнешь ![]() Остальные предложенные варианты нормальный третьекурсник (ориентируюсь на себя и своих универских знакомых) заломает за два часа. |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
После чего студент копирует себе эту расшифрованную dll и меняет в исходном exe имя dll для расшифровки. Свежедернутую dll кладет рядом с exe'ником
![]()
![]() |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |