Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/170: Рейтинг темы: голосов - 170, средняя оценка - 4.55
 Аватар для AlexVal
1 / 1 / 0
Регистрация: 18.10.2011
Сообщений: 7

Защита приложения на C# и обфускация

18.10.2011, 14:55. Показов 35106. Ответов 70
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не так давно перешел с классического Native на .Net. И сразу возник ряд вопросов каким образом защищают приложения на базе .net? Ведь насколько я знаю приложения .Net легко декомпилируются, практически до исходного кода.
Да, есть обфускаторы, которые переименовывают все названия внутри программы в непонятно что. Но, как я понимаю, это не мешает декомпиляции и отладке.
Эксперты, расскажите как вообще зазищаются от подобного и какими обфускаторами вы пользуетесь сами и в чем их преимущество?
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.10.2011, 14:55
Ответы с готовыми решениями:

Защита/Обфускация .Net
Всем привет, пытался быстро нагуглить более или менее современные темы по этому вопросу и одно старье, может кто подскажет чем сейчас можно...

Защита bat / обфускация кода
Добрый день, Возможна ли обфускация кода bat, когда используются переменные в теле самого кода? Опробовал пару тройку приложений и...

Обфускация bat-файла как защита его от антивируса
Есть утилита которая сможет зашифровать .bat файл? Точнее его содержимое,чтобы открыв блокнотом можно было увидеть только зашифрованный...

70
 Аватар для WonderFlik
208 / 138 / 15
Регистрация: 28.04.2011
Сообщений: 389
18.10.2011, 15:38
если есть доступ к сборке то код в любом случае можно извлечь в том или ином виде, а зачем от этого защищаться?
0
 Аватар для AlexVal
1 / 1 / 0
Регистрация: 18.10.2011
Сообщений: 7
18.10.2011, 16:04  [ТС]
Я пишу программы для продажи, поэтому защита и невозможность декомпиляции для меня очень важны. Поэтому и хочется узнать как это делается с .net
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
18.10.2011, 16:16
.NET Reactor нормально защищает .NET *.dll и *.exe. Он не только переименовывает, что-то там мутит, что рефлектор и ему подобные не могут открыть у себя сборку, просто красная надпись например в рефлекторе появляется. Можно защитить WPF приложение для .NET 4 и прога будет работать после защиты (многие обфускаторы портят эксешники и они не работают), главное тонко настроить для эксешников, dll практически любые можно защищать по полной. Слышал, что этот обфускатор ещё ставит кучу go to в код, что сильно мешает его читабельности (всё это отключается/настраивается). Ну там много что он умеет.
3
18.10.2011, 17:40

Не по теме:

Casper-SC, уже давно существует decryptor (deobfuscator) для reactor'а... его даже в гугле найти можно...

0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
18.10.2011, 18:27
Ну 100% защиты и в Native нету, так что задача сводится к максимальному усложнению жизни вредителям ) -с помощью обфуськаторв,NET Reactor-орв + понавешать подписей и т.п в итоге будет не намного проще разбираться чем в Native дизассемблере.
0
18.10.2011, 21:37

Не по теме:

Цитата Сообщение от SSTREGG Посмотреть сообщение

Не по теме:

Casper-SC, уже давно существует decryptor (deobfuscator) для reactor'а... его даже в гугле найти можно...

Сомневаюсь, что после распаковки будет эксешник в первозданном виде. Скорее всего будет нечитабельный мусор. А вообще можно проверить.

1
215 / 215 / 20
Регистрация: 18.05.2010
Сообщений: 865
19.10.2011, 10:09
Ребята а вы вообще в исходниках чужого кода где порядка 20 модулей разбирались? там где нет коментарий, там где непонятная логика???? думаю разбираться в программе .NET в CIL коде без обфускации само по себе дело сложное, и может получиться что легче написать самому прогу чем взломать защиту.
0
 Аватар для AlexVal
1 / 1 / 0
Регистрация: 18.10.2011
Сообщений: 7
19.10.2011, 10:56  [ТС]
а какие еще нормальные обфускаторы, кроме .NET Reactor есть?
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
19.10.2011, 14:03
Цитата Сообщение от AlexVal Посмотреть сообщение
а какие еще нормальные обфускаторы, кроме .NET Reactor есть?
вагон и маленькая тележка разных
http://www.google.com/search?q=.net+obfuscator
что подразумевается под "нормальные" ?
0
 Аватар для AlexVal
1 / 1 / 0
Регистрация: 18.10.2011
Сообщений: 7
19.10.2011, 14:25  [ТС]
Цитата Сообщение от turbanoff Посмотреть сообщение
вагон и маленькая тележка разных
http://www.google.com/search?q=.net+obfuscator
что подразумевается под "нормальные" ?
Понятно, что обфускаторов вагон, я тоже искал в гугле. Под "нормальными", я поздразумеваю,
качественные, надежные и имеющие дополнительные фишки от декомпиляции, как тот же .Net Reactor. Чем в люди занимающиеся разработкой ПО на C# пользуются. Можно, конечно, перелопатить всю эту гору обускаторов и выбрать, но все-таки хочется ограничить список лучшими.
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
19.10.2011, 18:25
Цитата Сообщение от AlexVal Посмотреть сообщение
Чем в люди занимающиеся разработкой ПО на C# пользуются.
Вот .Net Reactor мой один знакомый и использует для защиты коммерческого софта. Точнее использует фирма, в которой он работает.
0
 Аватар для AlexVal
1 / 1 / 0
Регистрация: 18.10.2011
Сообщений: 7
20.10.2011, 13:16  [ТС]
Спасибо. Значит будем пробовать .Net Reactor, а если не пойдет, буду искать сам.
0
2 / 2 / 1
Регистрация: 15.10.2011
Сообщений: 51
04.11.2011, 22:22
Попробовал? как впечатления от него?
0
Заблокирован
05.11.2011, 17:38
AlexVal, эту тему тему посмотрите, может пригодится.

(в приведенных кодах разберитесь)

Еще поиск в разделе ".NET" по слову "обфускаторы", там в одной из тем супер-модератор SSTREGG дал ссылку на обзор обфускаторов.
0
1 / 1 / 0
Регистрация: 01.11.2011
Сообщений: 4
09.11.2011, 23:18
От модификации защищаются помещением в тот же Native-контейнер (для защиты которого есть уже немало всякого) и доставанием из него во время исполнения (пример).

Если надо обеспечить лицензирование всего этого хозяйства, то контейнер можно защитить электронным клчом. А в ключ вшить нужные ограничения (число запусков, время работы, ограничения на функционал и т.п.).
1
2 / 2 / 1
Регистрация: 15.10.2011
Сообщений: 51
10.11.2011, 18:11
Цитата Сообщение от Ыц Посмотреть сообщение
От модификации защищаются помещением в тот же Native-контейнер (для защиты которого есть уже немало всякого) и доставанием из него во время исполнения (пример).

Если надо обеспечить лицензирование всего этого хозяйства, то контейнер можно защитить электронным клчом. А в ключ вшить нужные ограничения (число запусков, время работы, ограничения на функционал и т.п.).
А можно ли службу windows поместить в такой контейнер?
0
1 / 1 / 0
Регистрация: 01.11.2011
Сообщений: 4
10.11.2011, 23:39
Можно.
Функциональная часть выносится в dll-ку. Та защищается. При установке приложения регистрируется и используется службой.
0
 Аватар для kler2008
6 / 5 / 0
Регистрация: 22.01.2012
Сообщений: 38
29.08.2014, 11:55
К сожалению, нет способа навсегда защитить свой код на С#, дабы сама специфика компиляции проектов на C# такова и ничего с этим не поделать.

Вариант один, делать продаваемые программы, игры только на С++ подобных языках. А на С# - только для себя и своих друзей.
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
29.08.2014, 18:51
Цитата Сообщение от kler2008 Посмотреть сообщение
А на С# - только для себя и своих друзей.
Организация продаёт автоматику, сама же её поключает и в сопровождение ставит свой софт написанный на C#. Кто его украдёт, кто там что сделает? Какой-нибудь Вася домой себе и декомпилирует? Да пускай, жалко что ли. Но вот в коммерческих целях у кого-то врятли получится использовать данный софт. Какие друзья, что за ... .

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

Какие-то свои алгоритмы пишешь на языке, который нельзя так просто декомпилировать и посмотреть исходники. А на шарпе оболочку внешнюю, кнопки там, списки. На сервере WCF сервис с основной логикой. В общем, не паникуй
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.08.2014, 18:51
Помогаю со студенческими работами здесь

Обфускация C# - приложения
Здравия всем зашедшим! Задумал обфусцировать свою программу, но пройтись одним обфускатором - глупая затея, так как расшифровывает всё даже...

Обфускация .Net приложения
Поделитесь опытом, чем защищать .Net приложения ? Я юзаю Eazfuscator.Net assistant Самая главная преимущества -ФрииВарэ, и я сказал бы...

Защита приложения
Давай пользователю в работу приложение возможно ли сделать так чтобы он не видел - дерево таблицы-запросы-формы-отчеты (слева в access) ...

Защита приложения C#
Есть программа - менеджер, которая подгружает С++ длл-ки. Каждая обрабатывает пакет и передает на следующую длл-ку дальше для обработки. ...

Защита приложения
Как поставить приложение пользователю чтобы оно работала только месяц?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru