
MemProcFS
MemProcFSは、物理メモリを仮想ファイルシステム内のファイルとして表示する、簡単で便利な方法です。
複雑なコマンドライン引数を必要とせず、簡単で簡単なポイントアンドクリックによるメモリ解析が可能です!マウントされた仮想ファイルシステム内のファイルを介して、または独自のプロジェクトに含めるための高機能なアプリケーションライブラリを介して、メモリの内容とアーティファクトにアクセスできます!
メモリダンプファイル、DumpItまたはWinPMEMによるライブメモリ、仮想マシンまたはPCILeech FPGAハードウェアデバイスからの読み取り/書き込みモードのライブメモリを解析できます!
さらに、セキュアな接続を介してリモートのLeechAgentメモリ取得エージェントに接続することも可能です。これにより、リモートでのライブメモリインシデントレスポンスが可能になります。高レイテンシで低帯域幅の接続でも問題ありません!仮想マシンとMemProcFS、LiveCloudKd、またはVMwareをチェックしてみてください!
お気に入りのツールを使ってメモリを解析しましょう。お気に入りのhexエディタ、pythonやpowershellスクリプト、WinDbg、お気に入りの逆アセンブラやデバッガを使用できます。これらはすべて、ファイルの読み書きだけでMemProcFSで簡単に動作します!




13Cubedによる優れたクイックウォークスルーをチェックして、始めましょう!また、DisobeyやBlueHatでの私の以前のカンファレンス講演もチェックしてください。
追加のドキュメントについては、ファイルシステム自体、そのAPI、およびプラグインモジュールに関する詳細な情報が記載されている**プロジェクトWikiをチェックしてください!メモリ取得方法の詳細については、LeechCoreプロジェクト**をチェックするか、PCILeech/MemProcFS Discordサーバーに参加してください!
始めるには、最新のバイナリ、モジュール、および設定ファイルをダウンロードして、ガイドをチェックしてください!
最新のリリースからバイナリ、モジュール、および設定ファイルを入手してください。 または、リポジトリをクローンしてソースからビルドします。
ファイルシステムをマウントするには、Dokanyファイルシステムライブラリをインストールする必要があります。Dokanyバージョン2の最新版をダウンロードしてインストールしてください: https://github.com/dokan-dev/dokany/releases/latest
ライブメモリを取得するには(PCILeech FPGAハードウェアなしで)、DumpItをダウンロードし、DumpIt /LIVEKDモードでMemProcFSを起動します。または、最新の署名済みWinPMEMドライバをダウンロードしてWinPMEMを入手し、MemProcFSの隣に配置します。詳細な手順はLeechCore Wikiにあります。
PCILeech FPGAにはハードウェアと、MemProcFSバイナリの隣に配置する_FTD3XXWU.dll_が必要です。手順についてはLeechCoreプロジェクトを確認してください。
MemProcFSは、FUSEがインストールされているほとんどのLinuxディストリビューションでそのまま実行できるはずです。ソースからビルドする場合は、Linux上のMemProcFSに関するガイドを確認してください。
ここから最新のMemProcFSリリースをダウンロードします。マウントされた仮想ファイルシステムとして使用される場合、MemProcFSは.kextを必要とするmacFuseに依存します。macFuseをここからダウンロードしてインストールします。サポートされているC/C++/Rust APIを介してMemProcFSを使用する場合、macFuseは必要ありません。
MemProcFSをC/C++、C#、Java、Go(サードパーティ)、Python、またはRustプログラミングプロジェクトに組み込みましょう!MemProcFSのすべては、独自のプロジェクトで使用するための使いやすいAPIを介して公開されています!プラグイン対応アーキテクチャにより、ユーザーはC/C++/Rust/PythonプラグインでMemProcFSを簡単に拡張できます!
MemProcFSのすべてはAPIとして公開されています。APIはC/C++ vmmdll.h、C# nugetパッケージ、Java、Python pipパッケージ、Rust crate用に存在します。ファイルシステム自体は、マウントする必要なくAPIを介して仮想的に利用可能になります。仮想プロセスメモリと物理メモリの両方を読み取ることが可能です!以下の例は、物理アドレス0x1000から0x20バイトを読み取ることを示しています:
>>> 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 automemprocfs.exe -device unknown-x64-dump.raw -pagefile0 pagefile.sys -pagefile1 swapfile.sysこれらすべてが少し圧倒的だと感じますか?それとも簡単な質問をしたいだけですか?DiscordのPCILeechおよびMemProcFS DMAコミュニティサーバーに参加しましょう!
ビルド済みのバイナリ、モジュール、および設定ファイルは最新のリリースにあります。。MemProcFSバイナリはVisual Studio 2022およびUbuntu x64/AARCH64でビルドされています。
詳細なビルド手順は、WikiのBuildingセクションにあります。
プロジェクトのソースコードは、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
v5.6
最新:
-license-accept-elastic-license-2.0v5.7
v5.8
-memmap autoの改善。