6.4 KiB
macOSメモリーダンピング
htARTE(HackTricks AWS Red Team Expert) でAWSハッキングをゼロからヒーローまで学ぶ!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したいまたはHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスワッグを入手する
- The PEASS Familyを発見し、独占的なNFTsのコレクションを見つける
- 💬 Discordグループに参加するか、telegramグループに参加するか、Twitter 🐦で私をフォローする @carlospolopm。
- ハッキングトリックを共有するには、 HackTricksとHackTricks CloudのGitHubリポジトリにPRを提出してください。
メモリアーティファクト
スワップファイル
/private/var/vm/swapfile0
などのスワップファイルは、物理メモリがいっぱいのときのキャッシュとして機能します。物理メモリに余裕がない場合、そのデータはスワップファイルに転送され、必要に応じて物理メモリに戻されます。swapfile0、swapfile1などの名前で複数のスワップファイルが存在する可能性があります。
ハイバネーションイメージ
/private/var/vm/sleepimage
にあるファイルは、ハイバネーションモード中に重要です。OS Xが休止状態に入るときに、メモリからのデータがこのファイルに保存されます。コンピューターを起動すると、システムはこのファイルからメモリデータを取得し、ユーザーが前回終了したところから続行できるようにします。
現代のMacOSシステムでは、セキュリティ上の理由からこのファイルが通常暗号化されているため、回復が困難になっています。
- sleepimageの暗号化が有効かどうかを確認するには、
sysctl vm.swapusage
コマンドを実行します。これにより、ファイルが暗号化されているかどうかが表示されます。
メモリプレッシャーログ
MacOSシステムのもう1つの重要なメモリ関連ファイルはメモリプレッシャーログです。これらのログは/var/log
にあり、システムのメモリ使用状況やプレッシャーイベントに関する詳細な情報を含んでいます。これらは、メモリ関連の問題の診断やシステムが時間の経過とともにメモリをどのように管理しているかを理解するのに特に役立ちます。
osxpmemを使用したメモリーダンプ
MacOSマシンでメモリをダンプするには、osxpmemを使用できます。
注意: 以下の手順は、Intelアーキテクチャを搭載したMacにのみ適用されます。このツールは現在アーカイブされており、最後のリリースは2017年です。以下の手順でダウンロードしたバイナリは、Apple Siliconが2017年には存在しなかったため、Intelチップをターゲットにしています。arm64アーキテクチャ向けにバイナリをコンパイルすることも可能かもしれませんが、自分で試してみる必要があります。
#Dump raw format
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
#Dump aff4 format
sudo osxpmem.app/osxpmem -o /tmp/dump_mem.aff4
もし次のエラーが見つかった場合:osxpmem.app/MacPmem.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8)
、次の手順で修正できます:
sudo cp -r osxpmem.app/MacPmem.kext "/tmp/"
sudo kextutil "/tmp/MacPmem.kext"
#Allow the kext in "Security & Privacy --> General"
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
その他のエラーは、「セキュリティとプライバシー --> 一般」でkextの読み込みを許可することで修正できるかもしれません。単に許可してください。
また、このワンライナーを使用してアプリケーションをダウンロードし、kextをロードしてメモリをダンプすることもできます:
{% code overflow="wrap" %}
sudo su
cd /tmp; wget https://github.com/google/rekall/releases/download/v1.5.1/osxpmem-2.1.post4.zip; unzip osxpmem-2.1.post4.zip; chown -R root:wheel osxpmem.app/MacPmem.kext; kextload osxpmem.app/MacPmem.kext; osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
{% endcode %}
htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ !
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したいまたはHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスワッグを入手する
- The PEASS Familyを発見し、独占的なNFTsコレクションを見つける
- 💬 Discordグループまたはtelegramグループに参加するか、Twitter 🐦 @carlospolopmをフォローする
- ハッキングトリックを共有するには、HackTricksとHackTricks CloudのGitHubリポジトリにPRを提出してください。