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

11 мар 2018

Я скомпилировал две программы. Первую программу скомпилировал с защитой DEP, а вторую программу - без этой защиты. Код везде один и тот же. Но в этом случае, вместо того, чтобы изменять код и компилировать программу, я напрямую вызываю API функцию SETPROCESSDEPPOLICY. В первой программе, я вызываю эту функцию с аргументом 0 (без использования защиты DEP), а во второй программе - с аргументом 1 (с использованием защиты DEP). Если я запущу обе программы и посмотрю на них через утилиту PROCESS...
Читать далее
Лайков +3 Комментариев3 Просмотров6.499

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

11 мар 2018

Давайте начнём с эксплуатации и возможного выполнения кода. Конечно, мы должны учитывать смягчения и учиться противостоять новым защитам, которые были добавлены. Иногда мы сможем избежать их, а иногда и нет. Основная идея состоит в том, чтобы обучаться постепенно. Давайте сначала рассмотрим некоторые важные определения. ЧТО ТАКОЕ DEP ? [ATTACH] Предотвращение выполнения данных (DEP) представляет собой набор аппаратных и программных технологий, который выполняет дополнительные проверки в...
Читать далее
Лайков +4 Комментариев4 Просмотров6.625

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

27 фев 2018

У нас остался последний случай эксплуатации переполнения стека с защитами CANARY и DEP для перезаписи SEH. [ATTACH] Мы переименовываем имя исполняемого файла и присоединяемся к нему с помощью IDA, чтобы увидеть, что случиться. [ATTACH] Так же как и раньше, программа закрывается, когда стек заканчивается. Давайте посмотрим её SEH, [ATTACH] Как и в предыдущем случае, программа перезаписывает указатель на гаджет POP - POP - RET. Давайте установим здесь BP. [ATTACH] Я нажимаю клавишу F9...
Читать далее
Лайков +4 Комментариев1 Просмотров5.876

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

27 фев 2018

Мы установим пару плагинов для WINDBG, которые будут помогать нам дальше при работе. К сожалению эти плагины работают только в WINDBG, но если Вы запустите их в WINDBG, запущенном в IDA, они дадут сбой, возможно, потому что они конфликтуют с PYTHON, который включён в IDA, но мы будем использовать их в отдельном WINDBG, когда они нам понадобятся. Мы будем копировать файлы, которые я приложил, в каталог WINEXT, который находится внутри каталога, где установлен WINDBG и установим библиотеку...
Читать далее
Лайков +4 Комментариев10 Просмотров7.164

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

26 фев 2018

Подготовка WINDBG для работы с IDA. Один из инструментов, который нам необходимо установить - это отладчик WINDBG. Им можно управлять через интерфейс IDA. Это отличный отладчик. Может ему и не хватает комфорта, потому что почти все типы команд являются консольными и его немножко сложно использовать, но мы можем использовать отличный интерфейс, который предлагает IDA, отлаживая движком WINDBG. WINDBG очень полезен, когда мы хотим отлаживать ядро или получить хорошую информацию о состоянии...
Читать далее
Лайков +4 Комментариев5 Просмотров7.792

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

25 фев 2018

Я присоединяюсь к этому процессу. [ATTACH] Проиграв некоторое время ролик, отладчик остановится на BP. Я трассирую с помощью клавиши F7 и вижу, что в регистре EDX находится адрес БУФЕРА. [ATTACH] Я щелкаю на маленькую стрелку рядом с регистром EDX, которая переносит фокус в листинг. [ATTACH] Сейчас я делаю правый щелчок в стеке на этих данных и создаю массив из 32 байтов в десятичной системе. [ATTACH] У меня получается вот так. [ATTACH] Мы устанавливаем BP на запись в первом DWORD...
Читать далее
Лайков +3 Комментариев9 Просмотров6.332

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

4 фев 2018

Прежде чем делать упражнение из предыдущей части, я расскажу о некоторых моментах более подробно, которые остались в тени из-за моего быстрого объяснения и затем мы создадим POC. Один из моментов, который остаётся неясным заключается в том, что иногда мы принимаем размер массива, который предлагает нам IDA при выполнении правого щелчка и выбора пункта ARRAY. Иногда мы ставим предлагаемый нам размер под сомнение как в предыдущем примере и устанавливаем значение длины массива немного больше....
Читать далее
Лайков +4 Комментариев1 Просмотров5.688

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

28 янв 2018

Мы попытаемся решить упражнение, предложенное в 29 части. Это DIFF двух последовательных версий VLC плеера. У Вас есть CVE в качестве помощи с информацией. И эта информация, это то, что у нас есть. После установки в виртуальной машине уязвимой и пропатченной версии, я буду изучать информацию об уязвимости в CVE, чтобы узнать, даст ли CVE мне подсказку, чтобы помочь мне не слишком сильно заниматься анализом различий. [ATTACH] Если я посмотрю в папку, где установлен VLC, я увижу, что плеер...
Читать далее
Лайков +4 Комментариев8 Просмотров8.081