Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
PPLdump — ユーザランドエクスプロイトを使用してPPLのメモリをダンプする | Kitploit
ツール/GitHubGitHub/itm4n/ppldump
特権昇格メモリフォレンジックエクスプロイトレッドチーミングペイロード開発バイナリエクスプロイトArchived
GitHubitm4n/ppldump

PPLdump

ユーザランドエクスプロイトを使用してPPLのメモリをダンプする

リポジトリを見る
8931424年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

PPLdump

⚠️ 2022-07-24 - Windows 10 21H2 10.0.19044.1826(2022年7月更新)以降、PPLdump に実装されているエクスプロイトは__動作しなくなりました__。NTDLL のパッチにより、PPL が Known DLL を読み込めなくなりました。詳細はこちら。

このツールは、James Forshaw(別名 @tiraniddo)がこのブログ記事で最初に議論した、管理者として__任意のPPLのメモリをダンプする__ための__ユーザーランド__エクスプロイトを実装しています。

このツールについて2つのブログ記事を書きました。前半は Protected Processes の概念について、後半はバイパス手法自体について説明しています。

  • ブログ記事前半: LSA保護(RunAsPPL)について本当に知っていますか?
  • ブログ記事後半: ユーザーランドでLSA保護をバイパスする

使い方

引数なしで実行可能ファイルを実行するだけで、詳細なヘルプ/使用方法が表示されます。

root@kitploit:~
c:\Temp>PPLdump64.exe
 _____ _____ __      _
|  _  |  _  |  |   _| |_ _ _____ ___
|   __|   __|  |__| . | | |     | . |  version 0.4
|__|  |__|  |_____|___|___|_|_|_|  _|  by @itm4n
                                |_|

Description:
  Dump the memory of a Protected Process Light (PPL) with a *userland* exploit

Usage:
  PPLdump.exe [-v] [-d] [-f] <PROC_NAME|PROC_ID> <DUMP_FILE>

Arguments:
  PROC_NAME  The name of a Process to dump
  PROC_ID    The ID of a Process to dump
  DUMP_FILE  The path of the output dump file

Options:
  -v         (Verbose) Enable verbose mode
  -d         (Debug) Enable debug mode (implies verbose)
  -f         (Force) Bypass DefineDosDevice error check

Examples:
  PPLdump.exe lsass.exe lsass.dmp
  PPLdump.exe -v 720 out.dmp

FAQ

すべてのWindowsバージョンで動作しますか?

まず、PPLはWindows 8.1で導入されたため、古いバージョンのWindowsは明らかにサポートされていません。このプロジェクトは主にWindows 10(およびそのサーバーエディション)を対象としていますが、古いバージョンでもテストしました。テスト結果の要約表は同名のセクションにあります。

他のツールとどう違うのですか?

他のPPLバイパスツールは通常、デジタル署名されたドライバを介してカーネル内で任意のコードを実行します。このツールは、ユーザーランドのトリックのみを使用し、(ほぼ)ファイルレスである点が異なります。

「ユーザーランド」、だと?!

このツールは、James Forshawが2018年に最初に議論した非常に巧妙なトリックを利用しています(クレジット参照)。DefineDosDevice API関数を使用して、システムを騙して任意のKnown DLLエントリを作成させます。PPLはKnown DLLのデジタル署名をチェックしないため、後でDLLハイジャック攻撃を実行し、PPL内部で任意のコードを実行するために使用できます。

本当に「ファイルレス」なのですか?

このツールは第2段階としてDLLハイジャック攻撃を実行しますが、ディスク上に新しいDLLファイルを作成しません。代わりに、NTFSトランザクションを使用して既存のDLLの内容を仮想的に置き換えます。これは、@_ForrestOrrの研究から直接着想を得た手法です(クレジット参照)。

このツールはDoSを引き起こす可能性がありますか?

簡単に答えると「いいえ」です。まず、直接的なカーネルアクセスを伴わないため、その観点からBSODを引き起こすリスクはありません。最悪の場合、作成したKnown DLLエントリの削除に失敗する可能性がありますが、これはサービス拒否を引き起こしません。次のマシン再起動までそのまま残ります。作成されたエントリは存在しないセクションを指すシンボリックリンクに過ぎないため、システムは最終的にデフォルトの場所(つまり System32 フォルダ)にフォールバックするため、マシン上で実行されている他のプログラムには影響しません。

テスト

⚠️ 完全に更新されたWindows 8.1 / Server 2012 R2マシンではエクスプロイトが失敗します。どのパッチが原因かはまだ特定できていません。

root@kitploit:~
[-] DefineDosDevice failed with error code 6 - The handle is invalid.

⚠️ Windows 8.1 / Server 2012 R2では、バイナリを静的にコンパイルする必要がある場合もあります(下記の「ビルド手順」を参照)。

ビルド手順

このVisual Studioソリューションは2つのプロジェクト(実行可能ファイルとペイロードDLL)で構成されており、特定の順序でコンパイルする必要があります。すべて事前設定されているため、以下の簡単な手順に従うだけです。コンパイルされたペイロードDLLは、最終的な実行可能ファイルに自動的に埋め込まれます。

  1. Visual Studio 2019でソリューションを開きます。
  2. ターゲットマシンのアーキテクチャに応じて、Release / x64 または Release / x86 を選択します。
  3. ビルド > ソリューションのビルド を選択します。

Windows 8.1 / Server 2012 R2では、バイナリを静的にコンパイルする必要がある場合があります。

  1. PPLdump プロジェクトを右クリックします。
  2. 構成プロパティ > C/C++ > コード生成 に移動します。
  3. ランタイム ライブラリ オプションとして マルチスレッド (/MT) を選択します。
  4. ソリューションをビルドします。

クレジット

  • @tiraniddo - Windows Exploitation Tricks: Exploiting Arbitrary Object Directory Creation for Local Elevation of Privilege
    https://googleprojectzero.blogspot.com/2018/08/windows-exploitation-tricks-exploiting.html
  • @_ForrestOrr - Masking Malicious Memory Artifacts – Part I: Phantom DLL Hollowing
    https://www.forrest-orr.net/post/malicious-memory-artifacts-part-i-dll-hollowing
ツールをダウンロード
Windows バージョンビルドエディションアーキテクチャ管理者SYSTEM
Windows 10 20H219042Prox64✔️✔️
Windows 10 20H219042Prox86✔️✔️
Windows 10 190918363Prox64✔️✔️
Windows 10 150710240Educationalx64✔️✔️
Windows 10 150710240Homex64✔️✔️
Windows 10 150710240Prox64✔️✔️
Windows Server 201917763Standardx64✔️✔️
Windows Server 201917763Essentialsx64✔️✔️
Windows 8.19600Prox64⚠️⚠️
Windows Server 2012 R29600Standardx64⚠️⚠️