Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];

Вниз

Защита программы   Найти похожие ветки 

 
gedd ©   (2004-06-08 08:57) [0]

Люди подскажите где можно хранить информацию о дате первого запуска программы. Или подскажите компоненты для придания программе триальности.


 
Anatoly Podgoretsky ©   (2004-06-08 09:08) [1]

Какая разница где хранить, ни одно место не является секретом.


 
KilkennyCat ©   (2004-06-08 09:17) [2]

ну, самое секретное место это алладиновский хасп. Но стоит он дороговато. Зато есть вариант ТаймХАСП


 
gedd ©   (2004-06-08 09:37) [3]

Тогда как работают программы типа AVP?


 
Anatoly Podgoretsky ©   (2004-06-08 09:40) [4]

Хранят где ни будь, где без разницы


 
!!!Andrew!!!   (2004-06-08 10:13) [5]

Самый простой, и дешевый способ хранить эту информацию в самом исполняемом модуле или в одном из компонент приложения (DLL,COM и т.д.), к тому же надо предпринять действия фиксирующие перестановку даты. Недостаток - данный способ не спасет от полной перестановки Вашего приложения. Но с этим тоже можно побороться разместив информацию в одной из системных компонент (DLL) Windows, так делает AVP и FineReader, которые заменяют их на свои и оставляют их в системе даже после полной деинсталяции. Если интерресно  оставь сообщение дискуссию продолжим по мылу.


 
Anatoly Podgoretsky ©   (2004-06-08 10:17) [6]

!!!Andrew!!!   (08.06.04 10:13) [5]
Ты это серьезно, тогда за это их надо расстреливать.


 
ALex_sporik   (2004-06-08 10:34) [7]

Зачем изобретать велосипед. Armadillo (www.siliconrealms.com) - ныне они часть Digital River (торговые марки RegNow, ShareIt, RegIT etc)


 
iKS1 ©   (2004-06-08 10:35) [8]

Поищи AVLock.


 
Amoeba ©   (2004-06-08 10:41) [9]

Бесплатная библиотека TurboPower OnGuard
http://sourceforge.net/projects/tponguard/


 
Alexei Sviridov   (2004-06-08 10:48) [10]

Доброе утро. А у кого-нибудь есть полная версия AVLock"a , а то free version имеет банеры и потом меняет form.caption:=form.caption + "Free version".


 
gedd ©   (2004-06-08 12:43) [11]

Спасибо Andrew надо подумать,
желательно поподробнее про www.siliconrealms.com, что это и с чем его едят


 
evvcom ©   (2004-06-08 14:04) [12]

От чайника можешь спрятать куда заблагорассудится. От профи не спрячешься нигде. Соответственно можно защищаться от различных методов взлома. Этим будет определяться уровень защиты твоей программы. Но для этого надо самому представлять, как хакер использует этот метод, т.е. самому быть хакером.
Если все это сложно, то используй уже написанные программы для защиты пользовательских программ.


 
gedd   (2004-06-08 14:39) [13]

Ладно давайте проапдейтим дисскурсию. Кто работал с цифровыми сертификатами?


 
evvcom ©   (2004-06-08 14:43) [14]

Ну и что дальше?


 
gedd ©   (2004-06-09 07:05) [15]

Что дальше? Шифрование файлов с использованием CryptoAPI и сертификатов.


 
evvcom ©   (2004-06-09 08:15) [16]

Я же говорю, что от чайника хоть простой код запроси, а от профи (если ему это надо будет) ничего не спасет. Ну зашифровал ты файл, он же должен будет расшифроваться. Значит ключ ему надо. Этот ключ тоже надо уметь хорошо спрятать. А так... Один раз ключ попадает к хакеру и всё. Да еще триальный период какой-никакой а нужен. Правда, для этого лучше демку какую-нибудь давать.

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


 
gedd ©   (2004-06-09 08:32) [17]

>Один раз ключ попадает к хакеру и всё.
Так в сертификатах используются разные ключи (открытый и закрытый)
>триальный период
Тот же сертификат только на месяц


 
evvcom ©   (2004-06-09 08:47) [18]


