• XSS.stack #1 – первый литературный журнал от юзеров форума

Защита приложения на C# (winform)

Пожалуйста, обратите внимание, что пользователь заблокирован
так-же, чем мне зашифровывать? если я использую C#
AES, RSA встроены во фреймворк с бородатых времен.

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

Естественно так как это не шелкод - они будут на диске
Шарпы же - один вызов Assembly.Load и готово.

RET, это ты?
Кто там недавно предлагал нещадно банить всяческих алкашей, наркоманов и псих-больных?)
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
AES, RSA встроены во фреймворк с бородатых времен.


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


Шарпы же - один вызов Assembly.Load и готово.


Кто там недавно предлагал нещадно банить всяческих алкашей, наркоманов и псих-больных?) Подчерк очень похож на нашего общего друга, да))
Согласен что расшифровка должна проходить по событиям например отладочным причем с перешифровкой на лету как к примеру у старой доброй армы - это легко ине очень долго реализовать на коленке.
EP: Assembly.Load, DllMain, main - какая разница тут?
Есть технологии сокрытия EP, плюшки с TLS и много чего. Единственно в .NET приложениях есть своя специфика при загрузке из памяти.
Последнюю твою фразу не понял.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Понятно, осталось узнать методы сжатия/разжатия и шифрации/дешифрации
На счет схатия /расжатия, что бы не тащить с собой хвост можно использовать встроенную RtlCompress/DecompressBuffer, а если еще ее пропатчить перед вызовом - то вообще шик.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
RtlCompress/DecompressBuffer
В дотнетах встроен GZIP и Deflate, ими куда удобнее пользоваться, да и меньше подозрений вызовет.

Последнюю твою фразу не понял
Не бери в голову, это шутка. Но советую тебе на всякий случай контакт ТГ сменить, а то палишься аверам и ментам, есть связь со старым ником на васме.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Не бери в голову, это шутка. Но советую тебе на всякий случай контакт ТГ сменить, а то палишься аверам и ментам, есть связь со старым ником на васме.
Хм, а что мне менять? Они давно параллельно подключились ;)
Ничего против Родины я не делаю, а наоборот даже.
Вот недавно заддосил пендосский один сайт и что?
Имеешь что то сказать - пиши в ЛС.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
В дотнетах встроен GZIP и Deflate, ими куда удобнее пользоваться, да и меньше подозрений вызовет.
+
токо увеличивает размер файла не слабо.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
токо увеличивает размер файла не слабо
Шта? Зависит от энтропии данных, но как бы и LZNT зависит от энтропии данных, в любом случае по размеру будет примерно так же. GZIP - это по сути Deflate c заголовками, так что, если желаешь байтов 10 съеэкономить, то Deflate будет лучше.

ЗЫ: можно скрыться от аверов и ментов, но нельзя обмануть красавчиков дудуктивов (меня и Quake3).

1618389282_bishounen-tanteidan.jpg
 
Пожалуйста, обратите внимание, что пользователь заблокирован
>ЗЫ: можно скрыться от аверов и ментов, но нельзя обмануть красавчиков дудуктивов (меня и Quake3).
А нам как бы пох
>Где сравнительный анализ сжатия.
PS: любая упаковка данных зависит от энтропии сжимаемых данных - учите матчасть, товарисч Rel, все давно знаем, все давно о тебе знаем, все понимаем, возможно скоро принимаем ;)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Где сравнительный анализ сжатия.
Так сделай, какая проблема? Deflate тебе может любой архиватор сделать в составе ZIP-файла, если не хочешь в дотнеты влезать. Потом откроешь 7zip'ом или WinRAR'ом и в таблице будет указан сжатый размер и исходный размер, сжатый сравни со своим LZNT. У меня обычный экзешник на дотнете с совершенно обычной энтропией секции .text, равной 5.78, Deflate сжал в 2.42 раза. Дед, пей таблетки, не нужно чуши говорить.
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Даже если и делать это - то каким способом? Я не понимаю алгоритма работы. Моё приложение скачивает длл библиотеки с сайта и внедряет их в процесс интегрированным в проект модулем, мне нужно скрыть все следы скачки и использования файла и строк конструктора, заранее спасибо
Ты определись чего ты хочешь
Ты то код защищаешь от реверса, то уже какие-то evasion-техники пошли
 
Пожалуйста, обратите внимание, что пользователь заблокирован
COMPRESSION_FORMAT_XPRESS_HUFF
COMPRESSION_ENGINE_MAXIMUM


Du Choc Des Opinions Jaillit La Veritё - в спорах рождается истина.
Зачем мне предлагать что то писать, изобретать велосипеды или давать куски сорцев, если я автор крипторов.
Так Вот докажите. Что Вызов натива а не в хз какой либы Deflate алго дотнета не займет меньше места, времени выполнения (RtlGetCompressionWorkSpaceSize, RtlCompressBuffer) и будет меньше сжимать?
И не забывайте что у ТС ставится вопрос о защите. И как я писал что это нужно делать частично - для этого есть RtlDecompressFragment
Причем заметьте что ТС не имел ввиду малварь и палево.
Раз уж такую полемику развели - будь добр кто нибудь из "умняшек" 2 сэмпла на .Net с сорцами c учетом встороенных либ и натива, с анализом времени выполнения и коэф. сжатия
Я смотрю тут дох много умных людей, но как бы только языком трепать, как бабки не старые ;)
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
если я автор крипторов
Ты дед, который забыл выпить таблетки. Который еще и про дотнеты не знает ничего.

Раз уж такую полемику развели - будь добр кто нибудь из "умняшек" 2 сэмпла на .Net с сорцами c учетом встороенных либ и натива, с анализом времени выполнения и коэф. сжатия
Бремя доказательства лежит на том, кто доказывает, а не на том, кто отрицает. Читай римское право. Это ты пытаешься доказать, что вызов недокументированных апишек из дотнета чем то лучше, чем встроенный Deflate. Да и после твоего высказывания о том, что Deflate увеличит размер исполняемого файла, что либо доказывать, считается бессмысленным. Я чуть лоб фейспалмом не пробил, читая твои посты тут. Не забывай пить таблетки, и поменьше бреда неси на форуме. Никому ты нахер не нужон, чтобы за тобой бегать и что-то тебе доказывать.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Ну кому как. Но ты же типа "психолог". А таблетки и прочую херь я не пью, к твоему наверняка сожалению.
 
Ты дед, который забыл выпить таблетки. Который еще и про дотнеты не знает ничего.
Началось, деды бушуют :) ... Пишите на ассемблере и не нужно никаких дотнетов. В моём понимании дотнет подходит только для веб-сервисов. Зачем пихать его в малварь?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
В моём понимании дотнет подходит только для веб-сервисов. Зачем пихать его в малварь?
Почему не подходит? В некоторых аспектах даже лучше подходит, чем нативный код. Для шкафчиков не подходит разве что.

Началось, деды бушуют
В махач дедов лучше не встревать.
 
Почему не подходит? В некоторых аспектах даже лучше подходит, чем нативный код. Для шкафчиков не подходит разве что.
В чем его преимущество? Зачем использовать костыли от негрософта, если можно писать нативный код?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
В чем его преимущество? Зачем использовать костыли от негрософта, если можно писать нативный код?
Ну, в первую очередь надо понимать, что ты и так и так используешь костыли от негрософта. Теперь по поводу дотнетов, я назову несколько преимуществ, которые первыми приходят в голову. Во-первых, с MSIL куда удобнее и проще работать, чем с нативным кодом. Поэтому писать обфускаторы и морферы куда проще, при этом можно делать довольно забавные вещи. Во-вторых, MSIL, поскольку нативным кодом не является, он может находится на страницах виртуальной памяти с R или RW правами, вместо RX для нативного кода. Более того, когда дотнет сборка грузится из памяти через Assembly.Load, она грузится на RW страницы, и если вовремя отрублен ETW, то они не будут отображаться в списке загруженных библиотек. В-третьих, метаданные дотнетов, которые становятся в процессе исполнения не нужны (например, код, который уже прощел JIT-компилятор, или данные, которые были закешированы в сборщике мусора), можно затереть в памяти, тем самым сделав антидамп. В четвертых, шарпы имеют все возможности, которые предлагает нативный код, но с удобством сборщика мусора и кучи функционала дотнет фреймворка. И да, на семерке предустановлен фреймворк 2.0, но десятке 4.0, так что ничего доставлять не нужно.
 
Ну, в первую очередь надо понимать, что ты и так и так используешь костыли от негрософта. Теперь по поводу дотнетов, я назову несколько преимуществ, которые первыми приходят в голову. Во-первых, с MSIL куда удобнее и проще работать, чем с нативным кодом. Поэтому писать обфускаторы и морферы куда проще, при этом можно делать довольно забавные вещи. Во-вторых, MSIL, поскольку нативным кодом не является, он может находится на страницах виртуальной памяти с R или RW правами, вместо RX для нативного кода. Более того, когда дотнет сборка грузится из памяти через Assembly.Load, она грузится на RW страницы, и если вовремя отрублен ETW, то они не будут отображаться в списке загруженных библиотек. В-третьих, метаданные дотнетов, которые становятся в процессе исполнения не нужны (например, код, который уже прощел JIT-компилятор, или данные, которые были закешированы в сборщике мусора), можно затереть в памяти, тем самым сделав антидамп. В четвертых, шарпы имеют все возможности, которые предлагает нативный код, но с удобством сборщика мусора и кучи функционала дотнет фреймворка. И да, на семерке предустановлен фреймворк 2.0, но десятке 4.0, так что ничего доставлять не нужно.
Может я уже старый, но для меня это излишества. По мне так все что работает под интерпретатором это от лукавого. Я привык к ассемблеру и Си, тут все понятно и просто.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх