
MemProcFS — это простой и удобный способ просмотра физической памяти как файлов в виртуальной файловой системе.
Простой анализ памяти в один клик без необходимости в сложных аргументах командной строки! Доступ к содержимому памяти и артефактам через файлы в смонтированной виртуальной файловой системе или через многофункциональную библиотеку приложений для включения в ваши собственные проекты!
Анализируйте файлы дампов памяти, живую память через DumpIt или WinPMEM, живую память в режиме чтения-записи из виртуальных машин или с аппаратных устройств PCILeech FPGA!
Также возможно подключение к удалённому агенту сбора памяти LeechAgent через защищённое соединение — что позволяет проводить удалённый анализ живой памяти в режиме инцидент-реагирования — даже через соединения с высокой задержкой и низкой пропускной способностью! Загляните в Виртуальные машины с MemProcFS, LiveCloudKd или VMware!
Используйте ваши любимые инструменты для анализа памяти — используйте ваши любимые hex-редакторы, ваши python и powershell скрипты, WinDbg или ваши любимые дизассемблеры и отладчики — всё это будет тривиально работать с MemProcFS, просто читая и записывая файлы!




Ознакомьтесь с отличным кратким обзором от 13Cubed, чтобы начать! Также посмотрите мои более ранние выступления на конференциях Disobey и BlueHat.
Для дополнительной документации загляните в вики проекта для получения подробной информации о самой файловой системе, её API и модулях плагинов! Для дополнительной информации о методах сбора памяти загляните в проект LeechCore или зайдите на Discord-сервер PCILeech/MemProcFS!
Чтобы начать, скачайте последние бинарные файлы, модули и файлы конфигурации и ознакомьтесь с руководством!
Получите последние бинарные файлы, модули и файлы конфигурации из последнего релиза. Либо клонируйте репозиторий и соберите из исходного кода.
Для монтирования файловой системы требуется установка библиотеки файловой системы Dokany. Скачайте и установите последнюю версию Dokany версии 2 по адресу: https://github.com/dokan-dev/dokany/releases/latest
Для захвата живой памяти (без аппаратного обеспечения PCILeech FPGA) скачайте DumpIt и запустите MemProcFS через DumpIt в режиме /LIVEKD. Либо получите WinPMEM, скачав последний подписанный драйвер WinPMEM, и поместите его рядом с MemProcFS — подробные инструкции в вики LeechCore.
PCILeech FPGA потребует аппаратное обеспечение, а также файл FTD3XXWU.dll, который необходимо разместить рядом с бинарными файлами MemProcFS. Пожалуйста, ознакомьтесь с проектом LeechCore для получения инструкций.
MemProcFS должен работать из коробки на большинстве дистрибутивов Linux с установленным FUSE. Если вы собираете из исходного кода, ознакомьтесь с руководством о MemProcFS на Linux.
Скачайте последний релиз MemProcFS здесь. MemProcFS при использовании в качестве смонтированной виртуальной файловой системы зависит от macFuse, который требует .kext. Скачайте и установите macFuse здесь. Если MemProcFS используется через поддерживаемые C/C++/Rust API, macFuse не требуется.
Включите MemProcFS в ваши проекты на C/C++, C#, Java, Go (сторонний), Python или Rust! Всё в MemProcFS доступно через простой в использовании API для применения в ваших собственных проектах! Архитектура, дружественная к плагинам, позволяет пользователям легко расширять MemProcFS с помощью плагинов на C/C++/Rust/Python!
Всё в MemProcFS доступно через API. API существуют для C/C++ vmmdll.h, C# пакет nuget, Java, Python пакет pip и Rust crate. Сама файловая система доступна виртуально через API без необходимости её монтирования. Можно читать как виртуальную память процессов, так и физическую память! Пример ниже показывает чтение 0x20 байт с физического адреса 0x1000:
>>> import memprocfs
>>> vmm = memprocfs.Vmm(['-device', 'c:/temp/win10_memdump.raw'])
>>> print(vmm.hex( vmm.memory.read(0x1000, 0x20) ))
0000 e9 4d 06 00 01 00 00 00 01 00 00 00 3f 00 18 10 .M..........?...
0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
MemProcFS доступен как Python-пакет pip, и его легко интегрировать в ваши Jupyter Notebooks.
Запустите MemProcFS из командной строки — возможно, используя один из примеров ниже.
Или зарегистрируйте расширение файла дампа памяти с MemProcFS.exe, чтобы файловая система автоматически монтировалась при двойном клике на файл дампа памяти!
memprocfs.exe -device c:\temp\win10x64-dump.rawmemprocfs.exe -device c:\temp\win10x64-dump.raw -vmemprocfs.exe -device c:\temp\win10x64-dump.raw -forensic 1memprocfs.exe -device c:\temp\win10x64-dump.raw -forensic 1 -forensic-yara-rules c:\yara\rules\windows_malware_index.yar./memprocfs -mount /home/pi/linux -device /dumps/win10x64-dump.rawmemprocfs.exe -mount s -device c:\temp\win10x64-dump.rawmemprocfs.exe -device pmemmemprocfs.exe -device fpga -memmap autoВсё это кажется немного сложным? Или просто хотите задать быстрый вопрос? Присоединяйтесь к серверу сообщества DMA PCILeech и MemProcFS на Discord!
Предварительно собранные бинарные файлы, модули и файлы конфигурации находятся в последнем релизе.. Бинарные файлы MemProcFS собраны с помощью Visual Studio 2022 и Ubuntu x64/AARCH64.
Подробные инструкции по сборке можно найти в вики в разделе Сборка.
Исходный код проекта выпущен под: GNU Affero General Public License v3.0. Некоторые включённые зависимости и плагины выпущены под GPLv3. Некоторые включённые распространяемые бинарные файлы Microsoft выпущены под отдельными лицензиями. Альтернативное лицензирование возможно по запросу.
PCILeech, MemProcFS и LeechCore являются открытым исходным кодом, но не открыты для свободного вклада. PCILeech, MemProcFS и LeechCore предлагают высокогибкую архитектуру плагинов, которая позволяет вносить вклад в форме плагинов. Если вы хотите внести вклад, отличный от плагина, в основные проекты, пожалуйста, свяжитесь со мной перед началом разработки.
v1.0
v1.1-v4.9
v5.0
v5.1
v5.2
v5.3
v5.4
v5.5
Последнее:
memprocfs.exe -device unknown-x64-dump.raw -pagefile0 pagefile.sys -pagefile1 swapfile.sysv5.6
-license-accept-elastic-license-2.0.v5.7
v5.8
-memmap auto.