[защита] .NET-приложений (C#)
От: Alexey Neorov Россия  
Дата: 27.03.10 07:57
Оценка:
Не хотелось бы смешивать текущую тему с этой
Автор: IntDex
Дата: 24.03.10
, т.к. хотелось бы обсудить не что-то абстрактное, а именно зашиту под NET. Ко мне как-то обратился человек, и сказал, что взломал мою программу за 10 минут. Я удивился, стал сам разбираться. И вправду, поколдовав полтора часа, я понял как это просто (ildasm -> notepad -> ilasm).

Такое явно не годится. Нашёл в инете netObf, бесплатную версию обфускатора. Упаковал прогу. Ничего непонятно в ildasm. Нашёл в инете деобфускатор, который приводит имена в более читаемые. Прогнал через деобфускатор. Далее notepad -> ilasm. И прога опять сломана.

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

Какие еще есть варианты? Или может я что-то упустил?
Заранее спасибо за любые советы.
Re: [защита] .NET-приложений (C#)
От: Огнеплюх  
Дата: 27.03.10 08:15
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Какие еще есть варианты? Или может я что-то упустил?


А чем это вариант отличается от старинного exe->asm->notepad->exe ?
Re[2]: [защита] .NET-приложений (C#)
От: Alexey Neorov Россия  
Дата: 27.03.10 08:50
Оценка:
Здравствуйте, Огнеплюх, Вы писали:

О>А чем это вариант отличается от старинного exe->asm->notepad->exe ?


нельзя просто так сделать "exe->asm->notepad->exe", хотя бы за счёт "stolen bytes" (украденных инструкций), которые виртуализируются. Нужно потратить немало времени, чтобы распаковать такой exe. А тут в C# полностью исходный код на руках.
Re: [защита] .NET-приложений (C#)
От: MikePetrichenko Беларусь www.btframework.com
Дата: 27.03.10 09:12
Оценка: -1 :)
Здравствуйте, Alexey Neorov, Вы писали:

AN>Какие еще есть варианты? Или может я что-то упустил?


Все именно так и есть, для нативного .NET приложения.

AN>Заранее спасибо за любые советы.


Пишите на С++/CLR (mixed assembly) (если уж так необходим .NET). А еще лучше — нативные языки.
Bluetooth, IrDA, WiFi and Serial Ports SDK for .NET, ActiveX, C++ and VCL
Spektrum Telemetry Log File Viewer
Re: [защита] .NET-приложений (C#)
От: ov  
Дата: 27.03.10 09:42
Оценка: +2
AN>Какие еще есть варианты? Или может я что-то упустил?
если хочется надежности, то вариант, по большому счету, один: переписывай какой-то важный кусок программы в натив, выноси в отдельную длл-ку и защищай нативным протектором.
а под дотнет обычно дальше обфускации не идут, а это, как ты сам понял, не спасает.
Re: [защита] .NET-приложений (C#)
От: sembel Fast Version Control System
Дата: 27.03.10 09:48
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Какие еще есть варианты? Или может я что-то упустил?

AN>Заранее спасибо за любые советы.


вот "я спрятал" дот нет программу за одну минутку.

http://files.rsdn.ru/37574/dot.net.exe
Re: [защита] .NET-приложений (C#)
От: Sheridan Россия  
Дата: 27.03.10 11:05
Оценка: :))) :))
Приветствую, Alexey Neorov, вы писали:

AN> Какие еще есть варианты? Или может я что-то упустил?

AN> Заранее спасибо за любые советы.

Открыть исходники, опубликовать под gpl. Взлом станет бессмысленным.
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re: [защита] .NET-приложений (C#)
От: CRT  
Дата: 27.03.10 11:16
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Какие еще есть варианты? Или может я что-то упустил?

AN>Заранее спасибо за любые советы.

Есть протекторы для Net Framework
например eziriz.com, xenocode.com и др.

насколько хорошо они защищают, сказать не могу, не изучал этот вопрос
Re[2]: [защита] .NET-приложений (C#)
От: MikePetrichenko Беларусь www.btframework.com
Дата: 27.03.10 11:23
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, Alexey Neorov, вы писали:


AN>> Какие еще есть варианты? Или может я что-то упустил?

AN>> Заранее спасибо за любые советы.

S>Открыть исходники, опубликовать под gpl. Взлом станет бессмысленным.


Равно, как и разработка подобного OpenSource GPL продукта.
Bluetooth, IrDA, WiFi and Serial Ports SDK for .NET, ActiveX, C++ and VCL
Spektrum Telemetry Log File Viewer
Re: [защита] .NET-приложений (C#)
От: 0K Ниоткуда  
Дата: 27.03.10 11:45
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Какие еще есть варианты? Или может я что-то упустил?


Ничего не упустил. Нужно чтобы кода было много. И добавить еще больше, пусть используемого на 90%, но без него нельзя. По всему коду втыкиваются защитные фишки. Все разные. С разной логикой. Должны выбрасывать исключение по хитрой логике, не всегда.

Таких фишек в одном проекте должно быть штук 150. Желательно разныех. Итого, после первых 20-50 штук у взломщика пропадет кайф их искать, нафиг нужно. У меня подобное было.
Re: [защита] .NET-приложений (C#)
От: Tee Moore  
Дата: 27.03.10 11:48
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Заранее спасибо за любые советы.

Нативный язык тоже не гарантия от взлома. Тут скорее помогут эзотерические языки программирования. Например Malbolge
Про виртуальную машину хороший человек уже все разжевал тут.
Удачи!
Re[3]: [защита] .NET-приложений (C#)
От: Огнеплюх  
Дата: 27.03.10 12:02
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Здравствуйте, Огнеплюх, Вы писали:


О>>А чем это вариант отличается от старинного exe->asm->notepad->exe ?


AN>нельзя просто так сделать "exe->asm->notepad->exe", хотя бы за счёт "stolen bytes" (украденных инструкций), которые виртуализируются. Нужно потратить немало времени, чтобы распаковать такой exe. А тут в C# полностью исходный код на руках.


А что мешает сборку обернуть в exe-файл да еще и с шифрованием
Re[2]: [защита] .NET-приложений (C#)
От: squid  
Дата: 27.03.10 13:11
Оценка: +2
Здравствуйте, Sheridan, Вы писали:

S>Открыть исходники, опубликовать под gpl. Взлом станет бессмысленным.


ты зачем в этот форум ходишь? запретный плод сладок? или наоборот, пропаганда?
Re: [защита] .NET-приложений (C#)
От: A-bracket  
Дата: 27.03.10 13:37
Оценка:
Здесь на форуме утверждалось что mono может компилировать .net приложение в нативный код.
Но я это не проверял. ( http://www.mono-project.com/AOT )
Re[3]: [защита] .NET-приложений (C#)
От: Sheridan Россия  
Дата: 27.03.10 13:48
Оценка:
Приветствую, squid, вы писали:

s> ты зачем в этот форум ходишь? запретный плод сладок? или наоборот, пропаганда?


Второе
avalon 1.0rc3 rev 306, zlib 1.2.3 (17.12.2009 01:06:14 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[2]: [защита] .NET-приложений (C#)
От: Alexey Neorov Россия  
Дата: 27.03.10 16:07
Оценка:
Здравствуйте, A-bracket, Вы писали:

AB>Здесь на форуме утверждалось что mono может компилировать .net приложение в нативный код.

AB>Но я это не проверял. ( http://www.mono-project.com/AOT )

Где-то проскакивала инфа (подтвердить как-то не могу), что нэтивное делается под конкретную систему, и на другом компе просто не запустится.
Re[4]: [защита] .NET-приложений (C#)
От: Alexey Neorov Россия  
Дата: 27.03.10 16:15
Оценка:
Здравствуйте, Огнеплюх, Вы писали:

О>А что мешает сборку обернуть в exe-файл да еще и с шифрованием


Как?
Re[2]: [защита] .NET-приложений (C#)
От: Alexey Neorov Россия  
Дата: 27.03.10 16:17
Оценка:
Здравствуйте, sembel, Вы писали:

S>вот "я спрятал" дот нет программу за одну минутку.


S>http://files.rsdn.ru/37574/dot.net.exe


Не запускал. В IDA вроде ничего особенного не нашёл. nmake?
Re[3]: [защита] .NET-приложений (C#)
От: sembel Fast Version Control System
Дата: 27.03.10 16:30
Оценка:
Здравствуйте, Alexey Neorov, Вы писали:

AN>Не запускал. В IDA вроде ничего особенного не нашёл. nmake?


Там hello world приложение, которое защищено дот.нет реактором.
Если написать определенное слово, то выскочит алерт.
Re: [защита] .NET-приложений (C#)
От: ARMSoft Украина  
Дата: 27.03.10 20:44
Оценка:
AN>Какие еще есть варианты? Или может я что-то упустил?
AN>Заранее спасибо за любые советы.

1. сколько не запутывай, это усложнит кряк на пару часов, не более.
2. чтобы не было ildasm->ilasm кури control-flow obfuscation в обфускаторах.
3. хочешь все в одном флаконе за денги — юзай платные обфускаторы xenocode, smart assembly. Дорого? Остальные, как правило, УГ.
4. хочешь прокачать скилы (читай: поиметь гемор) в этом деле и сам все контролировать — делай виртуальную машину. Сам хочу, но пока под .НЕТ не видел.
5. переходи на нейтив.
-------------------------
My professional profile
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.