ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В...

15
ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С ИСПОЛЬЗОВАНИЕМ IDA FREE И ДРУГИХ БЕСПЛАТНЫХ ИНСТРУМЕНТОВ. Мы начнём новый курс, который будет посвящен эксплуатации и реверсингу в WINDOWS с использованием бесплатных инструментов и которые могут быть легко получены из интернета. (IDA FREE, RADARE, WINDBG, X64DBG, GHIDRA и т.д.) Мы не будем использовать ни один платный инструмент. Идея курса состоит не в том, чтобы создать конкуренцию между различными инструментами, а в том, чтобы научиться использовать их. В моем случае, мы научимся использовать RADARE и GHIDRA, которые являются инструментами, которые я не использую ежедневно, и поэтому я постараюсь использовать их как могу, при условии, что я вообще не являюсь экспертом в этих двух инструментах. Поэтому, если кто-то увидит какую-либо ошибку или лучший способ их использования, было бы хорошо, если бы вы мне дали знать, чтобы я исправил свои ошибки и научился чему-то новому. Этот курс начинается с установки инструментов, затем небольшой теории уязвимостей, а затем очень простых примеров эксплуатации и которые увеличиваются в сложности по мере обучения. В этом курсе не будет введения в инструкции на ассемблере. Всё это есть в предыдущем курсе REVERSING CON IDA PRO. В других предыдущих курсах и на многих интернет-сайтах. Здесь мы перейдем непосредственно к эксплуатации и реверсингу. Все те, кто сомневается в ассемблерных инструкциях, можете обратиться к предыдущим курсам, чтобы уточнить эти сомнения. Для создания моего рабочего окружения первым делом нужно будет установить инструменты. УСТАНОВКА IDA FREE. Чтобы загрузить IDA FREE, вы можете перейти по этой ссылке hps://www.hex-rays.com/products/ida/support/download_freeware.shtml

Transcript of ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В...

Page 1: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

ВВЕДЕНИЕ В ЭКСПЛОИТИНГ ИРЕВЕРСИНГ С ИСПОЛЬЗОВАНИЕМ IDA FREEИ ДРУГИХ БЕСПЛАТНЫХ ИНСТРУМЕНТОВ. Мы начнём новый курс, который будет посвящен эксплуатации и реверсингу в WINDOWS с использованием бесплатных инструментов и которые могут быть легко получены из интернета. (IDA FREE, RADARE, WINDBG, X64DBG, GHIDRA и т.д.)

Мы не будем использовать ни один платный инструмент. Идея курса состоит не в том, чтобы создать конкуренцию между различными инструментами, а в том, чтобы научиться использовать их. В моем случае, мы научимся использовать RADARE и GHIDRA, которые являются инструментами, которые я не использую ежедневно, и поэтому я постараюсь использовать их как могу,при условии, что я вообще не являюсь экспертом в этих двух инструментах. Поэтому, если кто-то увидит какую-либо ошибку или лучший способ их использования, было бы хорошо, если бы вы мне дали знать, чтобы я исправил свои ошибки и научился чему-то новому.

Этот курс начинается с установки инструментов, затем небольшой теории уязвимостей, а затем очень простых примеров эксплуатации и которые увеличиваются в сложности по мере обучения. В этом курсе не будет введенияв инструкции на ассемблере. Всё это есть в предыдущем курсе REVERSING CON IDA PRO. В других предыдущих курсах и на многих интернет-сайтах. Здесь мы перейдем непосредственно к эксплуатации и реверсингу. Все те, кто сомневается в ассемблерных инструкциях, можете обратиться к предыдущим курсам, чтобы уточнить эти сомнения.

Для создания моего рабочего окружения первым делом нужно будет установить инструменты.

УСТАНОВКА IDA FREE.IDA IDA FREE.FREE.

Чтобы загрузить IDA FREE, вы можете перейти по этой ссылке

https://www.hex-rays.com/products/ida/support/download_freeware.shtml

Page 2: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Отсюда загружается файл IDAFREE70_WINDOWS, и сама установка очень проста. Просто следуйте инструкциям установщика и у вас на компьютере быстро появится иконка с IDA FREE.

УСТАНОВКА IDA FREE.RADARE

Следующим шагом нужно установить RADARE2.

Нужно только перейти на страничку проекта.

https://github.com/radareorg/radare2/releases

Здесь нам нужно найти последний релиз.

Page 3: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

На данный момент это версия 3.9.0. В будущем здесь будет доступна новая версия. Независимо от того, какая сейчас версия на сайте, нам нужно скачать установщик самой новой версии для WINDOWS.

Установка также очень проста. Просто добавьте путь в переменные окружения по которому он был установлен.

Здесь в переменную окружения PATH добавить следующие строки

C:\Users\<nombre_de_usuario>\AppData\Local\Programs\radare2

Page 4: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

C:\Users\<nombre_de_usuario>\AppData\Local\Programs\radare2\bin

Идея состоит в том, чтобы из командной строки (CMD) мы могли бы ввести RADARE2 и запустить его.

УСТАНОВКА IDA FREE.GHIDRA

Установить GHIDRA также очень просто.

https://ghidra-sre.org/

Здесь нужно загрузить ZIP архив. В моем случае он назывался GHIDRA_9.1-BETA_DEV_20190923.ZIP, и я распаковываю например на рабочий стол. Я создаю виртуальную машину VMWARE без подключения к Интернету, которуюя буду использовать только для GHIDRA. Я не доверяю АНБ IDA FREE.(какой параноик то), поэтому лучше работать так.

Page 5: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

После распаковки вы должны установить JAVA. Вы можете скачать её через страницу ORACLE или с других сайтов, в моем случае скачать этот установщики после завершения установки добавить путь к месту расположения JAVA BIN, к переменным среды.

Версия 11 на странице GHIDRA говорит, что она наиболее самая подходящая.

Те, кто уже успел поиграться с GHIDRA также говорят, что версия OPENJDK 11 лучше всего подходит для неё.

https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=hotspot

После загрузки установщика у вас есть возможность добавить путь к двоичному файлу JAVA.EXE через переменную среды PATH.

Page 6: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

После завершения установки JAVA можно запустить GHIDRA.

Просто запустить этот BAT-ник и GHIDRA начнет загружаться.

Хорошо. У нас практически все готово.

УСТАНОВКА IDA FREE.X64DBG

Новые снимки для этого отладчика выходят почти ежедневно.

https://sourceforge.net/projects/x64dbg/files/snapshots/

Page 7: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Конечно нам нужно загрузить самую последнюю сборку на текущий момент.

В моем случае это снапшот под именем SNAPSHOT_2019-10-14_00-57.ZIP

Как только мы распаковали архив нужно зайти в папку RELEASE.

При запуске от имени администратора нам появится лаунчер, чтобы мы могливыбрать 32-х или 64-х битную версию в зависимости от того что нам нужно.

Page 8: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Мы можем скачать плагин SNOWMAN для декомпиляции, так как IDA FREE не поставляется с плагином декомпиляции и добавить его в папку плагинов.

https://github.com/x64dbg/snowman/releases/tag/plugin-v1

32-х битную версию плагина нужно скопировать в папку с плагинами 32-битной версии отладчика и аналогично поступить для 64-х битной версии.

Page 9: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

УСТАНОВКА IDA FREE.WINDBG

Если Вы используете WINDOWS 10, то установите отладчик WINDBG через магазин MICROSOFT. Поищите по ключевому слову WINDBG и установите его оттуда.

Из магазина автоматически установится WINDBG PREVIEW, который является самой новой версией. Если же Вы используете WINDOWS 7, Вам придется установить более раннюю версию WINDBG.

https://drive.google.com/open?id=1UEPBecOoir-nhyRK-RHOAhRq05ZtlW1y

Здесь есть несколько разных версий, очень старые и не очень.

Это самые новые версии отладчиков для WINDOWS 7, которые у меня есть. Если они Вам не подойдут, то есть некоторые предыдущие версии в папке OLD VERSIONS.

Следющим шагом будет необходимо настроить символы для WINDBG, создать папку под названием SYMBOLS в C:\, а затем перейти к переменным среды окружения и добавить переменную _NT_SYMBOL_PATH.

Page 10: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Этой переменной нужно присвоить такое значение:

SRV*c:\symbols*http://msdl.microsoft.com/download/symbols

После этого у нас будет установлен WINDBG PREVIEW.

Затем Вы можете установить какой-нибудь шестнадцатеричный редактор, например такой, как HxD, который является бесплатным.

https://mh-nexus.de/en/hxd/

УСТАНОВКА IDA FREE.PYTHON

Page 11: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Мы будем устанавливать самый свежий 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 из командной строки.

УСТАНОВКА IDA FREE.PYCHARM IDA FREE.COMMUNITY

https://www.jetbrains.com/pycharm/download/

Page 12: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

В моем случае PYCHARM-COMMUNITY-2019.2.3.EXE является последней версий. Для Вас она может быть другой.

Теперь нам нужно создать проект после установки.

Page 13: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

В меню RUN IDA FREE.→ DEBUG видно интерпретатор, который будет обрабатывать наши команды.

Также в SETTINGS найдите PROJECT INTERPRETER и убедитесь, что обнаружен PYTHON 3.8 или тот который Вы используете в своём случае.

Page 14: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

Затем я создаю файл PEPE.TXT, переименовываю его в PEPE.PY и перетаскиваю в редактор.

Я пишу кусок кода, и запускаю его с помощью кнопки RUN и интерпретатор должен мне напечатать значение 2248.

Page 15: ВВЕДЕНИЕ В ЭКСПЛОИТИНГ И РЕВЕРСИНГ С …yasha.su/IDAFREE1.pdf · В моем случае он назывался ghidra_9.1-beta_dev_20190923.zip,

PYCHARM должен автоматически дополнять текст. Также если мы выделяем мышью, например, слово OS, то когда мы нажимаем клавишу CTRL должна открыться соответствующая библиотека OS.

На этом мы заканчиваем первую часть. Она посвящена установкеинструментов, которые мы собираемся использовать. Вторую часть мыпосвятим переполнению буфера, небольшой теории, и сделаем первыепростые упражнения, которые мы разберем вместе, другие я оставлю для вас.Также не забывайте про домашние задания, которые я буду оставлять для Вас.Практика намного важнее теории, без неё никуда.

До встречи во второй части.

Рикардо Нарваха (www.ricardonarvaja.info)

18/10/2019