Реверсинг и эксплойтинг с помощью бесплатных инструментовЭто начало нового тренинга, который будет посвящен реверсингу и эксплойту для Windows с помощью бесплатных и доступных инструментов (IDA FREE, Radare, Windbg, X64dbg, Ghidra и т.д.).
В этот раз не будет использоваться ни один платный инструмент, и идея не в том, чтобы создать какую-то конкуренцию между различными бесплатными инструментами, мы будем учиться использовать каждый из них, и в моем случае учиться использовать Radare и Ghidra, оба инструмента я не использую в своей повседневной жизни, и я постараюсь использовать их как можно лучше, поскольку я не эксперт ни в одном из этих двух инструментов, если кто-то увидит какую-то ошибку или лучший способ использовать их, было бы неплохо дать мне знать, и я исправлюсь и тоже буду учиться.
Этот тренинг начнется с установки инструмента, затем немного теории уязвимостей и, наконец, очень простые примеры эксплуатации, сложность которых будет возрастать по мере прохождения курса. Введение в сборку и инструкции по сборке рассматриваться не будут, потому что это было рассмотрено в тренинге «REVERSING CON IDA PRO», на предыдущих тренингах и во многих других местах в интернете, здесь же мы сразу перейдем к реверсингу и эксплуатации. Обратись ко всем предыдущим тренингам, если у тебя возникнут сомнения с инструкциями по сборке.
Чтобы настроить свою рабочую среду, первым делом я установлю инструменты.
УСТАНОВКА IDA FREE
IDA FREE можно скачать с сайта:
https://www.hex-rays.com/products/ida/support/download_freeware.shtml
Оттуда скачай файл idafree***_windows, его довольно легко установить, просто следуй инструкциям установщика, и ты быстро запустишь IDA FREE на своей машине.
УСТАНОВКА RADARE
Следующим шагом будет установка radare2. Radare можно скачать с сайта: https://github.com/radareorg/radare2/releases
Там мы переходим к последнему релизу.
На момент написания этого документа последним релизом является 3.9.0, в будущем будет еще более новый, это не имеет значения, просто скачай самый новый установщик для Windows.
Установка также проста, после завершения инсталляции просто включи в переменную окружения путь, по которому был установлен radare.
Внутри окна Environment Variables переходим в переменную path и добавляем эти две строки (пропиши свои пути, если ты устанавливал в другом месте):
C:\Users\<user_name>\AppData\Local\Programs\radare2
C:\Users\<user_name>\AppData\Local\Programs\radare2\bin
Идея заключается в том, что из командной строки (CMD) мы можем вызвать команду radare2, и windows должна ее распознать.
УСТАНОВКА GHIDRA
Установить GHIDRA тоже довольно просто, достаточно зайти на их веб-страницу: https://ghidra-sre.org/
Там нужно просто скачать zip (в моем случае на момент написания статьи это был ghidra_9.1-BETA_DEV_ 20190923.zip) и распаковать его куда хочешь. Я создал виртуальную машину в VMWARE, без подключения к интернету, я использую ее только для GHIDRA, не то чтобы я не доверял АНБ, но лучше работать в такой среде.
После того как утилита распакована, нам нужно установить совместимую Java машину, на веб-странице Oracle ты можешь скачать ее, или же можно скачать ее из других мест (https://www.filehorse.com/es/descargar-java-development-kit-64/36775/) В моем случае я скачал этот инсталлятор, после завершения установки добавь путь java, где находится исполняемый файл java (обычно это путь к папке bin), в переменную окружения path, как было показано ранее.
Версия 11 рекомендована для совместимости, информация с веб-страницей GHIDRA.
Другие люди, которые использовали GHIDRA, рекомендуют 11-ю версию OpenJDK, ты можешь скачать ее отсюда: https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=hotspot
При установке с помощью инсталлятора OpenJDK можно автоматически добавить его в переменную PATH:
Как только Java будет добавлена в твоем окружении, мы сможем запустить GHIDRA:
Просто щелкаем bat-файл, и GHIDRA загружается:
Установлен еще один инструмент!
УСТАНОВКА X64DBG
Что касается этой программы, то почти каждый день появляются новые снапшоты, просто зайди на их веб-страницу sourceforge и установи последний: https://sourceforge.net/projects/x64dbg/files/snapshots/
В моем случае это был snapshot_2019-10-14_00-57.zip.
После того как мы разархивировали файл, в проводнике перейдите в папку release:
Когда ты запустишь его с правами администратора, появится окно запуска, в котором тебе нужно будет выбрать, какую версию ты хочешь запустить (32 или 64 бит).
Snowman был частью x64dbg, но теперь это плагин, который мы можем скачать и установить. Этот плагин будет декомпилировать наши двоичные файлы в x64dbg, так как IDA FREE не поставляет декомпилятор Hex-rays, просто скачай его и скопируй в папку plugins.
https://github.com/x64dbg/snowman/releases/tag/plugin-v1
Тот, что 32 бит, отправляется в папку 32 битных плагинов, а 64 бит - в папку плагинов 64 битной версии.
УСТАНОВКА WINDBG
Если у тебя Windows 10, то для установки windbg тебе нужно просто зайти в Microsoft STORE и найти WINDBG, как только он появится, мы сможем установить его оттуда.
Отсюда автоматически устанавливается WINDBG PREVIEW, это самая новая версия. Если у тебя Windows 7, то тебе придется установить предыдущую версию Windbg.
https://drive.google.com/open?id=1UEPBecOoir-nhyRK-RHOAhRq05ZtlW1y
У тебя есть несколько старых версий:
Следующий шаг - настройка символов для WINDBG, для этого создай папку symbols в на диске «C:\», а затем перейди в окно Environment variables и создай переменную _NT_SYMBOL_PATH.
Как значение (Variable value):
SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
При этом мы уже установили WINDBG PREVIEW.
УСТАНОВКА ШЕСТНАДЦАТИРИЧНОГО РЕДАКТОРА
Для этого шага мы можем просто скачать HxD, который является бесплатным и хорошо работает.
https://mh-nexus.de/en/hxd/
УСТАНОВКА PYTHON
Мы установим Python 3 - это самая новая версия, которая пригодится нам для создания эксплойтов для каждого упражнения.
https://www.python.org/downloads/
Просто скачай последнюю версию. На момент написания этого документа она была:
Python-3.8.0-amd64.exe
Для агрегации Python.exe в переменную окружения PATH есть опция в инсталляторе, просто нажми на нее, и все будет сделано автоматически.
Обычно путь установки выглядит так:
C:\Users\XXXXX\AppData\Local\Programs\Python\Python38
(Только учти, что в твоем случае Python38 может быть другим). Суть в том, что мы должны иметь возможность выполнить Python в командной строке.
УСТАНОВКА PYCHARM COMMUNITY
Это будет наша интегрированная среда разработки (IDE) для python. Просто перейди на веб-страницу jetbrains: https://www.jetbrains.com/pycharm/download/
В моем случае последней версией PyCharm является pycharm-community-2019.2.3.exe, для тебя она может быть другой:
Установи все эти параметры, чтобы он был включен в переменную окружения PATH. После установки создай новый проект:
В меню RUN->DEBUG проверь, чтобы опция «Python interpreter» указывала на наш интерпретатор Python (в моем случае Python 3.8).
Также в НАСТРОЙКАХ найди пункт PROJECT INTERPRETER и проверь, что обнаружен Python 3.8 (или та версия, которую ты решил установить).
Это позволит тебе создавать файлы в формате .txt, менять расширение на .py и перемещать их в Pycharm.
Например, файл примера с именем pepe.txt был переименован в pepe.py и перетащен в Pycharm. Когда ты нажмешь кнопку «Run», должен появиться следующий экран:
И наконец, в консоли экрана pycharm должно быть выведено следующее:
Pycharm, когда мы набираем текст, pycharm должен автоматически заполнить его, и если мы наведем мышкой на слово «os», то при нажатии CTRL и клике pycharm должен перенести нас в код питоновской библиотеки «os».
На этом мы закончили первую часть, мы установили инструменты для нашей среды эксплойтинга. Во второй части мы начнем с небольшой теории о переполнении буфера и с первых простых упражнений, некоторые из которых будут объяснены шаг за шагом, а другие останутся для тебя упражнениями на решение (я призываю тебя попытаться их решить, это лучший способ научиться).
Увидимся во второй части тренинга
Ricardo Narvaja (www.ricardonarvaja.info)
Переведено на Русский Tuzer.
18/10/2019
===============================
Источник: http://ricardonarvaja.info/WEB/EXPL...EVERSING AND EXPLOITING USING FREE TOOLS.docx
Реверсинг и эксплойтинг с помощью бесплатных инструментов. Часть 1
Дата публикации 18 ноя 2024 в 00:14