LINUX.ORG.RU

Как защитить программу, привязать к ПК

 , , , ,


0

1

Тема не решаемая на 100%. Но опишу как получается на данный момент. Программа запускается на ПК и работает с сервером в интернете, соединяется с личным кабинетом и тогда проблем с защитой нет. Часть функционала мы отдаем с сервера. Но как быть если интернета нет?..

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

Но в чем вопрос? Работа без интернета допустима, но не поощряется (нужен просто аварийный вариант на 1,2,3,4 дня вдруг сервак накроется и т.д.). Таким образом :

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

Надо сказать, что обе базы данных шифруются без проблем через sqleet. Более того есть вариант с шифрацией прямо в оперативной памяти через эмуляцию файловой системы (vfs + sqleet). Но речь о другом: пароль от расшифровки базы данных надо хранить на ПК локально, т.к. когда интернета нет - базу расшифровывать при запуске по любому как-то надо.

Думаю пароль от базы как-то привязать к паспорту компьютера, то есть к id процессора (правда их может быть не один) и/или к номеру материнки и/или RAM. И тогда не хранить пароль в явном виде ни где не надо…

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

Заранее благодарен за любые варианты.



Последнее исправление: kkmspb (всего исправлений: 1)
Ответ на: комментарий от alex0x08

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

Ну да - такой у нас ларечный бизнес, типа 3500р/год за рабочее место и хренова туча такого же говна от конкурентов в этой отрасли, у которых то одно не работает оборудование, то другое….

Кто и когда захочет тебя ломать, какой смысл. Только если сами конкуренты из вредности (но это еще глупее выглядит).

kkmspb
() автор топика
Ответ на: комментарий от kkmspb

Ну да - такой у нас ларечный бизнес, типа 3500р/год за рабочее место

Замечательно, вот с этого и надо было начинать.

$20-50k будет стоить переписывание с нуля твоей разработки, при этом «решение вопроса» с защитой начинается от $30к. По крайней мере лично я за меньшее точно не возьмусь.

Отсюда следует простой вывод, что зона риска для твоего проекта это где-то 3000 клиентов в год.

Думаю что если ты когда-нибудь дойдешь до 3к кастомеров, то на все защиты и взломы будет уже глубоко фиолетово.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Думаю что если ты когда-нибудь дойдешь до 3к кастомеров…

Ну вот и отлично, больше и не надо.

Но интересно , даже при 3000 юзеров, кому придет в голову платить 30k$ за лом софтины, какой смысл? Что дальше с этим ломом делать. Кому продавать-то? Может порог на самом деле ещё выше по кол-во юзеров.

kkmspb
() автор топика
Последнее исправление: kkmspb (всего исправлений: 1)
Ответ на: комментарий от kkmspb

30к$ это у софта требующего защиты даже не половина стоимости лицензии для среднего бизнеса.

Но в принципе товарищ 0x08 верно всё говорит - защита стоит дороже или в лучшем случае сопоставимо с атакой. Отсюда - твоя лицензия должна стоить примерно в 2 раза дешевле атаки. Строить на таком кейсе бизнес можно в двух случаях - ты уже в ИБ и у тебя в штате просто и так есть люди с нужным навыком, либо твой продукт настолько массовый и дорогой, что ты можешь себе позволить топовую защиту на рынке раз-два в год купить.

Если твой софт стоит дешевле атаки, то защищать его ровно ноль смысла, гораздо проще вложить эти деньги в масштабирование бизнеса.

faq2
()
Последнее исправление: faq2 (всего исправлений: 1)
Ответ на: комментарий от kkmspb

Но интересно , даже при 3000 юзеров, кому придет в голову платить 30k$ за лом софтины, какой смысл?

Все банально, у тебя просто воображения нехватает.

Допустим ты делаешь софт для АЗС, даже не про разлив бензина а что-то куда более банальное - кофейные автоматы. Все что софт делает это мониторит состояние автомата и шлет заранее СМС с предупреждением что зерна заканчиваются.

ROI считается очень просто и профит очевиден, просто исходя из стоимости простоя каждого конкретного автомата. А простой считается из стоимости аренды.

Ты идешь с этими расчетами к владельцам таких точек и делаешь предложение, где-то на уровне тех же $50 в год. Оторвут с руками. Через какое-то время ты развиваешь бизнес и выходишь на монополиста, у которого таких точек несколько сот тысяч.

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

Затем он звонит мне. Я в профите, ты - в пролете. Все просто.

alex0x08 ★★★
()
Ответ на: комментарий от faq2

Угу, а обновления безопасности, багфикс и прочее монополист получает потом тоже от тебя?

Ты просто не в теме, это все не так выглядит.

Дается коробка, некий Х. Неважно что это, софт, железо или комбинация того и другого. Ставится конкретная задача: сделать чтоб работало или повторить реализацию.

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

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

Давно все отработано, главное оплатить )

alex0x08 ★★★
()
Ответ на: комментарий от utanho

Монополист является монополистом как раз из-за нерыночных условий, которые он создал и поддерживает. А «мутные темы» для него лишь инструмент.

Так что еще как будет.

Выглядит правда не так как вы себе навоображали, никаких встреч в деловых костюмах посреди стеклянных офисов. Но зато работает.

alex0x08 ★★★
()
Ответ на: комментарий от faq2

Речь про обновления оригинального софта?

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

По этой же причине обновления выкладываются в паблик и доступны для скачивания всем.

Исключение из этого правила - всякая современная подписота, вроде RedHat, IBM, Oracle, где ты сначала оплачиваешь подписку (на год) а затем уже качаешь вдоволь обновления.

Так тоже можно сделать, если будет мощный поток апдейтов.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Выглядит правда не так как вы себе навоображали, никаких встреч в деловых костюмах посреди стеклянных офисов

Это у вас фантазия прет. Судя по всему, вы так ничего не поняли. И ваш «монополист» владелец 10 кофейных автоматов на окраине Зажопинска.

utanho ★★★★★
()
Ответ на: комментарий от alex0x08

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

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

Тут это либо «розничное» решение с открытым и унифицированным каналом обновлений - тогда твоя тема работает. Но изи ты можешь получать апдейты фельдегерем после тусы в ресторане. Есть ещё вариант, что продукт мега-стабильный и его уже непонятно как развивать, но тогда и паразитировать на нём - тоже ссзб окромя поддержки, а поддержку ты тоже не ломанёшь особо.

Под «розничным» я имею ввиду массово-распостраняемое, когда ручками контролировать продажи просто нереал. Но оно обычно и стоит так, что ломать имеет смысл на перспективу 2-3 года минимум.

Остаётся надеятся только на «русский человек заплатит любые деньги за халяву».

faq2
()
Ответ на: комментарий от faq2

Винда вообще очень посредственно относится к технической стороне защиты

Смотря с чем сравнивать.

Не думаю что пользователи обрадовались, если бы в случае сбоя активации в системе отключался какой нибудь произвольный сервис или очистка памяти (как это было с какой-то из «продвинутых» защит для ГТА4). ОС это все же не какая-то там игрушка, на ней еще и работают.

Поэтому самые лютые современные варианты защиты к ОС, тем более столь массовой просто не применимы.

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

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

alex0x08 ★★★
()
Ответ на: комментарий от max_lapshin

Пока ты не продаешь чью-то переделанную работу никаких ограничений нет.

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

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

УК РФ Статья 273. Создание, использование и распространение вредоносных компьютерных программ (в ред. Федерального закона от 07.12.2011 N 420-ФЗ)

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

Ни слова про «продажу». По поводу же «право потребителя» - это право касается только правомерных потребителей, а не злостных нарушителей в особо крупных размерах. $20000-50000 - это «особо крупные»

MagicMirror ★★
()
Ответ на: комментарий от MagicMirror

Какой умный пассажир ) Если уж начал читать УК, то дойди до места про оценку причиненного ущерба и доказательство виновности.

Ни слова про «продажу». Создание, распространение или использовани

Ну как же, это «распространение» и есть.

Теперь ты наверное пойдешь и напишешь на меня заявление? Рассказать что дальше будет?

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

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

Ну как же, это «распространение» и есть.

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

Теперь ты наверное пойдешь и напишешь на меня заявление? Рассказать что дальше будет?

Я лишь намекаю, что «не поймали» не гарантирует легальность деяний.

MagicMirror ★★
()
Ответ на: комментарий от alex0x08

Вот ты по делу говоришь, но как то слишком много. Оно тебе надо, что то тут кому то доказывать и разъяснять? Видишь люди нервничать начали, ёрзать, оно тебе надо? Ну не то место для откровений, даже таких поверхностных. И не то время.

Jameson ★★★★★
()
Ответ на: комментарий от Jameson

Идет сборка в фоне, пока прерывать нельзя. Пока время есть почему и не разъяснять?

Но блин еще раз: это все к криминалу никакого отношения не имеет, как дети малые ей-богу.
Сейчас даже курсы есть по пентесту, где людей обучают «как в хату входить», а вы все от каждой тени шарахаетесь.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Идет сборка в фоне, пока прерывать нельзя

Как я понял в примере про вендинговые аппараты, хозяин сначала платил за аренду какого-то софта , встроенного в его аппараты, а потом перешел на другой вариант дешевле - так получается?

kkmspb
() автор топика
Последнее исправление: kkmspb (всего исправлений: 1)
Ответ на: комментарий от kkmspb

так получается

Не совсем.

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

Вот когда такие договора уже подписаны с двух сторон и начинается та самая ответственность.

А до этого момента у вас будет пилот или демо, чаще всего на ресурсах заказчика и в его тестовой среде.

Которое часто делают бесплатно для крупного заказчика. И фактически без договоров, поскольку какой-нибудь «договор о намерениях» (а это максимум что вы сможете заставить подписать крупного клиента на раннем этапе) в условиях РФ лишь «филькина грамота».

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

В том числе реверс-инжиниринг и оценку возможных затрат на клонирование.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Можно дорабатывать только в рамках разрешенной договором функциональности. Т.е. если вам продали фотошоп, но без CMYK, а вы взломали и разблокировали функциональность, которую вам не продавали, это тюрьма.

Вскрытие шифрования — это однозначно тюрьма без каких-либо деталей и вопросов, за это отдельные пункты в УК.

Ну а вы тут совершенно открыто озвучиваете свои коммерческие расценки на заказной взлом. Таким вообще обычно занимается ФСБ.

max_lapshin ★★★★★
()
Ответ на: комментарий от max_lapshin

Ужасы-то какие.

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

Вообщем, рекомендую вам успокоиться и перестать за меня волноваться, поскольку прекрасно знаю что делаю.

alex0x08 ★★★
()
Последнее исправление: alex0x08 (всего исправлений: 1)
Ответ на: комментарий от alex0x08

при этом «решение вопроса» с защитой начинается от $30к. По крайней мере лично я за меньшее точно не возьмусь.

Ну ты не возьмёшься, а та же EMPRESS за взлом Denuvo для любой игры $500 берёт. По крайней мере до недавних пор были такие расценки, может сейчас уже больше, или не берёт на заказ, но всё равно не $30к.

CrX ★★★★★
()
Ответ на: комментарий от CrX

Рад за него, но еще раз для совсем непонятливых: я не занимаюсь взломом, тем более массовым. Тем более игр.

Я занимаюсь разработкой и доработкой ПО.

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

Еще есть товарищи вроде ТС, которые пытаются создать проблему своему же клиенту, который (между прочим) за ПО заплатил.

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

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Рад за него, но еще раз для совсем непонятливых: я не занимаюсь взломом, тем более массовым. Тем более игр.

Да на здоровье. Просто не надо тогда свои расценки как пример в подобных рассчётах приводить. В приложении к сабжу: если продукт кто-то захочет взломать, ему потребуется на это где-то $500–$1000 (а скорее меньше, потому что речь явно не о денуве, а о чём попроще), и из такой суммы надо исходить в принятии решения, стоит ли отваливать за «защиту».

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от CrX

где-то $500–$1000

Понятия не имею откуда ты взял эти расценки и насколько они вообще реальны.

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

Плюс редкость и уникальность - очевидно что с такими задачами обращаются не каждый день, а если уж обратились то это действительно надо.

Еще там стоит слово «минимум», потому что ни настоящую цену ни сам факт таких работ я разумеется озвучивать уже не стану.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Понятия не имею откуда ты взял эти расценки и насколько они вообще реальны.

Ну, честно говоря, я исхожу из того, что есть человек, которому можно прямо сейчас дать $500 и получить взломанную денуву. Это значит, что скорее всего, взлом примерно того же уровня DRM можно получить за примерно такую же сумму, если не у этого человека, то у кого-то ещё, поскольку вряд ли другие берут сильно больше, учитывая, что и у EMPRESS очень и очень далеко не вал заказов при такой цене.

CrX ★★★★★
()
Ответ на: комментарий от alex0x08

Очевидно, что не очень знаете, потому что озвучиваете вы именно состав уголовного преступления.

ЛОР конечно про линукс и в основном про свободный код, но совершенно точно не про уголовщину, которую вы пропагандируете.

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

Вы путаете разные вещи, смешиваете и не очень понимаете, где переходите в своих фантазиях грань закона.

max_lapshin ★★★★★
()