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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Phant0m — Windowsイベントログキラー | Kitploit
ツール/GitHubGitHub/hlldz/phant0m
ポストエクスプロイトペネトレーションテストコマンド&コントロールレッドチーミングArchived
GitHubhlldz/phant0m

Phant0m

Windowsイベントログキラー

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Phant0m

Phant0m | Windows イベントログ キラー

Svchost は、いわゆる共有サービスプロセスの実装に不可欠です。このプロセスでは、複数のサービスが単一のプロセスを共有してリソース消費を削減できます。複数のサービスを1つのプロセスにグループ化することで、コンピューティングリソースを節約できます。これは、Windows プロセスの作成にかかる時間と消費メモリが他のオペレーティングシステム(例:Unix ファミリー)よりも多いため、NT 設計者にとって特に重要な考慮事項でした。1

つまり、簡単に言うと、Windows オペレーティングシステムでは、svchost.exe がサービスを管理し、サービスは実際には svchost.exe のスレッドとして実行されています。Phant0m はイベントログサービスを標的とし、そのサービスを担当するプロセスを特定して、イベントログサービスを担当するスレッドを検出し、強制終了します。その結果、Phant0m はプロセスを終了しないため、システム上でイベントログサービスは実行中のように見えますが、実際には(スレッドが強制終了されたため)動作しておらず、システムはログを収集しません。

動作の仕組みと使用方法

Phant0m - 実行フロー

イベントログサービスの検出

Phant0m は、イベントログサービスのプロセス ID を検出するために2つの異なる方法を使用します。1つ目は SCM(サービスコントロールマネージャー)を介した検出、2つ目は WMI(Windows Management Instrumentation)を介した検出です。Phant0m にイベントログサービスのプロセス ID をどの方法で検出させるかを、main.cpp ファイル内の以下の行を変更して指定します。

例えば、SCM を介してプロセス ID を検出したい場合は、次のように編集します(すべての値を同時に設定せず、使用したい手法のみを設定してください)。

root@kitploit:~
// PID 検出技術の設定セクション。
#define PID_FROM_SCM 1 // 1 に設定すると、イベントログサービスの PID がサービスマネージャーから取得されます。
#define PID_FROM_WMI 0 // 1 に設定すると、イベントログサービスの PID が WMI から取得されます。

例えば、Technique-1 を使用してスレッドを強制終了したい場合は、次のように編集します(すべての値を同時に設定せず、使用したい手法のみを設定してください)。

root@kitploit:~
// TID 検出および強制終了技術の設定セクション。
#define KILL_WITH_T1 1 // 1 に設定すると、Technique-1 が使用されます。詳細: https://github.com/hlldz/Phant0m
#define KILL_WITH_T2 0 // 1 に設定すると、Technique-2 が使用されます。詳細: https://github.com/hlldz/Phant0m

スレッドの検出と強制終了

Phant0m は、イベントログサービスのスレッドを検出して強制終了するために、2つの異なる方法を使用します。

Technique-1

Windows Vista 以降を実行しているマシンに各サービスが登録されると、サービスコントロールマネージャー(SCM)はそのサービスに一意の数値タグを(昇順で)割り当てます。そして、サービスの作成時に、そのタグがメインサービススレッドの TEB に割り当てられます。このタグは、その後、メインサービススレッドによって作成されたすべてのスレッドに伝播されます。例えば、Foo サービスのスレッドが RPC ワーカースレッドを作成した場合(注:RPC ワーカースレッドはスレッドプールメカニズムを使用しません。詳細は後述)、そのスレッドには Foo サービスのサービスタグが設定されます。2

つまり、この手法では、Phant0m は NtQueryInformationThread API を使用してスレッドの TEB アドレスを取得し、TEB から SubProcessTag を読み取ることで、イベントログサービスのスレッドを検出します。その後、イベントログサービスに関連するスレッドを強制終了します。この手法のコードは technique_1.h ファイルにあります。

Technique-2

この手法では、Phant0m はスレッドに関連付けられた DLL の名前を検出します。Windows イベントログサービスは wevtsvc.dll を使用します。完全なパスは %WinDir%\System32\wevtsvc.dll です。スレッドがその DLL を使用している場合、それは Windows イベントログサービスのスレッドであり、Phant0m はそのスレッドを強制終了します。この手法のコードは technique_2.h ファイルにあります。

使用方法

Phant0m は、スタンドアロンの EXE としても、リフレクティブ DLL としても使用できます。Microsoft Visual Studio でプロジェクトを開き、設定(検出および強制終了手法の選択)を行ってコンパイルしてください。リフレクティブ DLL バージョンは Cobalt Strike でも使用できます。そのための Aggressor Script ファイル(phant0m.cna)がリポジトリに含まれています。

Phant0m - Cobalt Strike

Cobalt Strike 用の Aggressor Script(phant0m.cna)の実行タイプでは、bdllspawn を使用した Fork and inject メソッドが使用されています。Phant0m を既存のプロセスにインジェクションして実行したい場合は、このプロジェクト(https://github.com/rxwx/cs-rdll-ipc-example)を参照すると簡単に実現できます。また、コードを DLL に変換し、さらに Donut を使用してシェルコードに変換することもできます。

注意:このプロジェクトは x64 アーキテクチャのみをサポートしています。


Phant0m に言及してくれた方々への特別な感謝

  • Detecting in-memory attacks with Sysmon and Azure Security Center - https://azure.microsoft.com/tr-tr/blog/detecting-in-memory-attacks-with-sysmon-and-azure-security-center/
  • Experiments with Invoke-Phant0m - http://www.insomniacsecurity.com/2017/08/27/phant0m.html
  • Event Log Tampering Part 1: Disrupting the EventLog Service - https://medium.com/@7a616368/event-log-tampering-part-1-disrupting-the-eventlog-service-8d4b7d67335c
  • Flying under the radar - https://www.exploit-db.com/docs/english/45898-flying-under-the-radar.pdf?rss
  • Denetim ve Log'lamanın Elli Tonu - https://gallery.technet.microsoft.com/Denetim-ve-Loglamann-Elli-cbed0000
  • Disabling Windows Event Logs by Suspending EventLog Service Threads - https://www.ired.team/offensive-security/defense-evasion/disabling-windows-event-logs-by-suspending-eventlog-service-threads
  • Event Log Service – Between Offensive And Defensive - https://blog.cybercastle.io/event-log-service-between-offensive-and-defensive/
  • Hunting Event Logging Coverup - https://malwarenailed.blogspot.com/2017/10/update-to-hunting-mimikatz-using-sysmon.html
  • Defense Evasion: Windows Event Logging (T1562.002) - https://hacker.observer/defense-evasion-windows-event-logging-t1562-002/
  • Pwning Windows Event Logging with YARA rules - https://labs.jumpsec.com/pwning-windows-event-logging-with-yara-rules/
  • Various Notes - Incidence Response on Attacker Tricks for EventLog - https://hannahsuarez.github.io/2019/IncidentResponseNotes-Attackers-EventLog/
ツールをダウンロード