Сейчас на форуме: Slinger, Rio (+5 невидимых)

 eXeL@B —› Основной форум —› Простая защита от ламеров, как быстро ее можно сломать?
. 1 . 2 . >>
Посл.ответ Сообщение


Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 29 августа 2006 02:39 · Поправил: jangle
· Личное сообщение · #1

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

Меня интересует, быстро ли можно сломать эту прожку, и какой уровень знания крекинга для этого требуется?




5c95_29.08.2006_CRACKLAB.rU.tgz - clock.zip




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 29 августа 2006 03:35
· Личное сообщение · #2

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

-----
Тут не могла быть ваша реклама





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 29 августа 2006 03:37
· Личное сообщение · #3

lord_Phoenix - в принципе это и есть крякмис, алгоритм работы защиты я скрывать не собираюсь..




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 29 августа 2006 03:54
· Личное сообщение · #4

jangle
ну тогда еще ладно :D ты хотя бы сразу не афишировал, что будешь юзать в своих программах, явно получая прибыль..
вообщем максимум, чем тебе можно помочь - сломать и все.. а не показат, как сломали =))

-----
Тут не могла быть ваша реклама





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 29 августа 2006 04:08
· Личное сообщение · #5

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



Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 29 августа 2006 04:11
· Личное сообщение · #6

нда... PowerВASIC... это такой новаторский способ защиты? Как бы не компилятор, а сразу обфускатор. Код кошмарный просто.

-----
MicroSoft? Is it some kind of a toilet paper?





Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 29 августа 2006 04:15
· Личное сообщение · #7

Tim пишет:
нда... PowerВASIC... это такой новаторский способ защиты? Как бы не компилятор, а сразу обфускатор. Код кошмарный просто.

ну не сильно обфускатор, но фпу много :D
jangle
IsDebuggerPresent не рулит :D

-----
Тут не могла быть ваша реклама





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 29 августа 2006 04:33 · Поправил: jangle
· Личное сообщение · #8

.Tim пишет:Как бы не компилятор, а сразу обфускатор. Код кошмарный просто.

Что-то есть, то есть...


lord_Phoenix пишет:
IsDebuggerPresent не рулит :D


Специально его оставил, для интереса

А фпу много, потому что для зарегенной версии циферблат и стрелки рисуются через SIN, COS и т.д




Ранг: 127.3 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 29 августа 2006 11:19
· Личное сообщение · #9

Занопил переход. Прога пишет Register и рисует файл serial.key. Часов правда нет. Если они рисуются от ключа, то надо искать правильный ключ. Влом.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 29 августа 2006 12:12
· Личное сообщение · #10

stahh пишет:
Занопил переход. Прога пишет Register и рисует файл serial.key.

а теперь найди чтение из файла serial.keyи занопь еще один переход =)

-----
Тут не могла быть ваша реклама





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 29 августа 2006 22:33
· Личное сообщение · #11

Ну ясно, раз сразу не поломали, значит против новичков защита устоит.

Серийник - 6371425




Ранг: 127.3 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 30 августа 2006 02:32
· Личное сообщение · #12

lord_Phoenix Да я это понял. Просто у меня было минут 15, я и нашел тока тот переход.
jangle Не устоит защита против новичков, если она ломается патчем. Если тока подборкой ключа - тогда да.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 30 августа 2006 02:57
· Личное сообщение · #13

stahh - патчем она не ломается!



Ранг: 516.1 (!), 39thx
Активность: 0.280
Статус: Участник

Создано: 30 августа 2006 08:03
· Личное сообщение · #14

алгоритм генерации вроде несложный




Ранг: 127.3 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 30 августа 2006 09:05
· Личное сообщение · #15

jangle Как раз защита ломается патчем. А вот функционал проги зависит от правильного ключа. Если я правильно понял, берутся цифры ключа, и чота там считается. И чо? Будет один ключ для всех копий проги ? Я не силен в кейгенах и поисках ключей, но нахождение одного правильного ключа дарует радость тысячам жаждущих юзеров.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 30 августа 2006 23:10
· Личное сообщение · #16

Идея была такая, сделать для каждой копии программы свой серийник. Т.е. накомпилировать очень-очень много копий, и для каждой сгенерировать свой ключ. Причем серийник, является графом правильного вызова функций в программе. Для каждой копии программы, специальное приложение, производит перемешивание (обфускацию) исходных модулей и перекомпиляцию программы заново. В результате получаем уникальный EXE файл и уникальный ключ, который будет работать только с этой копией программы. Тоесть другой пользователь, не сможет применить чужой серийник к своей копии, они все различны на бинарном уровне.

Например, при вводе серийника 5068A210 программа выполнит следующие действия:

5 - > Вызвать модуль 5
0 -> Ничего не делать
6 -> Вызвать модуль 6
8 -> Вызвать модуль 8
A2-> Три раза вызвать модуль 2
1 -> Вызвать модуль номер 1
0 -> Ничего не делать

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

Теперь, не имеет смысла публиковать ключ в интернете, для каждой копии он будет уникальным.
Нужно выкладывать в сеть дистрибутив+серийник, а значит легко можно вычислить виновника,
а если еще прошить серийник внутрь электронного ключа?
Пользователь вообще его видеть не будет. Есть конечно вариант, пригласить кракера, чтобы он
за деньги взломал протокол обмена с ключом, и отвязал программу. Но в конечном счете, это может
сделать взлом нерентабельным, дешевле будет просто купить программу.




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 30 августа 2006 23:19
· Личное сообщение · #17

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




Ранг: 392.8 (мудрец), 108thx
Активность: 0.260.01
Статус: Участник
REVENGE сила, БеХоЦе могила

Создано: 30 августа 2006 23:22
· Личное сообщение · #18

Ara пишет:
Всегда найдется добрый юзверь

Да щаззз, они 10-м сложаться, купят, и будут распространять... Гыыыы...

-----
StarForce и Themida ацтой!





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 30 августа 2006 23:25
· Личное сообщение · #19

Ara пишет:Ну и маразматические защиты - тем не менее, эту "маразматическую" защиту никто тут так и не поломал... Наверное слишком сложно оказалось...


Ara пишет:
Всегда найдется добрый юзверь, котрый выложит дистрибутив свой и свой ключик людям

Да конечно и такое бывает. Но не каждый юзверь, особенно из малых городов, может запросто скачать из сети 70-100 мбайт дистрибутива. Плюс всегда можно найти виновника, и предьявить притензии...



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 30 августа 2006 23:30
· Личное сообщение · #20

jangle
Простая защита от ламеров, как быстро ее можно сломать?
Интересно а к какой категории ты себя относишь? Можно ссылку хоть на одну твою прогу очень интересно помотреть?




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 30 августа 2006 23:41 · Поправил: jangle
· Личное сообщение · #21

pavka пишет:
Интересно а к какой категории ты себя относишь?
Ламер! Ну канешна ламер


pavka пишет:
Можно ссылку хоть на одну твою прогу очень интересно помотреть?


По работе не хочу кидать, а то еще набегут злобные кракеры...
Небольшой пример из старого - компилятор скриптового языка http://scriptcom.narod.ru http://scriptcom.narod.ru , теперь не поддерживается, т.к. был куплен Gentee Inc. для своей новой линейки инсталляторов СreateInstall



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 30 августа 2006 23:48
· Личное сообщение · #22

jangle пишет:
По работе не хочу кидать, а то еще набегут злобные кракеры...

Все равно набегут! Раз такие замки нужны, под ними наверное должно быть очень много любопытного...



Ранг: 153.9 (ветеран)
Активность: 0.120
Статус: Участник
reborn

Создано: 30 августа 2006 23:59
· Личное сообщение · #23

jangle
Имхо если программа будет такая востребовательная, то её тупо скрадят, а если это опять будет "какой-то видео конвертер или риппер" (ц. помоему АРА сказал), то нах оно кому-то сдалось если есть куча вариантов?
Если же это будет что-то типа 1С то и на это найдётся свой Соболь!!!

-----
~ the Power Of Reversing team ~





Ранг: 116.6 (ветеран), 8thx
Активность: 0.050
Статус: Участник

Создано: 31 августа 2006 00:16
· Личное сообщение · #24

jangle пишет:
Нужно выкладывать в сеть дистрибутив+серийник, а значит легко можно вычислить виновника

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




Ранг: 266.8 (наставник), 5thx
Активность: 0.220.03
Статус: Участник
very WELL :)

Создано: 31 августа 2006 00:55
· Личное сообщение · #25

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

Убивать таких подлянщиков надо. В детстве.



Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 31 августа 2006 01:15
· Личное сообщение · #26

jangle пишет:

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


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

jangle пишет:
а если еще прошить серийник внутрь электронного ключа?

Это не сильно усложнит взлом как показывает практика.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 31 августа 2006 02:36
· Личное сообщение · #27

jangle
1) Защита очень дорогая - годится только для спец-программ.
2) Update тоже немыслимо делать.
3) Отладка тоже та еще : каждый раз придется тщательно проверять, что защита не испортила функционал. Никто не согласится такое производство оплачивать.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 31 августа 2006 04:59
· Личное сообщение · #28

Gmc пишет:
Если юзер ошибся в одной цифре, думаю он не очень обрадуется такой "функциональности".


Для этого, в проге есть проверка CRC пароля, поэтому неправильный ввести не получится.

Gmc пишет:
Это не сильно усложнит взлом как показывает практика.


Главное чтобы он стоил дороже самой программы.


tundra37 пишет:
1) Защита очень дорогая - годится только для спец-программ.
2) Update тоже немыслимо делать.
3) Отладка тоже та еще : каждый раз придется тщательно проверять, что защита не испортила функционал. Никто не согласится такое производство оплачивать.


Защита совсем не дорогая, ведь изначально мы имеем рабочий и полностью отлаженный исходник. Затем специальная прога перемешивает модули, расставляет запутывающие ветвления, обфусцирует и в конце компилирует программу, складывая ее в отдельную папку вместе с ключом. Таким образом можно набилдить сотни и тысячи копий программы (пока на диске место есть).
Логика работы не меняется, меняется физическое расположение модулей и функций в бинарнике. В каждой версии оно будет другим, и для правильно вычисления переходов нужен свой ключ.
Серийник, превращается как бы в код интерпритатора, каждый его байт - инструкция, какие модули надо вызывать для правильной работы программы.

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



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 31 августа 2006 05:08
· Личное сообщение · #29

jangle пишет:
Преимущество перед шифрованием в том, что при расшифровке, программу можно легко сдампить, и отвязать от защиты. В моем случае никакой расшифровки в принципе нет, программа просто интерпретирует команды ключа для правильной работы.

Преимущества нет, ибо кардится также элементарно, как и прога юзающая шифрование.Кстати от ватермарков панацеи тоже нет, так что тут в принципе принципиально без разницы - твоя ли защита, или защита с криптоалго и ватермарками. Что же касается подбора ключа, то имея валидный ключ для твоей проги можно составить трассу и проанализировать что и как.
jangle пишет:
Затем специальная прога перемешивает модули, расставляет запутывающие ветвления, обфусцирует и в конце компилирует программу, складывая ее в отдельную папку вместе с ключом.

А ты уже написал эту прогу для своего крякми , или это так, мысли вслух ?

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 01 сентября 2006 03:32
· Личное сообщение · #30

jangle пишет:
Преимущество перед шифрованием в том, что при расшифровке, программу можно легко сдампить, и отвязать от защиты.


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


. 1 . 2 . >>
 eXeL@B —› Основной форум —› Простая защита от ламеров, как быстро ее можно сломать?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати