Анализ атомов AV

27 фев 2017

Анализ атомов1 AVПоказан пример анализа атомов в AV. В данном тесте не используется код самих AV, а только результат тестирования в виде сигнатурного детекта. В следствие этого за один тест может быть проверено одно булево условие. Как было сказано ранее, в VM код API содержит атомы, которые служат шлюзами VM. Через них управление получает VM и эмулирует API, которые не могут быть выполнены без использования среды VM. Простые API в свою очередь атомов не содержат. Для тестов используется...
Читать далее
Лайков +3 Комментариев3 Просмотров6.240

Обнаружение VM, навороченные методы (vx)

25 фев 2017

Обнаружение VM, навороченные методы (vx) https://yadi.sk/d/CQWCxYvT39FFtx Защита потока данных (Data Flow Guard) Защита потока управления (CFG) или данных (DFG) – методы обнаружения нарушения целостности кода или данных, обнаружение чужеродных объектов. Нарушение целостности кода — появление в нём посторонних инструкций, код может сам изменяться или вызывать чужеродный код косвенным путём — посредством изменения памяти, например указателей в массивах методов или адресов возврата на стеке. В...
Читать далее
Лайков +3 Комментариев6 Просмотров8.653

Способы обнаружения атомов

25 фев 2017

Способы обнаружения атомов Ранее описан способ блокировки исполнения атома — изоляция выборки данных (DF) через блокировку памяти. При обнаружении DF адресация изменяется, но так как в атоме DF не существует, он не может получить доступ к данным. Далее рассмотрены методы не блокировки, а обнаружения атомов. Для обнаружения атома необходимо в начале получить событие DF. Далее можно выполнить валидацию DFG или иные манипуляции. Базовые способы получения DF: Раскодировка адресов для каждой...
Читать далее
Лайков +4 Комментариев1 Просмотров6.625

Преобразование кода

24 окт 2011

Для чего обычно используется преобразование кода? Для сокрытия важных частей алгоритма, для затруднения взлома и сигнатурного анализа. Глупо было бы думать, что этим трюком пользуются только легальные корпорации и фирмы. Разработчики вредоносного программного обеспечения прочно забронировали себе места в топе подобных достижений. Только используются они для сокрытия и затруднения анализа вирусов.
Читать далее
Лайков +1 Комментариев0 Просмотров11.544

Статическое детектирование файлов: Часть 1 - Структура и данные

16 окт 2011

Можно долго умничать как о возможности создания недетектируемого вируса, так и о детекте абсолютно всех файлов, но известно точно: существуют эффективные (и не очень) методы обнаружения малвари, и не менее эффективные (а то и больше) техники антидетекта. Вот об этом мы и поговорим.
Читать далее
Лайков 0 Комментариев0 Просмотров12.091

Avira – heuristic disasm

15 авг 2011

Эта статья будет посвящена самому неадекватному антивирусу – авире. Мне всегда было интересно, как же она умудряется отличать вирус от невируса, какие критерии она использует. В этой статье я покажу, как нужно ее реверсить. Некоторые моменты будут озвучены просто как факт, я не буду рассказывать, как я к ним пришел – я просто этого не помню. Также хочу заранее сказать, что я не реверсер, поэтому многие вещи, возможно, я делал не совсем оптимально.
Читать далее
Лайков 0 Комментариев0 Просмотров2.904

Практика. Синтез вируса.

28 сен 2005

Опишу для вас создание самого простого вируса, ничего серьезного и злобного - все в пределах нормы. Если вам в начале будет трудно понятен материал этой статьи, и вы не знаете многих терминов – не отчаивайтесь, найдите о них исчерпывающую информацию в Интернете и вам станет понятно, что эти термины – база и без них далее изучать этот материал просто бессмысленно. Но все же, я постараюсь кратко и четко дать им определения.
Читать далее
Лайков 0 Комментариев0 Просмотров2.133

От зеленого к красному: Глава 3: Программирование в Shell-код стиле. Важные техники системного программирования: SEH, VEH и API Hooking. Отключение Windows File Protection.

21 авг 2005

Этот раздел является своеобразным обобщением первых двух глав. Прочтя его, Вы сможете уже без особых трудностей писать простые Win32-вирусы. Код в shell-код стиле или как он еще называется – базово-независимый код требует определенных условий при его написании. Основное условие - чтобы код не зависел от адреса загрузки его в адресное пространство процесса-жертвы и от структур данных загрузчика.
Читать далее
Лайков 0 Комментариев0 Просмотров42.398