Здравствуйте.
Интересуюсь разработкой малвари и, на данный момент, криптом.
Есть несколько вопросов на которые хотелось бы услышать ответ от разработчиков и просто опытных людей в этой сфере.
Во первых, хотелось бы для себя разъяснить значения некоторых терминов.
Чем отличаются мутация, пермутация, полиморфизм и метаморфизм? Все эти термины видел не раз на этом форуме, но не особо понимаю какая в них разница.
Видел в контексте Polymorphic Engine, Metamorphic Engine, Permutation Engine, Polymorphic cryptor, и тд
Сейчас для меня эти термины являются синонимами слова "обфускация", что, как я понимаю, неверно. Объясните новичку что к чему.
Во вторых, интересует Ваше мнение по поводу того, какие крипторы более популярны и какие более эффективны: которые морфят нативный(скомпилированный) код или исходный код языка программы? И почему?
Большинство крипторов которые я видел морфят нативный код, но эффективно ли это? Ведь морфленный нативный код зачастую не похож на код скомпилированный компилятором, при анализе такого кода в дизассемблере такой код сразу бросается в глаза и даже неопытный разработчик поймет что код обфусцирован. Таких кодов видел не много, но из тех что видел - это большинство редкоиспользуемых инструкций, частые jmp, запутанная арифметика. Опыта много не имею, но мне кажется и антивирус такой код посчитает обфусцированным, что даст ему повод для детекта, не так ли? Морфинг исходного кода такой проблемы, вроде бы, не имеет, но таких крипторов я почти не видел. Быть может, на то есть причина, о которой я не догадываюсь?
Также хочу узнать, что делают с криптуемым файлом для того, что бы его не детектили антивирусы после декрипта в память?
Ведь после декрипта в память оригинальный файл достаточно просто сдампить, что приведет к быстрому детекту.
Для защиты от этого будет достаточно простого морфинга кода оригинального файла? Какие еще применяются техники для эффективной борьбы с антивирусами?
Надеюсь на Ваш ответ!
Спасибо!
Интересуюсь разработкой малвари и, на данный момент, криптом.
Есть несколько вопросов на которые хотелось бы услышать ответ от разработчиков и просто опытных людей в этой сфере.
Во первых, хотелось бы для себя разъяснить значения некоторых терминов.
Чем отличаются мутация, пермутация, полиморфизм и метаморфизм? Все эти термины видел не раз на этом форуме, но не особо понимаю какая в них разница.
Видел в контексте Polymorphic Engine, Metamorphic Engine, Permutation Engine, Polymorphic cryptor, и тд
Сейчас для меня эти термины являются синонимами слова "обфускация", что, как я понимаю, неверно. Объясните новичку что к чему.
Во вторых, интересует Ваше мнение по поводу того, какие крипторы более популярны и какие более эффективны: которые морфят нативный(скомпилированный) код или исходный код языка программы? И почему?
Большинство крипторов которые я видел морфят нативный код, но эффективно ли это? Ведь морфленный нативный код зачастую не похож на код скомпилированный компилятором, при анализе такого кода в дизассемблере такой код сразу бросается в глаза и даже неопытный разработчик поймет что код обфусцирован. Таких кодов видел не много, но из тех что видел - это большинство редкоиспользуемых инструкций, частые jmp, запутанная арифметика. Опыта много не имею, но мне кажется и антивирус такой код посчитает обфусцированным, что даст ему повод для детекта, не так ли? Морфинг исходного кода такой проблемы, вроде бы, не имеет, но таких крипторов я почти не видел. Быть может, на то есть причина, о которой я не догадываюсь?
Также хочу узнать, что делают с криптуемым файлом для того, что бы его не детектили антивирусы после декрипта в память?
Ведь после декрипта в память оригинальный файл достаточно просто сдампить, что приведет к быстрому детекту.
Для защиты от этого будет достаточно простого морфинга кода оригинального файла? Какие еще применяются техники для эффективной борьбы с антивирусами?
Надеюсь на Ваш ответ!
Спасибо!