Защита программы

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Защита программы

Сообщение kreator »

Губин Игорь писал(а):А потом находим в программе имя файла и самым обычным бинарным редактором его правим. И запускаем новую копию программы с новым блокирующим файлом.
"Тут-то нам и попёрло" :cat:
Куда-то делся мой предыдущий пост. Ну да ладно. На серьёзную защиту решение, возможно, и не тянет. Спорить не буду. Но Вы запросто можете вскрыть TPS файл с опцией Encrypt? Допустим. Тогда есть возможность подцепить внешнее шифрование по стандартным алгоритмам шифрования.
We are hard at work… for you. :)
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

kreator писал(а):
Губин Игорь писал(а):А потом находим в программе имя файла и самым обычным бинарным редактором его правим. И запускаем новую копию программы с новым блокирующим файлом.
"Тут-то нам и попёрло" :cat:
Куда-то делся мой предыдущий пост. Ну да ладно. На серьёзную защиту решение, возможно, и не тянет. Спорить не буду. Но Вы запросто можете вскрыть TPS файл с опцией Encrypt? Допустим. Тогда есть возможность подцепить внешнее шифрование по стандартным алгоритмам шифрования.
Не файл вскрываем! Меняем имя файла в самой программе, а файл просто копируем. Т.е. запущенный отредактированный модуль лезет в тот же файл, но с другим именем. А сам файл мы, естественно, не трогаем.

Кстати, при наличии доступа к задаче дебагером легко определяется пароль открытого файла. Где-то на форуме даже инструкция болталась.
Это я только кажусь дураком! На самом деле я полный идиот!
PavelNK
Старожил
Сообщения: 262
Зарегистрирован: 15 Март 2011, 8:02

Защита программы

Сообщение PavelNK »

Губин Игорь писал(а):
kreator писал(а):
Губин Игорь писал(а):А потом находим в программе имя файла и самым обычным бинарным редактором его правим. И запускаем новую копию программы с новым блокирующим файлом.
"Тут-то нам и попёрло" :cat:
Куда-то делся мой предыдущий пост. Ну да ладно. На серьёзную защиту решение, возможно, и не тянет. Спорить не буду. Но Вы запросто можете вскрыть TPS файл с опцией Encrypt? Допустим. Тогда есть возможность подцепить внешнее шифрование по стандартным алгоритмам шифрования.
Не файл вскрываем! Меняем имя файла в самой программе, а файл просто копируем. Т.е. запущенный отредактированный модуль лезет в тот же файл, но с другим именем. А сам файл мы, естественно, не трогаем.

Кстати, при наличии доступа к задаче дебагером легко определяется пароль открытого файла. Где-то на форуме даже инструкция болталась.
ну эта задача решаема
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

PavelNK писал(а):
ну эта задача решаема
Изобретаем велосипед...
Это я только кажусь дураком! На самом деле я полный идиот!
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Защита программы

Сообщение kreator »

Губин Игорь писал(а):Не файл вскрываем! Меняем имя файла в самой программе, а файл просто копируем. Т.е. запущенный отредактированный модуль лезет в тот же файл, но с другим именем. А сам файл мы, естественно, не трогаем.
Я что-то не догоняю. Ну, поменяли название. И что? Нужна же информация, которая в нём.
We are hard at work… for you. :)
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

kreator писал(а): Ну, поменяли название. И что? Нужна же информация, которая в нём
КОПИРУЕМ файл с новым именем и запускаем ещё одну копию задачи. Т.е., если у вас 10 лицензий в файле, то получится 20 лицензий от двух задач
Это я только кажусь дураком! На самом деле я полный идиот!
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Защита программы

Сообщение gopstop2007 »

Губин Игорь писал(а):Всё это самопально...
вроде написали, что надо не для хакеров :)
строка в tps (в которой зашифровано md5 или посложнее чем) с указанным количеством копий + мусор словесный мусор (или как говорят-соль) :) и проверяй на количество созданных пользователей, и проверять периодически :cat:
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

gopstop2007 писал(а): вроде написали, что надо не для хакеров
Никогда не знаешь, где встретится хакер или студент с шаловливыми ручками

