Введение в реверсинг с нуля, используя IDA PRO. Часть 22.

12 ноя 2017

РАЗЛИЧАЯ DIFFER (В дальнейшем — Дифер, прим. Яши) - это программа, которая из двух последовательных версий одного и того же файла, пытается найти различия в функциях, несмотря на изменения и пытается показать нам какие функции были изменены и где. Очевидно, эта не простая работа. Особенно, когда между версиями было много изменений, которые могут появиться в приложение из-за патча безопасности, для того, чтобы устранить какую-нибудь уязвимость, а также, могут быть появится улучшения в...
Читать далее
Лайков +11 Комментариев8 Просмотров14.508

Путешествие из 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.669

Введение в реверсинг с нуля, используя IDA PRO. Часть 23.

22 ноя 2017

Осталось решить незаконченное упражнение IDA1.EXE. [ATTACH] Функция основана на EBP как предыдущие упражнения. Разница заключается в том, что этот пример скомпилирован с помощью DEVC++, который имеет особый способ компиляции вызовов API, отличный от обычного способа и это может вызвать головокружение, у тех, кто никогда такого не видел. Хорошо, "VAMOS POR PARTES", как сказал Джек. Первое, что мы видим - это функция MAIN. Если она не появляется, Вы также можете перейти к важной функции,...
Читать далее
Лайков +9 Комментариев9 Просмотров10.424

Готовим Windows 10

26 июн 2020

Просто гайд о том, как правильно ставить, активировать и настраивать Windows 10 и Office. На создание вдохновили труды rk2019 над сборками Windows XP. Тема этого гайда не совсем по профилю форума, но для кого-то может оказаться полезной. 1. Скачиваем образ. Никаких варезников, торрентов и модифицированных сборок, качаем лицензионный *.iso с официального сайта. https://www.microsoft.com/ru-ru/software-download/windows10 Нам нужен *.iso, а сайт предлагает средство обновления. Заходим в...
Читать далее
Лайков +8 Комментариев5 Просмотров13.979

Введение в реверсинг с нуля, используя IDA PRO. Часть 24.

26 ноя 2017

Решение для упражнения IDA2.EXE довольно похоже на предыдущее, только здесь присутствуют две переменные или мы можем назвать их кукисами. Для того, чтобы перенести Вас в область хорошего сообщения, теперь сравниваются две переменные, а не одна. [ATTACH] Давайте посмотрим, существует ли место, где Вы можете изменить эти переменные? Мы переименовываем переменные в COOKIE и COOKIE 2, так как сама IDA называет их такими именами. [ATTACH] Мы видим, что единственные места, где есть доступ к...
Читать далее
Лайков +7 Комментариев8 Просмотров10.471

Введение в реверсинг с нуля, используя IDA PRO. Часть 57

3 ноя 2018

Хорошо. Мы будем пытаться эксплуатировать переполнение стека из скрипта PYTHON. Обычно эксплуатация ядра происходит локально. Другими словами, скрипт уже эксплуатирует некоторую программу, которая не имеет привилегий системы и хочет повысить привилегии и быть с правами SYSTEM, что устраняет ограничения, которые имеет эксплуатируемый процесс, который имеет только ограниченные привилегии обычного пользователя на машине. Поэтому, за исключением очень редких исключений, эксплойты ядра - это...
Читать далее
Лайков +7 Комментариев5 Просмотров7.991

Виртуализация для самых маленьких #2: управляющие структуры, EPT, MTRR

18 июн 2020

Продолжаем писать изучать гипервизор. В прошлой части мы написали шаблон драйвера и заготовку функции для виртуализации всех логических процессоров. Прежде всего, следует напомнить, что под логическим процессором понимается или одно физическое ядро процессора (если процессор не поддерживает SMT/Hyper-Threading), или один логический поток в процессорах с поддержкой SMT/Hyper-Threading. Иными словами, если у процессора 4 ядра и он поддерживает Hyper-Threading (два потока на одно физическое...
Читать далее
Лайков +7 Комментариев5 Просмотров9.411

Виртуализация для самых маленьких #3: готовим структуры, заполняем EPT

21 июн 2020

В прошлой части мы получили теоретическую базу по принципам настройки гипервизора и EPT. Применим их на практике. В первой части мы написали шаблон драйвера и заготовку для виртуализации всех процессоров - функцию VirtualizeAllProcessors. Код виртуализации будет необходимо выполнить на всех процессорах и это легко сделать через генерацию межпроцессорного прерывания функцией KeIpiGenericCall. Каждый логический процессор выполнит код, переводящий его в режим виртуализации, и продолжит свою...
Читать далее
Лайков +7 Комментариев21 Просмотров12.154