
| Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
![]() |
||
Защита ПО
|
||
| Философия, технологии, алгоритмы! |
![]() |
|
|
Опции темы |
|
|
#1 |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
Защита ПО
Написал программу на Delphi. Надо защитить. Привязка к железу не подходит. Писать ключи в реестре примитив. Можно создавать ключики на каждый месяц, но дату легко исправить, а как это проконтролировать незнаю.:confused: :confused: :unhappy: :unhappy: :confused: :confused:
|
|
|
|
|
#2 |
|
Форумец
Сообщений: 1,696
Регистрация: 24.11.2002
Возраст: 41
|
Как это дату легко исправить ??
Придумай средство от перевода системных часов назад. Например, храни дату последнего запуска и проверяй не больше ли она текущей даты запуска, если это так то выводи пользователю месседжбокс о том что он лох, и форматируй винт...(ему разумеется)
|
|
|
|
|
#3 |
|
Memory test: failed
|
JOHN_PROFF,
- Файлик в system32 с замудренным именем. Создается при инсталляции, в него пишется закодированная (а-ля md5) дата его создания (см. установки), читаешь дату его создания, проверяешь, подходит ли содержимое... Вариант примитивный, но работает ![]() - В реестр можно писать кодовый ключик, к тому же не обязательно его писать в общепринятые места. Хорошо катит HKEY_CLASSES_ROOT\.8ba или что-то подобное. Ты много видел юзверей, которые туда смотрят? У меня вычисление такого ключика в свое время заняло часа 2-3, если бы не было оччччень надо (любимая девушка попросила), плюнул бы. - Комбинация первого и второго варианта, причем по 3-5 ключей и файлов в разных местах. Если есть ошибка в проверке хотя бы одного, вписать новый файлик/ключ, который будет блокировать работу проги впредь впоть до переустановки винды - сильно затрудняет опрокидывание системы защиты путем проб и ошибок... А вообще, купи себе хорошую книжку по криптографии/защите данных. |
|
|
|
|
#4 |
|
Форумец
Сообщений: 1,696
Регистрация: 24.11.2002
Возраст: 41
|
DMakeev system32, реестр.. нелюблю.. особенно когда какая-то программа Васи Пупкина чем-то наполняет мои системные папки
![]() А вообще, купи себе хорошую книжку по криптографии/защите данных. Там есть защита программ от запуска по истечению времени ? JOHN_PROFF Недавно я давал ссылочку на программу ORiEN, она навешивает на целевую программу различные защиты.. Почему привязка к железу не подходит ? |
|
|
|
|
#5 | |
|
Форумец
Сообщений: 782
Регистрация: 09.01.2003
|
LSL
Цитата:
Во-вторых, ты не думаешь о том, что нормальный юзер для работы не дает себе прав суперпользователя, без которых покорежить систему нельзя? Попробуй с нормальными юзеровыми привилегиями что-нибудь сделать с системой нехорошее. |
|
|
|
|
|
#6 | ||
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
LSL
Цитата:
Цитата:
Еще можно каждый раз заново ставить программу на VMware, предварительно сделав копию VMware'вского ввинта. |
||
|
|
|
|
#7 |
|
Форумец
Сообщений: 4,909
Регистрация: 08.04.2003
Возраст: 42
|
Как быть с FileMon, RegMon
Да просто процесс смотри. Еще можно каждый раз заново ставить программу на VMware, предварительно сделав копию VMware'вского ввинта. А как ты хотел чудес не бывает . ASProtect пробывал ? |
|
|
|
|
#8 | |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
zic
Цитата:
ASProtect это ключики в реестре? |
|
|
|
|
|
#9 |
|
Форумец
Сообщений: 1,696
Регистрация: 24.11.2002
Возраст: 41
|
Unforgiven
Во-первых, таких программеров надо отстреливать как бешеных собак, потому что такая, с позволения сказать, программа принципиально ничем не отличается от вируса. Во первых надо отстрелевать пользователей, которые ломают(мои) программы, а ещё лучше тех кто пишет эти ломалки. Во вторых это не вирус. Чтобы назваться вирусом программе нужно выполнять обязательное условие "размножение" Во-вторых, ты не думаешь о том, что нормальный юзер для работы не дает себе прав суперпользователя, без которых покорежить систему нельзя? У нормальных пользователей привелегии администратора. |
|
|
|
|
#11 |
|
Форумец
Сообщений: 782
Регистрация: 09.01.2003
|
LSL Так, какая такса у нас на отмотку треда назад?
Придумай средство от перевода системных часов назад. Например, храни дату последнего запуска и проверяй не больше ли она текущей даты запуска, если это так то выводи пользователю месседжбокс о том что он лох, и форматируй винт...(ему разумеется) надо отстрелевать пользователей, которые ломают(мои) программы, а ещё лучше тех кто пишет эти ломалки Так вот, я утверждаю, что изменение времени на рабочей станции не есть взлом программы. Это --- абсолютно законная системная операция. И если какая-то программа неадекватно на нее реагирует --- это ее половая трудность. А вот преднамеренная порча или уничтожение данных пользлвателя --- действие не вполне законное. И за это можно поплатиться. И такие случаи известны. не помню, где я про это читал, но если закопаться в Интернет, то наверное, найти можно. Про вирус. Имелось в виду только одно из возможных последствий пребывания вируса на компе. Про права. Тут мы уже уходим в оффтопик, но ладно... Как ты думаешь, для чего придуманы всякие пользовательские привелегии, разграничение прав доступа к файлам и т. д.? Ответь, а потом продолжим. |
|
|
|
|
#12 | ||
|
Форумец
Сообщений: 1,986
Регистрация: 27.08.2003
|
Unforgiven
Цитата:
Цитата:
|
||
|
|
|
|
#13 |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
Помоему мы отошли от темы!!!
|
|
|
|
|
#14 |
|
Форумец
Сообщений: 1,696
Регистрация: 24.11.2002
Возраст: 41
|
Unforgiven
Так вот, я утверждаю, что изменение времени на рабочей станции не есть взлом программы. Это --- абсолютно законная системная операция. И если какая-то программа неадекватно на нее реагирует --- это ее половая трудность. А вот преднамеренная порча или уничтожение данных пользлвателя --- действие не вполне законное. И за это можно поплатиться. И такие случаи известны. не помню, где я про это читал, но если закопаться в Интернет, то наверное, найти можно. Про вирус. Имелось в виду только одно из возможных последствий пребывания вируса на компе. Ты прав, я забыл что речь шла о системном времени. Про вирус я пошутил Неужели ты думаешь что я буду наделять такими функциями свой софт ? ![]() Про права. Тут мы уже уходим в оффтопик, но ладно... Как ты думаешь, для чего придуманы всякие пользовательские привелегии, разграничение прав доступа к файлам и т. д.? Ответь, а потом продолжим. Домашние пользователи имеют права администратора. Про организации я не говорю. zss_vrn Не думаю, что так. При отмотке системных часов назад многие бухгалтерские, управленченские и т.п. проги начнут глючить. Что будет, если у секретаря генерального напоминалка сработает не во-время? Ужас, что будет! А если система управления проектами закобелится? Операция в любом случае законна. Если в резултате работы моей программы перестают работать другие программы, то это - моя ошибка. Не всегда. JOHN_PROFF Помоему мы отошли от темы!!! Да, скорее всего это так Ближе к теме, помогите человеку... |
|
|
|
|
#15 |
|
Форумец
Сообщений: 782
Регистрация: 09.01.2003
|
Чтобы дать конкретные советы, нужно иметь представление о том, в каких условиях программа должна работать. Я могу посоветовать использовать FlexLM. Это устроит?
Давайте рассуждать с точки зрения банальной эрудиции. Насколько я понимаю, надо определять разницу во времени между текущим временем, когда программа запускается, и временем, когда она была установлена (ну или временем, которое написано в ключе/лицензии). Но тогда это время надо где-то хранить. Таких мест только два --- реестр и файл. Можно отслеживать какое-нибудь время какого-нибудь файла и периодически изменять его. Но все это можно обнаружить. Изменение времени модификации файла вообще определяется тривиально: надо при поиски файла задать определенные условия. Обращение к реестру и файлам тоже можно отследить. |
|
|
|
|
#16 |
|
Форумец
Сообщений: 1,696
Регистрация: 24.11.2002
Возраст: 41
|
Зачем реестр и system32 ? Всю информацию о времени в закодированном виде можно хранить в файле в папке с программой. Разумеется, если файл повреждён или удалён программа не запустится.
Вот я когда этим занимался, привязывал к серийнику винта.... |
|
|
|
|
#17 |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
К железу привязываться нельзя
|
|
|
|
|
#19 |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
is Речь не идет о сверх серьезной защите.
|
|
|
|
|
#20 |
|
Форумец
Сообщений: 4,909
Регистрация: 08.04.2003
Возраст: 42
|
zss_vrn
Если в резултате работы моей программы перестают работать другие программы, то это - моя ошибка. Юзер платил за них, кто будет возмещать ущерб? Конечно, можно написать в требованиях, что "после установке этой программы мы не гарантируем вам работу всего остального", то юридически не подкопаться. Но кто будет покупать такие программы? Все . Потому что так давно есть . LSL Домашние пользователи имеют права администратора. Про организации я не говорю. Угу ,а некоторые хранят в Корзине важные документы ну и что ? Таких маразмов миллионы , взять хотябы поверье что форматирование вредно для винчестера и тп . |
|
|
|
|
#21 |
|
Memory test: failed
|
LSL,
system32, реестр.. нелюблю.. особенно когда какая-то программа Васи Пупкина чем-то наполняет мои системные папки этим занимается 80% всего софта на твоем компе ![]() JOHN_PROFF, буду говорить банальности: нет невзламываемых вещей. Есть вещи, затрат на взлом которых значительно превышают выгоду от взлома. |
|
|
|
|
#22 |
|
ЕвГений
Сообщений: 497
Регистрация: 14.11.2003
Возраст: 43
|
DMakeev Именно это и надо. Но похоже я сам тут уже разобрался.
Всем спасибо!!! Если будут идеи всеравно пишите. |
|
|
|
|
#23 | ||
|
Форумец
Сообщений: 1,986
Регистрация: 27.08.2003
|
zic
Цитата:
Потому что если в результате установки нашей проги ченть другое перестает работать, мы садимся в поезд/самолет и едем/летим исправлять. Некоторая несовместимость есть, но мы о ней знаем и предупреждаем (ну, например нельзя иметь на сервере две версии одного сервера БД одновременно).А вообще-то такая аналогия - купил телевизор домой, включил - все класс, но вырубились холодильник и стиральная машина. LSL Цитата:
|
||
|
|