Предложенный вариант разумен, но только в качестве дополнения

ИМХО
Это я только кажусь дураком! На самом деле я полный идиот!
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Защита программы

Сообщение kreator »

Губин Игорь писал(а):КОПИРУЕМ файл с новым именем и запускаем ещё одну копию задачи. Т.е., если у вас 10 лицензий в файле, то получится 20 лицензий от двух задач
Да уж, банально! Не каждый хакер догадается :mrgreen: .
Хорошо. А что нам мешает смотреть системные таблицы SQL Server'а на предмет коннектов, их ip-адресов и т.д.
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Защита программы

Сообщение RaFaeL »

Губин Игорь писал(а): А потом находим в программе имя файла и самым обычным бинарным редактором его правим
А зачем в программе прямым текстом хранить имя файла? Может вы еще и пароль к нему так храните? )))
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Защита программы

Сообщение kreator »

RaFaeL писал(а):А зачем в программе прямым текстом хранить имя файла? Может вы еще и пароль к нему так храните? )))
По нашему проекту. Мы сделали название, что не догадаешься, и лежит он в каталоге, тоже не догадаешься почему там. Но само имя не шифруем. Оно вычисляется на раз. Может и надо. Хотя бы совсем простенько зашифровать.
RaFaeL, а как насчёт моей идеи смотреть системные таблицы SQl. Вы же пользуете MS SQL. Мы на FireBird'е, у него с мониторингом всегда было плохо, через сторонние утилиты, плата за free. Сейчас только перешли на третья версию, посмотрим, что там есть на эту тему при случае.
We are hard at work… for you. :)
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

RaFaeL писал(а):
Губин Игорь писал(а): А потом находим в программе имя файла и самым обычным бинарным редактором его правим
А зачем в программе прямым текстом хранить имя файла? Может вы еще и пароль к нему так храните? )))
Пароль можно хранить как угодно. Но дело в том, что после открытия файла он хранится в оперативке в открытом виде. И зная "где и как" вытащить его не сложно.
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Защита программы

Сообщение Губин Игорь »

kreator писал(а): Оно вычисляется на раз. Может и надо. Хотя бы совсем простенько зашифровать
Именно так.
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Защита программы

Сообщение RaFaeL »

kreator писал(а): RaFaeL, а как насчёт моей идеи смотреть системные таблицы SQl. Вы же пользуете MS SQL.
Смотрели на эту тему, но отказались уже не помню почему. Вообще программа работает как правило через несколько параллельных коннектов плюс само по себе количество соединений мало что даст, надо смотреть с каким типом лицензии зашли (их у нас несколько), для этого надо идентифицировать пользователя, а тут встает другой нюанс - подавляющее большинство работает с MS SQL через одного серверного пользователя, из них подавляющее большинство вообще под sa. Поэтому сделали простейшую защиту, сломать её конечно можно, а обновляться потом как, на старых версиях сидеть пожизненно? Короче, за десяток лет попыток взлома не выявлено. Попытки обхода от "от IT-специалистов среднего уровня" были, скорее они находили "дырки", которые фиксились. В целом, если клиент "сломает" и откажется от работы с разработчиком, то значит ему не нужна ТП и не нужны обновления, значит от него денег все равно не будет, так как разница, на чем он там работает в итоге. Защита нужна скорее в качестве напоминания
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Защита программы

Сообщение kreator »

RaFaeL писал(а):подавляющее большинство работает с MS SQL через одного серверного пользователя
Вот у нас сейчас на FB такой вариант. Надо менять схему работы.
RaFaeL писал(а):. Поэтому сделали простейшую защиту, сломать её конечно можно, а обновляться потом как, на старых версиях сидеть пожизненно?
На сегодняшний день рассчитывать на то, что пользователю нужно обновление, неправильно. У нас есть клиенты, которые годами ничего не требуют. А нам жить как-то надо :) . Вариант - платить за поддержку тоже не катит (это уже оффтопик), программа работает надёжно. Нужно ориентироваться на "подписку". Но я пока понимания с этой моей идеей не нахожу.
We are hard at work… for you. :)
Ответить