> Так в сертификатах используются разные ключи (открытый и
> закрытый)

Я это прекрасно понимаю. У тебя остается закрытый для шифрования, сама программа использует открытый для дешифрования. Не важно где этот ключ будет храниться. В любом случае он будет ОТКРЫТЫМ, поэтому известным. А теперь вопрос, что может помешать хакеру, имея открытый ключ, расшифровать программу и подправить какие-то байты? Т.е. теперь в итоге вся сложность заключается в том, чтобы определить, а не изменился ли код (контрольная сумма) программы?


 
gedd ©   (2004-06-09 09:09) [19]

>контрольная сумма
Ну вот это то не проблема
изначально проблема состояла в том что нужно запомнить дату первого запуска, с сертификатом проблема решается так как он действителен с число1 по число2. Вот и все.


 
evvcom ©   (2004-06-09 09:20) [20]

Разницы никакой что запоминать, дату или контрольную сумму. Что первую, что вторую надо где-то сохранить. Еще раз повторяю, сложность зависит от того, от кого ты захотел защититься. Если от чайника, то голову не забивай, запиши где-нибудь в реестре в HKLM. А если нужна серьезная защита, то стань сначала сам хакером, чтобы понимать, КАК это делает хакер.


 
gedd ©   (2004-06-09 09:25) [21]

Слушай если такой крутой, может что нибудь вразумительное предложишь? Реестр и файлы отлетают так как есть утилиты слежения за ними и даже чайник их вскроет.


 
gedd ©   (2004-06-09 09:26) [22]

Кстати CryptoAPI шифрует это на уровне системы и делает их недоступными для просмотра отладчиками типа SoftIce.


 
evvcom ©   (2004-06-09 10:06) [23]


> Слушай если такой крутой, может что нибудь вразумительное предложишь?

Не буду говорить, что крутой, но пару десятков прог переломал, поэтому кое-что в этом понимаю.

> Реестр и файлы отлетают так как есть утилиты слежения

Ну так, если есть желание, тогда усложнить можно. Поищи в процессах FileMon, RegMon и др. какие знаешь, да позакрывай их.

> Кстати CryptoAPI шифрует это на уровне системы и делает
> их недоступными для просмотра отладчиками типа SoftIce.

Не смотрел и не разбирался, как шифрует CryptoAPI, но чтобы что-то сделать "недоступным" для SoftIce, такого я еще не слышал. Есть разные методы, позволяющие обнаружить запущенный SoftIce, но это уже немного другое.
Я не отговариваю использовать то или иное средство, пожалуйста! Но чтобы быть уверенным в стойкости своей защиты, все же нужно знать и понимать методы взлома программ.


 
Глеб ©   (2004-06-09 10:31) [24]


> gedd ©   (08.06.04 08:57)  
> Люди подскажите где можно хранить информацию о дате первого
> запуска программы. Или подскажите компоненты для придания
> программе триальности.

Можно хранить информацию в реестре, в INI, в текстовом файле.


 
gedd ©   (2004-06-09 11:29) [25]

1. Следует обратить внимание, что при работе с CryptoAPI мы все время имеем дело не с самими объектами или их адресами, а с дескрипторами — целыми числами, характеризующими положение объекта во внутренних таблицах криптопровайдера. Сами таблицы располагаются в защищенной области памяти, так что программы-«шпионы» не могут получить к ним доступ.
2. Сертификат на то и нужен чтобы зашифровать саму программу, а расшифровываться она будет уже в память. Чайник SoftICE запустить не додумается и даже бывалый программер столкнется с траблами. Но факт остается фактом просто так прогу отредактировать не удасться. Цифровые подписи блин.


 
evvcom ©   (2004-06-09 11:35) [26]

Ясно дело. Я об этом кадый раз и говорил. Все зависит от требуемой сложности защиты.

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

Ядро SoftIce также работает в 0 кольце защиты, поэтому ему по-барабану защищена область памяти или нет.


 
gedd ©   (2004-06-09 11:44) [27]

Слушай а ты бы мог посмотреть систему триальности например Касперского анти Хакера?


 
evvcom ©   (2004-06-09 11:54) [28]

А что мне за это будет? В какое количество зеленых оценишь сей труд?


 
gedd ©   (2004-06-09 12:05) [29]

Я же не взломать прошу, меня место хранения данных интерессует всего лишь.


 
evvcom ©   (2004-06-09 12:55) [30]

А что есть "Касперский анти Хакер"? AVP знаю. А это ...


 
gedd ©   (2004-06-09 13:09) [31]

Ну блин посмотри на сайте, типа крутой фаервол


 
evvcom ©   (2004-06-09 14:07) [32]


> меня место хранения данных интерессует всего лишь

Ну ладно. И что если я просто отвечу на вопрос "в реестре" или "в файле", такой ответ устроит? Меня бы не устроил. А чтобы разобраться где и как именно это всё хранится, понять логику, методы и т.д. - это уже работа не на пару минут. Даже, если эта прога определяет FileMon и RegMon и закрывает их, то даже уже это потребует дополнительных усилий, чтобы отследить, куда же эти триальные данные сохраняются?

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


 
gedd ©   (2004-06-09 14:56) [33]

фразу типа "защита программ" я ищю уже третий день,
и то что я не нашел вразумительных методов защиты
акромя эл. ключей и CriptoAPI привело меня именно сюда.
как видно из всех высказываний реестр и файлы отпадают сразу
ибо мониторятся через FileMon и RegMon, рассматривался вариант
ключ дискеты и CD, CD отпал ввиду возможности изготовления полного клона, дискетка по той же причине.
Если вдруг появится хорошая идея напиши можно прямо на мыло.
Заранее благодарен.


 
Подкрадуха ©   (2004-06-09 18:35) [34]

Думается, реестр и файлы не подходят. Тогда, что вероятнее всего - создать какой-нибудь атом.
А, вообще-то, я ещё не видел _НИ_ _ОДНОЙ_ не взломанной программы. Если у кого есть такие, киньте ссылку на них и предположите (с точностью до дня), когда её взломают.
Вся эта защита от лукавого =) Всегда найдется другой, более пытливый ум. Весь вопрос во времени и оплате.


 
DVM ©   (2004-06-09 20:12) [35]

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

А так разного рода аппаратные ключи - самое надежное.


 
Anatoly Podgoretsky ©   (2004-06-09 20:26) [36]

Какие ключи, речь про триал, даже о дискетах и СД речи быть не может.


 
DDA ©   (2004-06-09 21:37) [37]

Я проверял ряд программ,которые делают снимки системы(винта-реестра)

REgShot
FireLog
Regsnap

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

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

канечно  всё это можно тоже обойти - но трудностей прибавит


 
Татарников Дмитрий   (2004-06-09 22:22) [38]

Любая дата в понимании компьютера - число, а значит над ним можно вытворять арифметические операции.
Делаю так:
Например, дата первого запуска в числовом выражении = 36666.
Тогда:
 X1:=36666-36000;
 X2:=(36666-5000)*2;
 X3:=36666*3;  и т.д. (формулы могут быть любыми).
Потом раскидываю эти Х1, Х2 и т.д. в разные места компьютера (в отдельные файлы, в базы данных и т.д.)
При запуске программы эти значения собираю и пересчитываю в обратном порядке. Обратная математика в каждом случае должна вернуть то же 36666 (дата первой загрузки).
Если хоть одно из выражений дает другое число, или программа не находит какой-то "Х" - значит ее ковыряли --> программу не запускаем.  + вводи проверку на время использования.
А вообще, в таком виде я прописываю дату окончания использования программы.


 
KilkennyCat ©   (2004-06-09 23:02) [39]

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

Принцип снаряда и брони пока еще никто не отменил, так что спорить по поводу "можно взломать - нельзя взломать" бессмысленно. Даже если взять микроконтроллеры: там такая аппаратная защита, что вам и не снилась. Однако есть один "сумашедший", который от безденежья, отсутствия работы и скуки в каком-то навроченном НИИ в п/я слой за слоем аппаратно снял с микроконтроллера лишнее и посмотрел ячейки памяти электронным микроскопом. А сам я когда-то ломал на заказ спутниковое тв. Была придумана система маркирования электронных сигналов (может, такое и раньше было, но придумал сам, чем дико горжусь:) ). После опубликования теоретической части на одном из популярных сайтов, сайт был закрыт :) Вот так.

А я раньше ломал вообще примитивно: менял в екзешнике байт за байтом (в определенном диапазоне, постоянно суживая границы), пока не натыкался на проверку. Поскольку это делается, когда ломаемая программа оффлайн, запретить она это не может :)
Недавно от скуки (поскольку владею лицензионной версией, а за деньги кракером уже давно не работаю) проверено на Инфо-Бухгалтере (защита - ХАСП). Сломано. За пару часов.

Итог: качественный сервис - лучшая защита.


 
!!!Andrew!!!   (2004-06-10 09:15) [40]

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


 
Cardinal ©   (2004-06-13 17:37) [41]

>Тот кто заплатит денежку (может большую) вряд ли будет делиться >своей копией с другими.

Я знаю кучу человек, которые скинулись на него и установили себе с одного и того же лицензионного диска Warcraft 3 : ).


 
KLAUS   (2004-06-13 19:03) [42]

А что типа нельзя сделать просто, чтоб изначально при запуске прога создавала файл с данными ( типа 012004 и криптовала его допустим в md5), а потом при запуске проверять сущ. файл или нет, если нет****, если да дальше проверять то что тебе нужно через хеш .


 
Подкрадуха ©   (2004-06-13 19:21) [43]

[42]
Как вы в таком случае видите алгоритм работы такой программы?


 
ЮрийК ©   (2004-06-13 20:06) [44]

"А, вообще-то, я ещё не видел _НИ_ _ОДНОЙ_ не взломанной программы. Если у кого есть такие, киньте ссылку на них и предположите (с точностью до дня), когда её взломают."

Xprotect-ом защищённые программы, сколько сломанных программ кто знает?
УРЛ - http://www.xprotector.com


 
ЮрийК ©   (2004-06-13 20:09) [45]

"А что типа нельзя сделать просто, чтоб изначально при запуске прога создавала файл с данными ( типа 012004 и криптовала его допустим в md5), а потом при запуске проверять сущ. файл или нет, если нет****, если да дальше проверять то что тебе нужно через хеш .

Каждый раз удалять этот файл, и прога будет "думать", что её запустили в первый раз.


 
evvcom ©   (2004-06-13 20:31) [46]


> Xprotect-ом защищённые программы, сколько сломанных программ
> кто знает?

Не знаю, но могу поспорить, что нет такой программы, которую нельзя было бы сломать. Защити xprotector-om, предложи мне хорошую сумму бабок, и на спор, за деньги получишь свою взломанную прогу.
Прав KilkennyCat ©   (09.06.04 23:02) [39] насчет экономики. Если я продаю свою прогу за 5 баксов, то никто не заплатит хакеру 10 баксов за ее взлом. И что? Получится что ее нельзя взломать? Нет! Получится, что ее дешевле купить.


 
nester   (2004-06-14 17:02) [47]

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



Страницы: 1 2 вся ветка

Форум: "Основная";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.59 MB
Время: 0.585 c
1-1086946941
Silencer
2004-06-11 13:42
2004.06.27
Проблемы с TDBComboBox


3-1086152913
korvin
2004-06-02 09:08
2004.06.27
Заказ имени поля в результате запроса


4-1084981535
IceMaster
2004-05-19 19:45
2004.06.27
Системный трей


14-1085697963
lak
2004-05-28 02:46
2004.06.27
http://wifi.yandex.ru/


3-1086273282
vic1
2004-06-03 18:34
2004.06.27
Помогите с LIKE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский