Войти или зарегистрироваться
WASM
Главная
Публикации
>
Hook engine. Может кому-то пригодится
11 апр 2022
Hook engine Движок для перехвата функций. Подойдет как для ring3 перехватов, так и для ring0. Проблемы могут возникнуть при копировании call в тело функции, но я думаю этого не будет. Функции аллока и освобождения памяти намеренно убраны, т.к. для разных ring свои функции аллока памяти. Работает так: дизассемблирует начальный код функции, и копирует в буфер столько кода, чтобы заместо него поместился call. После копирования, начало функции заменяется на call <> + nop для добивки остатков....
Читать далее
+1
1
203
Виртуализация для самых маленьких #3: готовим структуры, заполняем EPT
21 июн 2020
В прошлой части мы получили теоретическую базу по принципам настройки гипервизора и EPT. Применим их на практике. В первой части мы написали шаблон драйвера и заготовку для виртуализации всех процессоров - функцию VirtualizeAllProcessors. Код виртуализации будет необходимо выполнить на всех процессорах и это легко сделать через генерацию межпроцессорного прерывания функцией KeIpiGenericCall. Каждый логический процессор выполнит код, переводящий его в режим виртуализации, и продолжит свою...
Читать далее
+7
7
2.146
Мета-программирование Nim и обфускация
20 июн 2020
Здравствуйте, друзья, мы с вами продолжаем исследовать возможности мета-программирования различных высокоуровневых языков в одной единственной прикладной сфере - обфускации. На этот раз мы рассмотрим язык программирования Nim - модный, молодежный, немного питонный, немного паскальный язык, который позиционируется как альтернатива C++. Насколько дизайн и реализация языка Nim удачны - вопрос спорный, но нас как бы это не особо то и интересует. Нас интересуют только весьма богатые возможности...
Читать далее
+4
4
2.900
Виртуализация для самых маленьких #2: управляющие структуры, EPT, MTRR
18 июн 2020
Продолжаем писать изучать гипервизор. В прошлой части мы написали шаблон драйвера и заготовку функции для виртуализации всех логических процессоров. Прежде всего, следует напомнить, что под логическим процессором понимается или одно физическое ядро процессора (если процессор не поддерживает SMT/Hyper-Threading), или один логический поток в процессорах с поддержкой SMT/Hyper-Threading. Иными словами, если у процессора 4 ядра и он поддерживает Hyper-Threading (два потока на одно физическое...
Читать далее
+7
5
1.976
Виртуализация для самых маленьких #1: гипервизор - что, зачем и почему
15 июн 2020
[ATTACH] Развитие технологий аппаратной виртуализации (Intel VT-x и AMD-V) открывает широкие возможности по контролю выполнения кода на самом низком уровне. Привычные всем гипервизоры (Hyper-V, KVM, VMware или VirtualBox) позволяют запускать операционные системы в изолированном окружении: это становится возможным, благодаря способности процессоров работать в специальном режиме, в котором они контролируют доступ к ресурсам и обрабатывают выполнение заданных инструкций и событий. При...
Читать далее
+15
18
3.977
Мета-программирование С++ и обфускация
13 июн 2020
Здравствуйте, друзья, это - моя первая статья на Wasm'е, не судите строго. Надеюсь она же станет первой статьей в цикле, в котором я рассмотрю возможности мета-программирования разных ЯП и компиляторов применительно к обфускации кода. Первым пациентом у нас будет великий и могучий, ненавидимый многими программистами по всему миру, прородитель buffer overflow и use after free багов - добрый дядька С++. Когда то очень давно, а именно в 2013 году, когда в компиляторы С++ начали завозить...
Читать далее
+5
6
3.298
Квантовая сепарация или разбираемся с Win32PrioritySeparation
9 мар 2020
В этой заметке речь пойдёт об известной настройке планировщика - Win32PrioritySeparation, позволяющей настраивать количество квантов времени, выделяемых фоновым (background) и активным (foreground) процессам. Этот параметр - поле в реестре с типом REG_DWORD: HKLM\System\CurrentControlSet\Control\PriorityControl\Win32PrioritySeparation Во многих источниках есть описания возможных значений без объяснения внутреннего устройства этого параметра - эти пробелы и призвана закрыть эта статья....
Читать далее
+3
2
6.066
Введение в реверсинг с нуля, используя IDA PRO. Часть 67. Часть 2.
19 июн 2019
Проблема в том, что эта секция будет использоваться источником, и вам нужно скопировать данные до SEH, а затем завершить ввод, поэтому происходит сбой чтения перед копированием всего стека и сбой в стеке ядра. Я поставлю эту IDA на паузу на одну минуту и открою другую, где у меня есть драйвер. Одна вещь, которую я не видел и допустил ошибку - это то, что буфер назначения [ATTACH] Мы видим, что он инициализируется байтами 0x1FF, но непосредственно перед обнулением байта, который находится...
Читать далее
+5
3
5.630
Показано элементов:
8
из 8.
Показать игнорируемое содержимое
Страница 1 из 87
1
←
2
3
4
5
6
→
87
Вперёд >
Ваше имя или e-mail:
У Вас уже есть учётная запись?
Нет, зарегистрироваться сейчас.
Да, мой пароль:
Забыли пароль?
Запомнить меня
WASM
Главная
Публикации
>
Главная
Форум
Форум
Быстрые ссылки
Поиск сообщений
Последние сообщения
Ресурсы
Ресурсы
Быстрые ссылки
Поиск ресурсов
Наиболее активные авторы
Последние оценки
Публикации
Публикации
Быстрые ссылки
Новые
Лучшие
Песочница
|
Новые публикации
Пользователи
Пользователи
Быстрые ссылки
Выдающиеся пользователи
Сейчас на форуме
Недавняя активность
Новые сообщения профиля
Правила
Меню
Поиск
Искать только в заголовках
Сообщения пользователя:
Имена участников (разделяйте запятой).
Новее чем:
Быстрый поиск
Последние сообщения
Больше...