![]() |
Низкоуровневое шифрование самописных вирей
Низкоуровневое шифрование самописных вирей.
Благодаря этому разделу (из за того, что будущие крякеры учатся своему мастерству) мы значительно(а может и не слишком значительно) осложняем(хотя если они читают форум то может и облегчаем) работу разработчиков программных продуктов, но я думаю, стоит немного подумать и о разработчиках антивирусного ПО ;) . Теория: Антивирусы, проверяя большие объемы файлов, ищут в файлах заранее подготовленные программистами последовательности байт. Значит для обхода этой процедуры, нужно сделать тело вируса уникальным, а всё остальное наиболее похожим на остальные программы, именно этим я и предлагаю заняться в этой теме. Чтоб не начинать с пустого места, я приготовил несколько “программок”, скомпилированных с одного и того же исходника (без внесения в него каких либо изменений), с интервалом времени примерно в 10 сек. И выполняющего следственно одну и туже функцию, вывод “MessageBox”. Файлы были автоматически сгенерированы, и зашифрованы ассемблером(с использованием макросом), причём тело программы было зашифровано методом xor(“исключающее или”), а потом тело расшифровывателя, было превращено в код, который при запуске восстановит его на своё же место и передаст ему управление, что без проблем просматривается в любом отладчике. При всём этом, пароль к xor шифровальщику и последовательность команд востанавливателя кода, зависят от текущего времени компиляции. В восстановителе кода участвуют несколько команд: Код:
xor byte[pos], sume byteЧего я жру: Предложения способов автоматического выделения данной программы среди остальных программ, не требующих много ресурсов, и отладки программы, а также способов обхода этих способов. И ещё, недолжно использоваться прямых адресов, для возможности применения его в DLL модулях без таблицы исправления адресов. ИМХО будущее за DLL вирусами. Все файлы сжаты раром, сумма размеров 6 файлов 9,2 Кб, в архиве 4 Кб <скачать> P.S. Думаю тема будет долгая. [offtop] В результате мы разработаем основу для самых опастных не находимых автоматическисаморегенери руемых вирусов, которые в будущем захватят мир, ктулху и феникгс отдыхают. Хотя помоему я немножко приувеличил :-) [/offtop] |
ну дык это ведь неново - банальный СамоМодифицирующийсяКод, при4ем практи4ески все авери давно палят декриптор, расшифровующий код вируса таким методом
|
Цитата:
Лично я не пойму как они его палят(ведь там только пара байт остаёться одинакова), может посветишь? |
ну раз так - давай обсуждать =)
нас4ет как палят: 1. поскольку в слу4ае СМК код сохраняется в бинарнике пошифрованым (неважно каким алгоритмом), то сигнатурный анализатор (базы) аверя сразу не дадут никакого результата 2. стало быть, палит вирус эвристи4еский анализатор с заданым уровнем достоверности. например: если есть пошифрованое тело, то эвристик заметит неладное если на старте проги идут не стандартные GetModuleHandle и т.д. апи, а сам декриптор, который в цикле долго и нудно 4то-то будет расшифровывать - это первое. второе: 4аще всего тот же декриптор выносят в другую секцию файла, либо осуществляю EPO-инфекцию (вызов вредоносного кода подменой, например, вызова какой-либо апи функции, подменив ее в импорте). вообще вариантов ку4а и по4итать о подобных вещах монжо в любой книге по вирусописанию, форумам по vx\rat, васме (рукомендую), архивах зомбы (суперрекомендую;) |
Цитата:
А вообще его можно обнаружить, таким регулярным выражением Код:
/\xE8.\0{3}.{16,32}\x5D(\x80[\x75\x4D\x45\x65\x4D\x6D]..|\xC6\x45..|\xF6\x55.){8,}/Цитата:
Цитата:
Цитата:
|
>>Ну, если зайти в папку system32 и посмотреть, в >>начале модулей DLL ;), очень редко встречается >>вызов API
дык на дллмейн смотрят, либо трейсером на у4астки выполняемые в самой либе >>А вообще его можно обнаружить, таким >>регулярным выражением какие РВ? 4ет первый раз слышу. и за4ем они, если всеравно будет код их обрабатывающий? |
Цитата:
Код:
sub findvir(){Цитата:
Но это конечно слишком, поетому стоит подумать, что именно надо, и какким способом это реализовать, придумать своё! Кстати, ссылочку не подкинешь? Цитата:
|
>>поэтому я и ищу что-нибудь, чем можно лучше защитить этот код.
имено защитить? и какой именно код? >>Шифрование используют не только в вирусах, но и при защите прог, требующих регистрацию, от крякеров . эт понятно, на то она и криптограйия 4тобы защищать все на основе теории сложности >>А где эти архивы найти можно? где-то на форуме кряклаба линк на этой недели на некоторые статьи пробегал, а вообще по4итай A29, фряк |
Цитата:
|
Цитата:
Как то нужно было срочно криптануть файл, ничего подходящего под рукой не было, в итоге поступил так: запаковал файл каким-то стандартным упаковщиком с защитой паролем + написал простой скриптик который водил пароль в форму и жал ОК. Заняло это 3 минуты, а защита практически неуязвимая. Естественно, только в том случае, если антивирус не запущен на постоянную проверку. |
| Время: 15:46 |