Войти или зарегистрироваться
WASM
Главная
Публикации
>
Анализ атомов AV
27 фев 2017
Анализ атомов1 AVПоказан пример анализа атомов в AV. В данном тесте не используется код самих AV, а только результат тестирования в виде сигнатурного детекта. В следствие этого за один тест может быть проверено одно булево условие. Как было сказано ранее, в VM код API содержит атомы, которые служат шлюзами VM. Через них управление получает VM и эмулирует API, которые не могут быть выполнены без использования среды VM. Простые API в свою очередь атомов не содержат. Для тестов используется...
Читать далее
+3
3
6.274
Оптимизация для процессоров семейства Pentium (часть 3)
25 фев 2017
Чтобы подсчитать количество прочитываемых регистров, вам нужно включить все регистры, которые считываются инструкцией. В это число входят все целочисленные регистры, флаговые регистры, указатель на стек, регистры плавающей запятой и регистры MMX. Регистр XMM идет за два, кроме тех случаев, когда используется только его часть, например в ADDSS и MOVHLPS. Сегментные регистр и указатель на инструкцию не учитываются. Например в 'SETZ AL' вы считаете флаговый регистр, но не AL. В 'ADD EBX, ECX'...
Читать далее
+3
0
3.413
Оптимизация для процессоров семейства Pentium (часть 2)
25 фев 2017
10.2 Несовершенное спаривание Бывают ситуации, когда две спаривающиеся инструкции не будут выполняться одновременно или будут частично рассинхронизированы во времени. Пока обе инструкции не выполняться (каждая в своем конвейере) ни одна другая инструкция не начнет выполняться. Несовершенное спаривание возникает в следующих случаях: Если вторая инструкция приводит к задержке AGU (глава 9). Две инструкции не могут обращаться к одному и тому двойному слову в памяти одновременно: MOV AL,...
Читать далее
+2
0
3.441
Обнаружение VM, навороченные методы (vx)
25 фев 2017
Обнаружение VM, навороченные методы (vx) https://yadi.sk/d/CQWCxYvT39FFtx Защита потока данных (Data Flow Guard) Защита потока управления (CFG) или данных (DFG) – методы обнаружения нарушения целостности кода или данных, обнаружение чужеродных объектов. Нарушение целостности кода — появление в нём посторонних инструкций, код может сам изменяться или вызывать чужеродный код косвенным путём — посредством изменения памяти, например указателей в массивах методов или адресов возврата на стеке. В...
Читать далее
+3
6
8.681
Способы обнаружения атомов
25 фев 2017
Способы обнаружения атомов Ранее описан способ блокировки исполнения атома — изоляция выборки данных (DF) через блокировку памяти. При обнаружении DF адресация изменяется, но так как в атоме DF не существует, он не может получить доступ к данным. Далее рассмотрены методы не блокировки, а обнаружения атомов. Для обнаружения атома необходимо в начале получить событие DF. Далее можно выполнить валидацию DFG или иные манипуляции. Базовые способы получения DF: Раскодировка адресов для каждой...
Читать далее
+4
1
6.657
Оптимизация для процессоров семейства Pentium (часть 1)
25 фев 2017
Оптимизация для процессоров семейства Pentium — Архив WASM.RU Содержание Введение Литература Вызов ассемблерных функций из языка высокого уровня Отладка Модель памяти Выравнивание Кэш Исполнение кода в первый раз Задержка генерации адреса Спаривание целочисленных инструкций (PPlain и PMMX) Разбивка сложных инструкций на более простые (PPlain и PMMX) Префиксы (PPlain и PMMX) Обзор конвейера PPro, PII и PIII Раскодировка инструкций (PPro, PII и PIII) Доставка инструкций (PPro, PII и PIII)...
Читать далее
+3
0
4.111
Путешествие из Kernel32 в HAL
25 фев 2017
Оригинал статьи http://www.debasish.in/2014/02/reversing-tiny-built-in-windows-kernel.html Путешествие из Kernel32 в HAL В этом посте я собираюсь изучить ядро Wiindows путем небольшого реверса встроенного в ядро модуля. Если вы когда-нибудь разрабатывали ядерный драйвер (модуль), это будет очень просто для понимания. Если вы не знакомы с тем, как работают драйвера, то на Codeproject.com есть немного хороших ресурсов, чтобы начать. Но прежде чем мы сможем начать реверсинг основного...
Читать далее
+10
2
8.301
Введение в реверсинг с нуля используя IDA PRO. Часть 4
20 фев 2017
Мы продолжаем рассматривать инструкции обмена данными в IDA. XCHG A, B Эта инструкция обменивает значение A со значением B, давайте рассмотрим пример. [ATTACH] В файле VEVIEWER нет такой инструкции, поэтому я загружаю СRACKME.EXE Cruehead, и меняю инструкцию по адресу 0x4013D8. Я помещаю курсор на строку адреса и перехожу в меню EDIT->PATCH PROGRAM->ASSEMBLE. [ATTACH] Мы видим, что функция была повреждена, так как я работаю сейчас с ней. [ATTACH] Мы уже видели, что, если инструкция...
Читать далее
+17
10
25.935
Показано элементов:
8
из 8.
Показать игнорируемое содержимое
Страница 19 из 88
< Назад
1
←
17
18
19
20
21
→
88
Вперёд >
Ваше имя или e-mail:
У Вас уже есть учётная запись?
Нет, зарегистрироваться сейчас.
Да, мой пароль:
Забыли пароль?
Запомнить меня
WASM
Главная
Публикации
>
Главная
Форум
Форум
Быстрые ссылки
Поиск сообщений
Последние сообщения
Ресурсы
Ресурсы
Быстрые ссылки
Поиск ресурсов
Наиболее активные авторы
Последние оценки
Публикации
Публикации
Быстрые ссылки
Новые
Лучшие
Песочница
|
Новые публикации
Пользователи
Пользователи
Быстрые ссылки
Выдающиеся пользователи
Сейчас на форуме
Недавняя активность
Новые сообщения профиля
Правила
Меню
Поиск
Искать только в заголовках
Сообщения пользователя:
Имена участников (разделяйте запятой).
Новее чем:
Быстрый поиск
Последние сообщения
Больше...