Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
LdrLockLiberator — DLLMainが唯一の方法である場合のために | Kitploit
ツール/GitHubGitHub/elliotkillick/ldrlockliberator
永続化メカニズムエクスプロイトポストエクスプロイトレッドチーミングペイロード開発
GitHubelliotkillick/ldrlockliberator

LdrLockLiberator

DLLMainが唯一の方法である場合のために

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

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
ウェブサイト
ロゴ

LdrLockLiberator

DLLMain が唯一の方法である場合に

LdrLockLiberator は、DllMain またはロックが存在する場所からコードを実行する際に、Loader Lock を回避または放棄するためのテクニック集です。これは、「Perfect DLL Hijacking」 の記事と併せてリリースされました。ライブラリ ローダーのロックを解除し、あなたのローダー(自分のコンピューター上で)を好きなように操作するための鍵を提供します!

これらのテクニックは、可能な限り普遍的で、クリーンで、100%安全であることを意図しています。メモリ保護やポインターを変更せずに動作するように設計されています。これは、最新のエクスプロイト緩和機能との互換性を維持するために重要です。公式にサポートされているアーキテクチャは x86-64 のみです(32ビットはほぼ絶滅しています)。

Windows で DllMain が非常に厄介なのに、Unix ライクなオペレーティングシステムではここで苦労しない理由をアーキテクチャの観点から知りたいですか? どうぞ、ご覧ください!。

テクニック

LdrFullUnlock

名前の通りです。Loader Lock を解除し、ローダー イベントを設定し、LdrpWorkInProgress を切り替えます。最良の安定性を得るには、RUN_PAYLOAD_DIRECTLY_FROM_DLLMAIN を未定義のままにすることをお勧めします。

本番コードではこのテクニックを使用しないでください。 これは、私の純粋な好奇心と、徹底的に調べ尽くそうとする意志の副産物として作成されました。このコードを使用して行うすべてのことは自己責任です。

終了時の脱出

私たちは、プログラムの終了時に Loader Lock から逃れるために、通常は EXE で使用される CRT の atexit を DLL コードで使用します。動的読み込み(LoadLibrary を使用)の場合、LdrAddRefDll を使用してライブラリをピン留め(LDR_ADDREF_DLL_PIN)することで、後続の FreeLibrary が DLL をメモリから削除しないようにして、100%安全になります。

ロックを有利に利用する

近日公開!

サンプル

提供されているサンプルは、C:\Program Files\Windows Defender\Offline\OfflineScannerShell.exe の MpClient.dll をハイジャックします。このサンプルを他の DLL とプログラムの組み合わせに簡単に適応させるための手順は、ソースコードのコメントに記載されています(主に静的読み込み用のエクスポートを更新するだけです)。

概念実証として、ShellExecute をデフォルトのペイロードとして実行します。ただし、これを好きなように動作させることができます!

コンパイル

Visual Studio

このプロジェクトのルートにある LdrLockLiberator.c は、Visual Studio 2022 でコンパイルできることが確認されています。

NTDLL にリンクするには、ソリューション エクスプローラー ウィンドウで現在の Visual Studio プロジェクトを選択し、メニューバーの Project > Properties に移動します。上部の Configuration ドロップダウン メニューから All Configurations と All Platforms を選択します。次に、Linker > Input に移動し、Additional Dependencies に ntdll.lib を追加します。

WDK

正しい WDK のインストール

  1. WDK ダウンロードページ に移動します。
  2. Windows 7 の WDK 7.1.0 リンクをクリックして、正しい WDK バージョンのダウンロードを開始します。
  • これは、元の MSVCRT(C:\Windows\System32\msvcrt.dll)へのリンクを公式にサポートする最後の公開 WDK です。
  • SHA-256 チェックサム: 5edc723b50ea28a070cad361dd0927df402b7a861a036bbcf11d27ebba77657d
  1. ダウンロードした ISO をマウントし、KitSetup.exe を実行します。
  2. 既定のオプションを使用して、インストール プロセスをクリックして進めます。

コンパイル

  1. スタート メニューで「x64 Free Build Environment」を検索して開きます。
  2. このリポジトリの LdrLockLiberatorWDK に(cd を使用して)移動します。
  3. build を実行します。

完了です! DLL がビルドされ、使用できる状態になりました!

WDK の代替として、MinGW でのコンパイルもおそらく機能します。

ライセンス

MIT License - Copyright (C) 2023-2024 Elliot Killick [email protected]

ツールをダウンロード