|
Защита ПО
|
|||
---|---|---|---|
#18+
Всем здравствуйте! Озаботился давеча защитой своей программы (С#). ПО - коммерческое. Первое, что сделал - это ключ, который лежит в текстовом файле в корне с прогой и проверяется при запуске на совпадение с вычисляемым самой прогой. Сам расчет ключа - в dll-библиотеке. Если не совпал - досвидания. Однако естественно, что при дизассемблировании можно легко закомментировать строчку с проверкой. Пошел дальше - добавил такие же проверки в основные модули программы (работа с БД и внешними устройствами), а эти модули уже находятся в dll-библиотеках. Если ключ не подошел, то библиотека не выполняет свою работу (можно, скажем, коверкать sql-запросы, но я пока сомневаюсь на этот счет) Вопрос: как максимально усложнить доступ к коду в библиотеках? Потому как при отладке основного модуля, у которого есть референс на библиотеку, открывается исходный код самой библиотеки. Возможно, предстоит подключать к разработке третьих лиц, и хотелось бы защитить именно от них. Если кто решал такие задачи, подскажите пожалуйста. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 21:26 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris А вот такой вопрос, ключь он что дает право пользоваться, то есть если у меня есть текстовый с ключем, то прога запустится, если так что мешает легальному обладателю выложить в сеть этот файл. И вот такой риторический вопрос, а есть такой софт, достаточно актуальный и востребованный но еще не хакнутый? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 21:34 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris , авторВопрос: как максимально усложнить доступ к коду в библиотеках? №0. не писать на шарпе )) №0.1. самим компилировать ( например воткнуть строку, на которой дизасм будет тупо перегружать комп) самое главное это стоимость вашего ПО и аудитория ( её охват). и что за ПО. его назначение. т.е. сломать можно всё. вопрос затрат. как всё же локализовать. можно сделать постоянные апдейты, которые будут сносить то что было до того, тем самым , взломщикам заного нужно будет взламывать прогу. Онлайн регистрация. главное , сделать так, что бы цена хака была выше стомости легальной покупки. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:05 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
вот тут товарищь исследует защиты разных прог. мож будет интересно http://%D1%82%D1%83%D1%82%D0%B0] http://www.manhunter.ru/underground/ ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:12 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Где-то в степиPallaris А вот такой вопрос, ключь он что дает право пользоваться, то есть если у меня есть текстовый с ключем, то прога запустится, Не, не запустится И вот такой риторический вопрос, а есть такой софт, достаточно актуальный и востребованный но еще не хакнутый? Да, но он стоит сильно дороже и более универсальный, а мой - дешевле, и настроен под узкую специфику (востребованную). У официального софта привязка по flash-девайсу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:23 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
beg-in-erвот тут товарищь исследует защиты разных прог. мож будет интересно http://%D1%82%D1%83%D1%82%D0%B0] http://www.manhunter.ru/underground/ Афигенный блог, +1 P.S. Топикстартера, думаю, ждет та же участь :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:24 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
PallarisУ официального софта привязка по flash-девайсу. и это ломается какого направления то софт? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:26 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
ИзопропилPallarisУ официального софта привязка по flash-девайсу. и это ломается какого направления то софт? SCADA-система узкого профиля ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:26 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris, Да не заморачивайтесь защитой, если софт интересный всё равно сломаю дело времени, вернее свободного времени. По крайней мере в рашке вы ничего не получите как за лицензию, там - там другой разговор. Посмотрите может можно какие то пожертвования организовать, продать кому то из зарубежных конструкторов свою идею. ну и забыть (( ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:36 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
PallarisИзопропилпропущено... и это ломается какого направления то софт? SCADA-система узкого профиля Мне нравится система защиты у СУБД Oracle. Она не традиционная. Хочешь поставить - линки открыты, ключей нету. Данных много и произошла задница? Покупай доступ на металинк и/или спецов и т. п.. Почему не посмотреть в сторону продажи услуги тем более что софт востребован. Сделай хардкорный конфиг и ходи настраивай за деньги. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:49 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Lord British Почему не посмотреть в сторону продажи услуги тем более что софт востребован. Сделай хардкорный конфиг и ходи настраивай за деньги. :) Хардкорный конфиг действительно имеется :) правда, если у человека есть настройки реального проекта на уже имеющейся машине, то разобраться можно. А у Оракла разве нет ограничения на размер базы без ключа? Вроде ж есть ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:51 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris, а с оборудованием как работаете через OPC серверы или напрямую по спец-протоколам, оборудование ваше или любое стороннее для которого есть OPC сервер и т. п..? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:51 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Lord BritishPallaris, а с оборудованием как работаете через OPC серверы или напрямую по спец-протоколам, оборудование ваше или любое стороннее для которого есть OPC сервер и т. п..? Не, оборудование чужое. Общение идет напрямую, т.е. протокол зашивал в прогу. Впрочем, протокол всем известен и можно использовать OPC ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:53 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris, Нету у оракли ключей и ограничений качай EE и вперед. Только без купленного саппорта этого никто не делает, потому как воркэраунды/апдейты/итп. только с металинка. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 22:54 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Pallaris, Увы, у меня опыт только разработки сервис ориентированных приложений и то серверное ПО у нас, а клиентское у заказчика. Когда не платили - перекрывали "газ". Вот и все просто и надежно. Клиент даже не обфусцировали. -- Раньше во времена DOS ходили полиморфные вирусы, грубо говоря, при каждом запуске оно модифицировало свой com/exe какой нибудь эквивалентной шелухой и nop'ами. Можно посмотреть в сторону всяких Mono.Cecil и попробовать повторить подвиг :). От патча на первый взгляд может и помочь на некоторое время. Также если ваша защита вынесена в dll, вы сами локализовали работу, в лучшем случае напишут заглушку и положат в папку с прогой. Ее можно перепесать на C++/CLI, там будет куски управляемого и не управляемого кода, а в неуправляемый код можно и asm напендюрить. На wasm.ru были раньше выложены всякие антиотладочные/антидизассм фишки, на которых падали/определялись известные отладчики/дизассемблеры и т. п.. и т. п.. Можно также напилить какой-нибудь постобработчик сборок, который нахерачит в каждую публичную функцию или в какие-то рандомно проверку кода причем последовательность комманд проверки от функции к функции должна меняться (мусор, эквивалентные команды т. п..) Хорошая защита - винигрет из гавнистых трюков. У кого-то терпения не хватит, у кого то времени, а кто-то скажет овчина выделки не стоит (времени больше на анализ чем заплатили)... и т. п.. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 23:37 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
PallarisLord BritishPallaris, а с оборудованием как работаете через OPC серверы или напрямую по спец-протоколам, оборудование ваше или любое стороннее для которого есть OPC сервер и т. п..? Не, оборудование чужое. Общение идет напрямую, т.е. протокол зашивал в прогу. Впрочем, протокол всем известен и можно использовать OPC Жаль. А то можно было бы развернуться на всех узлах (прошивка оборудования, opc сервер, клиент). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 23:39 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
PallarisХардкорный конфиг действительно имеется :) правда, если у человека есть настройки реального проекта на уже имеющейся машине, то разобраться можно. А ты его сделай бинарный или xml с узлами/атрибутами вида Код: xml 1. 2. 3.
А тулза для формирования пусть только у тебя будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 23:53 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
авторА ты его сделай бинарный + чтобы по изменениям не выявили - что по каким оффсетам лежит, шифруй "с солью"! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2013, 23:56 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Не, проект в системе и так бинарный. А сама прога - она не только исполнительная система, но еще и система проектирования. Но когда пользователь загружает проект в программе, то естественно может там что-то менять, и сохранять проект. Т.е. как бы бинарный файл особой ценности не представляет. Программа с проектом переносится на оборудование, проданное кому-то без нашего ведома, и после небольшой настройки работает. Вы мне скажите, dll-ки можно скомпилить так, чтоб в Visual Studio не открывался их исходный код, когда они в качестве референса подключаются? Жаль. А то можно было бы развернуться на всех узлах (прошивка оборудования, opc сервер, клиент). Ну да, тут уж можно разгуляться :) Правда, экономически нецелесообразно на данный момент ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2013, 00:49 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
PallarisВы мне скажите, dll-ки можно скомпилить так, чтоб в Visual Studio не открывался их исходный код, когда они в качестве референса подключаются? Если это чистая .NET сборка, то метаданные вы увидите как не крутите (если только штатные средства студии). От рефлектора не спасешься. Есть обфускаторы, которые могут портить имена и т. п.. правда е знаю как они поступают с публичными интерфейсами. Но можно запилить твою dll на c++/cli, получится mixed сборка. Метаданные (обертки) увидишь, а unmanaged код нет, а он может быть написан на c++ с асм вставками. :). --- Также есть возможность сделать следующее, но для *.exe (что получается из .net проектов). он состоит в этом случае 1 из unmanaged entrypoint, которая инициализирует .NET COM сервер и передает ему где IL находится (детели не помню) 2 в одной из секций хранится IL код По второму можно пройтись обфускацией, по первому попробовать применить методы защиты unmanaged программ с целью запутать концы. М. б. даже прокатит один из существующих обфускатор, потом какой-нибудь unmanaged упаковщик. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2013, 01:09 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
МСУ Защита ПО: купить или создать с нуля? И кто это говорит? StarForce? Помню как пираты изящно поломали защиту от копирование StarForce для дисков с игрой StarCraft (ещё первой). Короче, против лома нет приёма ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2013, 13:30 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Помню, 3 месяца ушло у спецов на слом новой защиты спутникового ТВ Premiere в Германии. Ясно дело спецу заплатили ибо теперь пираты могут продавать карточки к ресиверам в несколько раз дешевле. В общем моя ИМХА - сделать защиту "от дурака" если уж так хочется и дальше не париться. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2013, 13:34 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
M234изящно поломали Не скажу за StarCraft (еще первый), но они усирались ломаючи. По опыту помню, starfuck и перетыкания шлейфов работали два раза из трех или еще меньше. Потом ломатели решили, что полностью вычищать его из исполняемого файла хоть и не проще, зато результат 100%, но назвать это "играючи" язык не поворачивается. От StarForce стали отказываться лишь под шквалом жалоб от пользователей, которым он давал отлуп даже на лицензию. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2013, 13:45 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
1) переименовываете EazFuscator-ом 2) упаковываете Энигмой и редкоиспользуюмую часть своей проги (одноразовые инициализации и вызовы в Энигму) виртуализируете EazFuscator-ом (преобразуете в P-code малоизвестной виртуальной машины выполненной на dotnet, очень труднообратимый процесс, хотя обратилки для VB6 P-code вроде бы есть, но даже переименование настолько все искорежит с точки зрения исходников, что VM ,наверно, даже лишняя) 3) можете объявлять конкурс кто взломает первым ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 13:23 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
EazFuscator снимается автоматически с помощью de4dot. Что такое энигма не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 13:40 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
AntonariyEazFuscator снимается автоматически с помощью de4dot. даже после "снятия" (обратного преобразования), в исходниках разбираться не очень то приятно без оригинальных имен, но это любой обфускатор может и теоретически de4dot-ом можно снять любой обфускатор после дампа а с виртуализацией EazFuscator получается мегатонна малоприятной лапши, в которой можно до пенсии разбираться ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:01 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
sanyock2теоретически de4dot-ом можно снять любой обфускатор после дампа если de4dot будут развивать в этом направлении, там щас большинство коммерческих обфускаторов перечислено, но вендоры пытаются добавлять всякие преграды, наверно относительно простообходимые соответствующими обходителями, если они даже Энигма подобные защиты обходят в EazFuscator же решено кардинально, до тех пор, пока его VM не обратят и совместимость максимальная (можно либы защищать) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:05 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
ТС: так выкладывайте ваше ПО, покрутим защиту ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:10 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
в enigmaprotector.com тоже есть виртуализатор, но только для native code, в результате можно сделать очень веселенький mix с unmanaged assemblies ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:28 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Так вот что за энигма. Enigma 1.xx - 3.xx Virtual Machine Unpacker ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:40 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
тута видео , демонстрируются 4 обфускатора ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:45 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
AntonariyТак вот что за энигма. Enigma 1.xx - 3.xx Virtual Machine Unpacker свежая Enigma дает хорошую защиту на несколько месяцев или недель, это как борьба каспера и лаботрясописателей сам не умею распаковывать, но на открытых форумах пишут, что 3-юю в авто не получается, надо лазить во всякие аси и оли, а это не каждому захочется, а в последних версиях всегда какие-нибудь отклонения от DIY "мануалов", т.е. остается уделом маргиналов кроме того в ней есть удобный менеджер ключиков если же хочется спрятать кусок dotnet кода, то можно виртуализовать платным EazFuscator, не знаю на долго ли мне кажется, что если охранять исходники для шароварки, то в принципе достаточно переименования бесплатным EazFuscator + регистрация в каком-нибудь гос. учереждении в РФ или США (с перфорацией - выкидыванием строк), с учетом того, что вменяемые апдейты качественно и в срок сможет делать только автор, имя возможность использовать исходники с оригинальными именами ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:55 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
если кто-нибудь пробовал прогнать de4dot после виртуализации платным EazFuscator, то наверно останется вопрос только насколько долго продержится их VM ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 14:57 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
бесплатный ILSpy вроде бы поудобнее рефлектора ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 15:09 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
sanyock2бесплатный ILSpy вроде бы поудобнее рефлектора не то, чтобы удобнее, не до жиру Дело в том, что некоторые сборки рефлектор просто не открывает, а ILSpy открывает. И самое интересное: рефлектор во многих случаях осознанно не показывает код, особенно, если он обфусцирован их родным смартом, вместо кода дает комментарий типа // Code obfuscated. тако вот х-й рефлектор.... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 15:20 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Winnipuh тако вот х-й рефлектор.... думаю, кто этим сурьёзно занимается, то у того своя IL-ковырялка есть. не настолько она сложна ( на первый взгляд ) если ТС нужно просто усложнить доступ к коду, то ему надо хорошенько протись обфускатором и вроде поможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 15:34 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
http://www.gapotchenko.com/eazfuscator.net/features/virtualization разве ломаемо при скромных бюджетах до $100K? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2013, 08:43 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Попробуйте ILProtector, защищаю им, на последних версиях dе4dоt на нём спотыкается и не может снять защиту. http://www.vgrsoft.com/ru/download/ilp ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2013, 00:21 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
sanyock2 http://www.gapotchenko.com/eazfuscator.net/features/virtualization разве ломаемо при скромных бюджетах до $100K? Дружище, он даже на руборде валяется себе абсолютно бесплатно, так же как и vmProtect, почти что в самой последней редакции, о какой защите тут можно говорить ? Это не защита, а клоунада. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2019, 20:49 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
И ломают его уже который год подряд, вообще существует ли защита для DotNet, взлом которой бы стоил хотя бы больше нескольких зеленых сотен? Что-то сомнительно, что вообщем то конечно же печально :( А что там слышно про DotNet Native Compilation? Как то все затухло? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2019, 20:52 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Bimon Subio, Платформа .Net не позволяет эффективно защитить программы от декомпиляции. Большинство обфускаторов автоматически снимаются de4dot, или легко дампятся вручную после запуска. Поэтому или переписывать в native code, или выносить приложение на сервер, где сборки будут недоступны для анализа. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2019, 07:49 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Оказывается, не затухло, а цветет и пахнет: https://github.com/dotnet/corert/tree/master/samples/NativeLibrary Building Native Libraries with CoreRT This document will guide you through building native libraries that can be consumed by other programming languages with CoreRT. CoreRT can build static libraries that can be linked at compile time or shared libraries that are required at runtime. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2019, 09:00 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
EoltBimon Subio, Платформа .Net не позволяет эффективно защитить программы от декомпиляции. Большинство обфускаторов автоматически снимаются de4dot, или легко дампятся вручную после запуска. А как же компиляция в Native? https://docs.microsoft.com/en-us/dotnet/framework/net-native/ https://secanablog.wordpress.com/2018/06/08/compile-a-net-core-app-to-a-single-native-binary/ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2019, 09:06 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
Наверно, можно и так: https://www.sql.ru/forum/1311181-a/mozhno-li-kakim-to-obrazom-zadeystvovat-native-uwp-v-dekstop-prilozhenii через UWP или CoreRT. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2019, 09:10 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
EoltBimon Subio, Платформа .Net не позволяет эффективно защитить программы от декомпиляции. Большинство обфускаторов автоматически снимаются de4dot, или легко дампятся вручную после запуска. Поэтому или переписывать в native code, или выносить приложение на сервер, где сборки будут недоступны для анализа. А чем принципиально отличается сложность взлома под Native X86 (например, с грамотно навешанной Enigma Protector) от взлома обфусцированного DotNet/Java приложения? Ведь по слухам X86 тоже является виртуальной машиной внутри аппаратных Intel подобных процессоров, т.е. там аппаратно сделан неведомый процессор с неведомым набором команд, который иногда обновляют микрокодом (со свежими АНБ закладками) и уже в нем выполняется в режиме эмуляции как бы на виртуальной машине тот код X86, который мы привыкли думать, что он является аппаратно исполнимым. В этом смысле Intel/AMD CPU, насколько я понимаю, чем то напоминают эмулятор Bochs, если бы Bochs исполнялся на суперсекретном аппаратном процессоре с обманчивым названием Intel/AMD X86, а уже внутри Bochs выполнялись бы ваши "нативные" программы. Примерно аналогично устроен процессор Эльбрус, но он хотя бы явно декларирует, что выполняет X86 в режиме эмуляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2019, 09:43 |
|
Защита ПО
|
|||
---|---|---|---|
#18+
В этом смысле противоположностью по отношению к эмуляции X86 можно привести в качестве примера ARM, когда его внутренности достаточно открыты и ARM код исполняется сразу же аппаратно на известном и подробно описанном в документации оборудовании, а не внутри Intel Black Box (неведомом ларце от Intel). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2019, 09:50 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1399009]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 172ms |
0 / 0 |