Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Хорошие ли это идеи? Добавлено: 18.06.07 13:50  

Автор вопроса:  Иван | Web-сайт: www.harami.ru
Дорогие друзья,
Собираюсь выпустить в свет свое первое в жизни большое и серьезное приложение. В связи с этих хочу спросить, хороши ли следующие способы по его защите от крякеров:

1) Каждый пользователь получает уникальную копию, то есть: во всех копиях одни и те же функции и константы будут иметь разные имена и будут прописаны в разном порядке и в разных модулях (насколько я понимаю, это спасет от появления универсального кряка, но не спасет от появления взломанного EXE?)

2) Я сам напишу несколько кряков к собственной программе и выложу их на разные варезные сайты. В действительности эти кряки будут одновременно заражать программу вирусом, который исподволь будет портить работу, выполненную с помощью программы.

Ответить

  Ответы Всего ответов: 18  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 18.06.07 14:13
Бред. Также появились сомнения по поводу серьезности приложения...

Ответить

Номер ответа: 2
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #2
Добавлено: 18.06.07 14:21
Нет, это корявые, ненадежные и неэтичные по отношению к пользователям способы. Правильнее использовать хорошее шифрование, протекторы, почаще выпускать новые версии и хорошо поддерживать легальных пользователей.

Ответить

Номер ответа: 3
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #3 Добавлено: 18.06.07 15:17
1. Да, появится один взломанные EXE, который расползется по варезникам как exe_name_patched.exe
2. Глупо. Вирусы - мастдай. Можно такое сделать, но чтобы патч просто делал прогу неработоспособной.

Ответить

Номер ответа: 4
Автор ответа:
 W[4Fh]LF



Вопросов: 0
Ответов: 187
 Web-сайт: hunger.ru
 Профиль | | #4
Добавлено: 18.06.07 18:41
Чтобы сделать хорошую защиту, нужно понимать, как программы ломают. Это аксиома.
Сколько случаев, что люди криво навешивали протекторы или юзали криптоалгоритмы.
Поэтому полагайся или на опыт людей более прожжённых, или надейся на удачу. И потом, оцени риски, поставив неломаемую защиты, как люди узнают о твоей программе? Это shareware или узкоспециализированная программа для определённого заранее известного круга людей? Программа не имеет аналогов и способна завоевать рынок новизной идеи? Подумай.

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 18.06.07 22:37
Вот именно, в большенстве случаем хватает защиты от дурака в виде привязке к серийнику винта например, я когда-то делал так:

Есть отдельная малюсенькая прога которая определяет серийник винта, хеширует, и просит отправить данный хеш мне (разработчику)

После получения хеша, я создаю копию основной программы конкретно для этого пользователя, т.е. в основной проги хеширую винт, сверяю хеши... Проверку хеша просто замудрил как можно сложнее, чтобы в дебагере геморно разбирать было, и всё, считаю этого вполне достаточно.

Ответить

Номер ответа: 6
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #6
Добавлено: 18.06.07 23:08
Ребяты, успокойтесь :) Всё равно от кряка не спасёт НИЧТО. Если программа действительно настолько серьёзна и (что самое главное) - востребована, кряки появятся 100%. Умельцы даже в WinHEX'е смогут править твой exe'шник, если не использовать крутых обфускаторов.

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 19.06.07 00:16
Мы и не нервничали :)

Ответить

Номер ответа: 8
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #8 Добавлено: 19.06.07 01:03
эх... идей, хороших идей, приходит в голову куча, проблема с их реализацией.
А тебе даже идеи нормальные в голову не приходят!

Ответить

Номер ответа: 9
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #9 Добавлено: 19.06.07 01:32
После получения хеша, я создаю копию основной программы конкретно для этого пользователя, т.е. в основной проги хеширую винт, сверяю хеши... Проверку хеша просто замудрил как можно сложнее, чтобы в дебагере геморно разбирать было, и всё, считаю этого вполне достаточно.

А в дебагере никто твою проверку смотреть не будет, JMP поставят перед проверкой и сразу на позитивный исход провкрки, кто хоть немного шарит в ассемблере, крякнет такую защиту за 15 мин.
кстати интересная статейка для начинающих
http://wasm.ru/article.php?article=r_hiew
P.S. Это не для того, чтобы научить вас крякать, а для того, чтобы научиться достойно защищать свои программы

Ответить

Номер ответа: 10
Автор ответа:
 Иван



Вопросов: 34
Ответов: 53
 Web-сайт: www.harami.ru
 Профиль | | #10
Добавлено: 19.06.07 02:55
Какой шквал ответов, не ожидал. Спасибо всем!

После получения хеша, я создаю копию основной программы конкретно для этого пользователя, т.е. в основной проги хеширую винт, сверяю хеши...


Все это само собой разумеется, уже сделано. Говоря о том, чтоб в каждой копии по-разному называть функции и загонять их в разные модули, я имел в виду именно функции, отвечающие за защиту.

Кроме того, в некоторых функциях я собираюсь зашифровать имя пользователя (типа Function IvanIvanov(), только посложнее, конечно) — чтобы в случае появления взломанного ЕХЕ знать, откуда он исходит, и лишить этого пользователя всех беспалтных прибамбасов, которые я рассылаю. Кроме того, он не сможет повторно купить программу, пока не сменит UserName? e-mail и все жесткие диски. Об этом честно предупреждается в хелп-файле.

А насчет вируса, портящего работу, — да, действительно, ерунда. Добьюсь только того, что программа обретет дурную репутацию как криво сделанная.

Еще раз спасибо!

Ответить

Номер ответа: 11
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #11 Добавлено: 19.06.07 03:36
Нафига париться? Очень просто все делается.

Берешь сервер, организовываешь на нем службу терминалов, на сервере ставишь свою прогу. Доступ к серверу могут иметь только клиенты по логину/паролю.

Ответить

Номер ответа: 12
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #12 Добавлено: 19.06.07 03:39
Есть еще более эффективный способ в принципе.

Делаешь подземный бункер, в не устанавливаешь рабочие станции, на них - свою прогу.

По периметру все обнести забором с колючей проволкой под напряжением, камеры наблюдения, военные для охраны бункера, танки, системы ПВО, фейс-контроль.

Клиенты допукаются в бункер только после 100% покупки лицензии. И только на время, которое они купили.

Если попытаются проникнуть незаконно, или посидеть больше оплаченого времени - демонстративно казнить беред бункером.

Ответить

Номер ответа: 13
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #13 Добавлено: 19.06.07 03:41
Чуть не забыл - в бункер никаких средств связи типа интернета/телефона не ставить - чтоб прогу не слили.

За попытку вынести погу из бункера - казнь, за попытку внести в бункер средства связи - также казнь.

Вижу целесообразным расстреливать клиентов после того как они воспользовались программой - для ликвидации свидетелей (могут рассказать о местоположении бункера).

Ответить

Номер ответа: 14
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #14 Добавлено: 19.06.07 03:42
PS Возможно когда-нибудь ты сможешь защищать не только себя от своих клиентов за их счет, но и решать собственно проблемы самих клиентов

Ответить

Номер ответа: 15
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #15 Добавлено: 19.06.07 21:10
А в дебагере никто твою проверку смотреть не будет, JMP поставят перед проверкой и сразу на позитивный исход провкрки, кто хоть немного шарит в ассемблере, крякнет такую защиту за 15 мин.


Проверку хеша просто замудрил как можно сложнее, чтобы в дебагере геморно разбирать было
Врядли получится поставив JMP в одно место полностью решить вопрос аунтификации. Проверка не сосредоточена в одном месте, это я имел ввиду. Я не говорю что это хорошая защита, а говорю что времени уйдёт на растановку jmp больше чем 15 минут, это и есть основной фактор защиты :)

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам