# Memoryze ## Введение Memoryze - это средство анализа памяти. Что мы можем получить, используя Memoryze: * полный образ всего диапазона системной памяти (без использования API-вызовов), сохраненный в файл для дальнейшего анализа; * дамп адресного пространства любого процесса, включая список загруженных DLL и EXE, кучу и стэк (этот дамп можно дальше исследовать в дизассемблере); * образ всех загруженных драйверов или некоторых из них; * полный список всех процессов, включая те, что спрятаны руткитами, причем для каждого процесса есть возможность определить все хэндлы (например, используемых файлов или ключей реестра), сетевые сокеты, импортируемые и экспортируемые функции и так далее; * все строковые переменные, используемые процессами; * полный список всех драйверов, в том числе те, которые маскируются малварью; * перечень всех модулей ядра; * перечисление всех установленных хуков (они часто используются малварью); * и многое другое. ## Установка К слову, Memoryze поддерживает только данные операционные системы * Windows 2000 Service Pack 4 (32-bit); * Windows XP Service Pack 2 and Service Pack 3 (32-bit); * Windows Vista Service Pack 1 and Service Pack 2 (32-bit); * Windows 2003 Service Pack 2 (32-bit); * Windows 2003 Service Pack 2 (64-bit); * Windows 7 Service Pack 0 (32-bit); * Windows 7 Service Pack 0 (64-bit); * Windows 2008 Service Pack 1 and Service Pack 2 (32-bit); * Windows 2008 R2 Service Pack 0 (64-bit). Ищем Mandiant's Memoryze, переходим на сайт Fireeye, заполняем нужные поля и скачиваем установочный файл. ![](https://i.imgur.com/gxiX2Cl.png) ![](https://i.imgur.com/uP9kiVR.png) ![](https://i.imgur.com/96B7khO.png) После установки мы имеем несколько скриптов для выполнения в командной строке * MemoryDD.bat для получения образа физической памяти * ProcessDD.bat для получения образа адрессного пространства процесса * DriverDD.bat для получения образа драйвера * Process.bat для получения данных о процессе * HookDetection.bat для поиска хуков * DriverSearch.bat для поиска драйверов * DriverWalkList.bat для перечисления всех модулей и драйверов в связанном списке ## Создаём образ памяти Для создания дампа памяти нам необходимо воспользоваться командной строкой. В директории программы присутствуют несколько скриптов. Нам нужен MemoryDD.bat. Используем его. ![](https://i.imgur.com/HEQ6EGq.png) После выполнения скрипта Memoryze создаёт xml-файлы результатов выполнения и образ памяти в папке Audits. ![](https://i.imgur.com/I4zxuyv.png) Например, в файле Issues.memory мы можем посмотреть ошибки, выведенные в процессе исполнения скрипта. Так как программа не поддерживает мою основную ОС Windows 10, я скачал её на виртуальную машину Windows 7 SP1. Скрипт вывел множество ошибок в процессе выполнения. ![](https://i.imgur.com/4LuCSil.png) ## Анализ дампа Для анализа дампа нам нужно использовать какой-либо интерфейс. Например, Redline от той же компании Mandiant (FireEye). ![](https://i.imgur.com/e7IzuBl.png) Выбираем Analyze Data From a Saved Memory File. ![](https://i.imgur.com/8V36m0U.png) В этом окне можно задать настройки анализа ![](https://i.imgur.com/wZzHXPf.png) Сначала я попытался запустить на виртуальной машине, но программа вошла в конфликт с Memoryze (т.к. они принадлежат FireEye?) ![](https://i.imgur.com/uJdv9is.png) В итоге я перенёс образ из виртуальной машины в свою основную ОС и запустил анализ уже на ней. ![](https://i.imgur.com/MPolVyY.png) В конечном счёте мы получаем такую таблицу ![](https://i.imgur.com/bshvVUI.png) ![](https://i.imgur.com/gWsr7g5.png) Мы можем просмотреть отдельно хуки, драйверы, порты и т.п. ![](https://i.imgur.com/ynITCpw.png) ![](https://i.imgur.com/i3uTEfz.png) ![](https://i.imgur.com/bi0ArLI.png) ## Другие скрипты * Попробуем выполнить скрипт DriversSearch ![](https://i.imgur.com/v33DpmR.png) Получаем информацию о драйверах на компьютере ![](https://i.imgur.com/rMPD6wZ.png) * Скрипт HookDetection ![](https://i.imgur.com/AxcN6n8.png) Даёт информацию о хуках в системе ![](https://i.imgur.com/MNTJrQc.png)