Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Схемы защиты ПО   Найти похожие ветки 

 
Anatoly Podgoretsky ©   (2012-05-12 19:17) [40]

> Rouse_  (12.05.2012 15:56:35)  [35]

Обычная ассемблерная ручная или автоматическая вставка, известная в технике
защиты.
Эффективно, но нового ничего.


 
Eraser ©   (2012-05-12 20:40) [41]


> QAZ   (12.05.12 18:44) [39]

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


 
Pit   (2012-05-12 22:44) [42]

Саш, на самом деле эта ветка и есть в чистом виде мерянье этим самым.

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

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

На мой взгляд решение такой проблемы вовсе не техническое, а политическое. Вы там по-моему уже доизвращались до самых извращенных извращений ) И виртуальная машина, и морф, и перенос функционала в ключ, куда еще? Это уже какая-то защита ради искусства, не ударились бы вы в паранойю, это станет вашем конкурентным недостатком. Вы и так уже из-за этой паранойи, например, не можете использовать мощнейший C# и прекрасную (по сравнению с BDS) ms vs. Потому что шарп код хрен защитишь.

На мой взгляд, повторюсь, это вопрос политики. Сколько бы MS не делала защиту - её обязательно ломали. При желании всегда можно поставить самую последнюю версию windows забесплатно.
Ты же сам в соседней ветке описывал сколько ты вложил денег в официальный софт. Согласись, не поэтому же ты вложил, что указанный софт невозможно ломануть и использовать на шару? Какая-то двойственная картина мира ))

Так вот сколько бы MS не защищала винду, а всё равно ломают. Более того, иногда получается так (сам так делал), что имея официальный продукт - ставишь пиратский. А потому что проще, пока официально всю эту хренотень активируешь - задолбаешься. Такая защита - прямой удар по официальным пользователям. Я заплатил бабки, какого хрена я еще должен с этой защитой мучаться?

Хрестоматийный пример - старфорс. Тоже полные параноики, настолько "защищают" свой продукт, что винда иногда летит. Эффективно - о даааа. Да только мой брат по-моему купил героев с такой защитой и уже через пару дней отдал свой ноут на восстановление и слёзно просил скачать пиратку.
Он теперь ни в жизнь не будет героев покупать официально, вот такой эффект. Хотя игру уважает и денег не жалко.

А вот решение продавать винду в OEM - гениальное. Пришел юзвер, купил комп, а там оказывается уже +$50 на ОС. Ну и хрен с ним, еще попугать его, что с пиратской виндой на ноуте при пересечении границы скрутить могут - так он вообще будет рад. Потому что в магазине винда стоит $120.

А если говорить о технологической защите - то это реально новые подходы. Например, SAAS - гипер перспективно. Можно чего хочешь говорить, а гугл наглядно доказал, что в интернете можно сделать всё. Абсолютно всё. Было бы желание, да умение.

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

По сути это всё можно свести к одному - аренда ресурсов. Как человеческих, так и аппаратных, так и программных.

Чё то я зафилосовствовался... Если чего - извиняйте )


 
TUser ©   (2012-05-12 23:59) [43]

Имхо, софт надо делать бесплатным для некоммерческого использования. Для коммерческого - брать % с прибыли.


 
KilkennyCat ©   (2012-05-13 01:43) [44]

Я планирую делать защиту аппаратную, на своем собственном USB-ключе. Пока голову не ломал, как именно, но поскольку ключи делаю сам - широта фантазии не ограничена.


 
Германн ©   (2012-05-13 03:58) [45]


> KilkennyCat ©   (13.05.12 01:43) [44]
>
> Я планирую делать защиту аппаратную, на своем собственном
> USB-ключе.

Кооперируйся с Розычем. Аппаратная часть твоя, РС-шная - Розыча. Вместе вы создадите абсолютную защиту! :)


 
Юрий Зотов ©   (2012-05-13 10:12) [46]


> Rouse_ ©   (11.05.12 23:42)  

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


 
Petr V. Abramov ©   (2012-05-13 10:19) [47]


> TUser ©   (12.05.12 23:59) [43]
>
> Имхо, софт надо делать бесплатным для некоммерческого использования.
>  Для коммерческого - брать % с прибыли.

а в случае убытка - пусть его производитель софта покрывает


 
ZeroDivide ©   (2012-05-13 10:48) [48]

2 Rouse_

Ключевые слова:

> Я об этом только через дня три догадался....



>  когда допер, то все вылилось...


И еще...

> KSergey ©   (12.05.12 14:07) [29]
> Помнится самая толковая защита была в VentaFax: по сути
> так и не было сделано нормальной крякнутой весии
> Суть в множественности внедренных проверок на лицензионность
> и использование проверок (видимо каким-то неявным опять
> же образом, не через одну точку) в алгоритмах.


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

Возможно имеет смысл для этих целей создать постпроцессор исходного кода, делающего что-то типа:
1. Создание копии исходного проекта
2. Навешивание на копию 3-х 4-х оригинальных трюков.
3. Навешивание в pas-файлы 100500 проверок на каждый OnClick, OnCreate и т.п. нескольких различных типов
4. Компиляция релиза
5. Обработка какого-то количества участков (из этих 100500) любым из современных и саппортихщася exe-протекторов (Не вижу смысла париться с этим самому (любой из современных пропиетарных протекторов сделает это все равно лучше, чем вы... тупо дешевле будет заплатить немного денег за эту услугу))

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


 
ZeroDivide ©   (2012-05-13 10:55) [49]


> Юрий Зотов ©   (13.05.12 10:12) [46]
>
>
> > Rouse_ ©   (11.05.12 23:42)  
>
> По сабжу. Знаю одну принципиально невзламываемую схему защиты
> ПО.


Без обид, но звучит как "я знаю метод сжатия любого количества информации до одного байта"


 
RDen ©   (2012-05-13 11:07) [50]

>ZeroDivide ©   (13.05.12 10:55) [49]

метод простой - данное ПО никому на фиг не нужное


 
Anatoly Podgoretsky ©   (2012-05-13 11:15) [51]

> Юрий Зотов  (13.05.2012 10:12:46)  [46]

А чего боишься то, что взломают не невзламываемую защиту?


 
Юрий Зотов ©   (2012-05-13 11:21) [52]


> ZeroDivide ©   (13.05.12 10:55) [49]
> Без обид, но звучит как "я знаю метод сжатия любого количества
> информации до одного байта"

Без обид, но я его действительно знаю.

> RDen ©   (13.05.12 11:07) [50]
> метод простой - данное ПО никому на фиг не нужное

В теории этот метод называется "метод Неуловимого Джо". Но он не единственный.


 
Юрий Зотов ©   (2012-05-13 11:23) [53]


> Anatoly Podgoretsky ©   (13.05.12 11:15) [51]
> А чего боишься то, что взломают не невзламываемую защиту?

Нет, не этого. Планирую выпускать и продавать инструментарий для ее реализации, а конкуренты мне не нужны.


 
RDen ©   (2012-05-13 11:37) [54]

>Юрий Зотов ©   (13.05.12 11:21) [52]
>В теории этот метод называется "метод Неуловимого Джо"

:)
да и на практике...

если серьёзно, всё таки вижу тенденции к цивилизованным отношениям между разработчиками и заказчиками (пользователями) ПО


 
Rouse_ ©   (2012-05-13 11:38) [55]


> Тебе с вероятностью 99,999% никто не скажет ничего нового,
>  чего бы ты не знал

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


 
Rouse_ ©   (2012-05-13 11:50) [56]

ЗЫ:

> Вы и так уже из-за этой паранойи, например, не можете использовать
> мощнейший C# и прекрасную (по сравнению с BDS) ms vs. Потому
> что шарп код хрен защитишь.

ну во первых защить можно, во вторых мы именно его и используем, помимо дельфи :)

ЗЗЫ: ну и конечно "защита ради исскуства" - это ты пальцем в небо. Нельзя один и тот-же движок защиты вешать на все проекты подряд. У каждого своя специфика, поэтому и подход к каждому проекту должен быть разный...


 
Дмитрий С ©   (2012-05-13 12:15) [57]

1. Добавить в код EXE-файла сигнатуру какого-нибудь страшного вируса. Затем подписывать свои exe честным сертификатом и договориться с антивирусными компаниями.

2. Сделать проверки ключа очевидными (чтобы можно было поменять 1 байтик), но если проверка прошла неудачно не освобождать память (т.е. на самом деле надо было поменять 2 байтика). А проверки делать частыми.

3. Писать прогу под какую-нибудь малоизвестную ОС, под которую и отладчиков то нет (это скорее шутка).

4. Использовать фиберы.

5. Ну и всякие контекстно зависимые фенечки, вроде той с Select-ом, что ты написал.

Новое?)

Кстати, а разве защиту trial-а нельзя сломать подменой апи функций получения времени?


 
Дмитрий С ©   (2012-05-13 12:25) [58]

Еще можно сделать триал облачным. mstsc /v:trial.superproga.ru


 
Rouse_ ©   (2012-05-13 12:45) [59]

Фиберы тут мало помогут, проще вынести кусок кода в нить и отсоединить ее от отладчика через вызов NtSetInformationThread с флагом ThreadHideFromDebugger. А чтоб не перехватили NtSetInformationThread проэмулировать его вызов на асме, взяв индекс сервиса в NTDLL и дернуть sysenter (ну или int2e для W2k, или call fs:[$C0] для 64 бит)
А подменять функцию снятия времени тоже достаточно проблематично, бо тут мы уже сможем проэмулировать NtQuerySystemTime, который берет данные из KI_USER_SHARED_DATA, находящемуся по фиксированному адресу в каждом процессе. Проще само время системы перевести на нужное...

ЗЫ: про сигнатуру вируса не понял, чесно :)


 
Дмитрий С ©   (2012-05-13 12:56) [60]


> ЗЫ: про сигнатуру вируса не понял, чесно :)

Ну антивирус, проверяя подпись, знает что эта прога точно нормальная. А если ее поправить, то антивирус этого сделать уже не сможет, а т.к. в коде есть сигнатура страшного вируса, то... ну понятно:)


 
Rouse_ ©   (2012-05-13 13:04) [61]


> Дмитрий С ©   (13.05.12 12:56) [60]

Аааа, хе прикольная идея - сеньк :)


 
Eraser ©   (2012-05-13 13:17) [62]


> Дмитрий С ©   (13.05.12 12:56) [60]
>
> > ЗЫ: про сигнатуру вируса не понял, чесно :)
>
> Ну антивирус, проверяя подпись, знает что эта прога точно
> нормальная.

это просто ты не сталкивался с антивирусами ) они и с ЭЦП на ура запишут в вирусы и не факт, что "выпишут" потом )


 
Rouse_ ©   (2012-05-13 13:29) [63]

Им просто ЭЦП высылать нужно, у нас раньше тоже проблемы были в этом плане...


 
Ega23 ©   (2012-05-13 13:33) [64]

Розыч, а ты чё не на работе?


 
Pit   (2012-05-13 13:39) [65]


> а т.к. в коде есть сигнатура страшного вируса

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


 
Rouse_ ©   (2012-05-13 13:44) [66]


> Розыч, а ты чё не на работе?

Ибо нефиг :)


> что мешает похреначить сигнатуру страшного вируса?

Ее сначала нужно найти - антивирь же не говорит на какую именно сигнатуру и по какому оффсету он среагировал.


 
Rouse_ ©   (2012-05-13 13:48) [67]

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


 
Pit   (2012-05-13 14:01) [68]


> антивирь же не говорит на какую именно сигнатуру и по какому
> оффсету он среагировал.

ну как так. Он же пишет - обнаружен Trojan.XXX.YYY - далее по имени ищется этот вирусняк в инете, определяется сигнатура )


 
Eraser ©   (2012-05-13 14:08) [69]


> Rouse_ ©   (13.05.12 13:29) [63]
> Им просто ЭЦП высылать нужно, у нас раньше тоже проблемы
> были в этом плане...

ну вот и symantec есть white list, а у остальных не видел.


 
Rouse_ ©   (2012-05-13 14:12) [70]


> далее по имени ищется этот вирусняк в инете, определяется
> сигнатура )

Хм, ну найди мне сигнатуру для "Trojan.Siggen3.59957" :)


 
Rouse_ ©   (2012-05-13 14:15) [71]


> Eraser ©   (13.05.12 14:08) [69]
> ну вот и symantec есть white list, а у остальных не видел.

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


 
Kerk ©   (2012-05-13 14:17) [72]


> Eraser ©   (13.05.12 14:08) [69]
>
> > Rouse_ ©   (13.05.12 13:29) [63]
> > Им просто ЭЦП высылать нужно, у нас раньше тоже проблемы
>
> > были в этом плане...
>
> ну вот и symantec есть white list, а у остальных не видел.

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


 
Pit   (2012-05-13 16:23) [73]


> Хм, ну найди мне сигнатуру для "Trojan.Siggen3.59957" :)

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


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

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

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


 
Rouse_ ©   (2012-05-13 16:33) [74]


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

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


 
Дмитрий С ©   (2012-05-13 16:38) [75]


> Rouse_ ©   (13.05.12 16:33) [74]

ты зачем секрет поиска сигнатуры в файле раскрыл?)

Можно проще. Написать "страшный вирус" и отправить его всем антивирусным компаниям.

Я помню нашел способ отключать 6-ой касперский правда с правами админа (но это было года три-четыре назад, тогда все под админом сидели). Написал прогу которая это делает - отправил им, думал расковыряют смысл найдут - а нет, просто добавили в базу и все.
В итоге я добавил halt(1) в конец проги и она уже не определялась антивирусом. Отправил - новый вирус, причем троян. На третий раз я им исходник отправил. Даже спасибо не сказали.


 
Inovet ©   (2012-05-13 16:47) [76]

> [48] ZeroDivide ©   (13.05.12 10:48)
> ... И по моему этого будет достаточно, чтобы хакер устал и отвязался...

Есть такой музыкальный софт Steinberg Cubase. Его версию 5 ломали что-то около года, если не вру, пока всё выломали. не устали. Уже год как 6 версия вышла, ещё ломают, опять же не знаю, - может и сломали уже.
http://ru.wikipedia.org/wiki/Steinberg_Cubase


 
Pit   (2012-05-13 16:53) [77]


> Я помню нашел способ отключать 6-ой касперский правда с
> правами админа

ахринеть. С правами админа можно делать что угодно.


> но это было года три-четыре назад, тогда все под админом
> сидели

неправда. Я до сих пор в XP, и до сих пор без прав админа)


 
Pit   (2012-05-13 16:53) [78]


> Есть такой музыкальный софт Steinberg Cubase. Его версию
> 5 ломали что-то около года, если не вру, пока всё выломали.
>  не устали. Уже год как 6 версия вышла, ещё ломают, опять
> же не знаю, - может и сломали уже.

это на 90% защита по принципу неуловимого джо.


 
Дмитрий С ©   (2012-05-13 16:57) [79]


> Pit   (13.05.12 16:53) [77]
>
>
> > Я помню нашел способ отключать 6-ой касперский правда
> с
> > правами админа
>
> ахринеть. С правами админа можно делать что угодно.

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


 
Inovet ©   (2012-05-13 16:58) [80]

> [78] Pit   (13.05.12 16:53)
> это на 90% защита по принципу неуловимого джо.

Ну не знаю, не массовый продукт, конечно, но дорогой. Там аппаратный ключ применён, вроде с выносом в него части функционала.



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

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.66 MB
Время: 0.056 c
15-1336042075
john mc'coffe
2012-05-03 14:47
2013.03.22
java tcp client


15-1352291019
Inovet
2012-11-07 16:23
2013.03.22
Скончаося Кругляков Эдуард Павлович


15-1342613639
Eu
2012-07-18 16:13
2013.03.22
Разукрашивание cxGrid


15-1337806793
TStas
2012-05-24 00:59
2013.03.22
Чайнотский вопрос про батники


4-1259064819
Leonid Troyanovsky
2009-11-24 15:13
2013.03.22
Как заставить GUI thread создать нужное мне окно?