не узнали исходный код программ: Kaspersky, McAfee и т д?
Каспер написан на с++. Только gui на шарпе. И gui спокойно декомпилится
допустим gui на c#, но ведь ядро тоже пишется на том же c#, или там какая-то обёртка? Может функционал на c++ написан, которые находятся на серверах, а c# участвует как обёртка этого api? То есть даже этот код пользователи могут узнать у Касперского?
Что-то мне так и не верится, что люди могут запросто посмотреть исходный код WPF приложения, я уверен, что некоторые из программ microsoft написаны на этом фреймворке, но ведь их программы никто не декомпилировал🤔 Проконсультируйте меня пожалуйста, а то для меня это самый назойливый вопрос, на который я с трудом не могу найти ответ. К примеру крупная компания, решила разрабатывать ПО и использовать в качестве фреймворка для GUI - WPF, они его разработали, это ПО взаимодействует с сервером и весь код, которые они писали все эти пол года, просто возьмут и декомпилируют, какой тогда вообще смысл?
вот представь, ты делал, делал WinRAR, а потом его взяли и скачали с торрентов, какой тогда вообще смысл?
Какая конкретная проблема вообще?
Никакого ядра на c# не пишется, c++ находится у клиента, а не на серверах. Как там интероп работает написать не могу. Но там есть самописный компилятор c++ в c# на llvm чтоб можно было из шарпов плюсовыц код дергать
Многие проги Майков написаны на uwp и c++, так что декомпилить их не так казуально, как шарповые)
Нельзя просто взять и декомпилировать. Ты потом будешь вычищать кучу вещей чтобы все работало. Это все будет поделие крайне низкого пошиба. Минимум три месяца будут приводить это все дело в порядок и это при очень дотошном подходе. За это время выходят новые доработки. И техник инкрементальной декомпиляция еще в открытом доступе нет
задача декомпиляции обычно в том чтобы найти место где пропатчить пару IL-инструкций
ну и ресурсы подменить если уж так
Если конечно там нет проверок подписи на сборках
с плюсами кому сильно надо возьмут идапро и так же залезут
Ну снимишь и ничего не загрузится...
Ну да, но таких уже сильно меньше. Короче хз, битва жёлтого с коричневым
чуть больше усилий, но всё загрузица
такие, кому надо, уже свой антивирус написали
если разве что каким то образом у тебя только подписанные сборки могут на машине исполнятся. а если все используемые сборки без подписи в full trust то кто помешает.
иии, тут мы ищем второе место которое надо пропатчить
с такими запросами вам Denuvo нужен
Но всё же, допустим я написал интерфейс на xaml, написал ядро, которое делает запросы на сервер, сервер же отдаёт данные и отображает в интерфейсе, всё же, этот код, который участвует, как посредник между интерфейсом и серверным api, могут увидеть, верно? В этом случае получается, если я захочу это защитить, то придётся использовать что-то вроде PInvoke, который и будет посредником между c# и c++, и всю логику писать на плюсах, верно?
допустим кидаю exe программу и оно запросто декомпилируется(первый скрин), а если посмотреть на чужие программы, то кода там нет(второй скрин), как они этого добиваются?
не пишут на дотнете
IL все равно останется
Это не рабочий продукт. примерно понять что происходит ты можешь, найти точку где идет проверка на "лицензию" ты можешь. но этот "исходный" код на более менее большом объеме не будет рекомпилироваться обязательно что-то да отвалится при компиляции. починить что отвалится (включая потенциальные логические бомбы) я не думаю что выйдет быстро.
ИСХОДНЫЕ коды не останутся
но всё же, хотелось бы добиться такого результата, как на втором скрине или этого невозможно на c#
Всё возможно, вопрос времени, я с месяц занимался вопросом защиты и в целом обфускация для почти всего нормально написанного корп софта - ну, окей решение.
Обсуждают сегодня