1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

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

9 апр 2018

УНИВЕРСАЛЬНЫЙ ШЕЛЛКОД Существует тысячи типов шеллкодов. Каждый из них разработан в соответствии с целью, которую мы должны эксплуатировать. Существую шеллкоды, которые используются для доказательства того, что вы можете запустить код после эксплуатации. Обычно они запускают калькулятор и ничего больше. Очевидно, что существуют более сложные шеллкоды, которые открывают удаленные консоли, стараются остаться в системе не смотря на то, что эксплуатируемая программа перестает работать или...
Читать далее
Лайков +3 Комментариев2 Просмотров2.375

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

25 мар 2018

CANARY и SEH. Мы уже видели, что такое переменная CANARY. Это случайное значение, которое помещается в стек непосредственно перед сохраненным регистром EBP и адресом возврата. Так что, если это значение перезаписывается, программа проверяет это значение(Это необходимо нам для перезаписи адреса возврата). Если это значение тоже самое, то оно сохраняется, а если оно неправильное, то программа закрывается, избегая исполнение кода. Приложенный файл - это файл CANARY_SIN_DEP.EXE. Позже, в...
Читать далее
Лайков +3 Комментариев1 Просмотров2.517

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

24 мар 2018

Хорошо. Мы будем делать тот же пример, который мы делали в предыдущей части, но на этот раз используя плагин MONA внутри отладчика WINDBG. Мы знаем, что MONA не запускается в IDA. Поэтому мы открываем WINDBG вне IDA. Я запускаю файл DEP.EXE из консоли с несколькими аргументами, чтобы он не закрывался. Программа будет ожидать ввода данных с клавиатуры. [ATTACH] Я мог бы запустить программу также и с помощью WINDBG. Это было бы те же самым. Нам просто нужно остановиться в том месте, где...
Читать далее
Лайков +3 Комментариев3 Просмотров3.043

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

19 мар 2018

Хорошо. Давайте начнем работать с версией программы, которая имеет защиту DEP. Мы знаем, что программа похожа на предыдущую, но что произойдёт, если мы запустим скрипт для версии где защита DEP отсутствует. Изменим путь в скрипте, для того, чтобы он указывал на файл DEP.EXE. [ATTACH] Я запускаю скрипт и присоединяюсь к процессу помощью IDA, которая уже имеет анализ файла DEP.EXE. [ATTACH] Я установлю BP сразу после функции GETS, чтобы увидеть, что происходит в функции SALUDA, так как...
Читать далее
Лайков +3 Комментариев7 Просмотров2.178

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

11 мар 2018

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

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

11 мар 2018

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

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

27 фев 2018

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

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

27 фев 2018

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