hacktricks/forensics/basic-forensic-methodology/windows-forensics/windows-processes.md

8.5 KiB
Raw Blame History

ゼロからヒーローまでのAWSハッキングを学ぶ htARTEHackTricks AWS Red Team Expert

HackTricksをサポートする他の方法

smss.exe

セッションマネージャ
セッション0はcsrss.exewininit.exeOSサービスを開始し、セッション1はcsrss.exewinlogon.exeユーザーセッション)を開始します。ただし、プロセスツリー内でそのバイナリのプロセスが1つだけ表示されるはずです。

また、セッション0と1以外のセッションが存在する場合、RDPセッションが発生している可能性があります。

csrss.exe

クライアント/サーバー実行サブシステムプロセス
プロセススレッドを管理し、他のプロセスにWindows APIを利用可能にし、ドライブレターをマップし、一時ファイルを作成し、シャットダウンプロセスを処理します。

セッション0とセッション1でそれぞれ1つずつ実行されていますプロセスツリーには2つのプロセスがあります)。新しいセッションごとに別のプロセスが作成されます。

winlogon.exe

Windowsログオンプロセス
ユーザーのログオン/ログオフに責任があります。ユーザー名とパスワードを求めるためにlogonui.exeを起動し、その後lsass.exeを呼び出します。

その後、HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinlogonUserinitキーで指定されたuserinit.exeを起動します。

さらに、前述のレジストリにはShellキーexplorer.exeがあるはずであり、それがマルウェアの永続化手法として悪用される可能性があります。

wininit.exe

Windows初期化プロセス
セッション0でservices.exelsass.exelsm.exeを起動します。1つのプロセスしか存在すべきです。

userinit.exe

Userinitログオンアプリケーション
HKCUntduser.datを読み込み、ユーザー環境を初期化し、ログオンスクリプトGPOを実行します。

explorer.exeを起動します。

lsm.exe

ローカルセッションマネージャ
smss.exeと協力してユーザーセッションを操作しますログオン/ログオフ、シェルの開始、デスクトップのロック/アンロックなど。

W7以降、lsm.exeはサービスlsm.dllに変換されました。

W7では1つのプロセスしか存在すべきであり、そのうち1つはDLLを実行するサービスです。

services.exe

サービス制御マネージャ
自動起動およびドライバとして構成されたサービスロードします。

svchost.exedllhost.exetaskhost.exespoolsv.exeなどの親プロセスです。

サービスはHKLM\SYSTEM\CurrentControlSet\Servicesで定義され、このプロセスはサービス情報のメモリ内DBを維持し、sc.exeによってクエリできます。

一部のサービス独自のプロセスで実行され、他のサービスはsvchost.exeプロセスを共有することになります。

1つのプロセスしか存在すべきです。

lsass.exe

ローカルセキュリティ機関サブシステム
ユーザーの認証を担当し、セキュリティトークンを作成します。HKLM\System\CurrentControlSet\Control\Lsaにある認証パッケージを使用します。

セキュリティ イベントログに書き込み、1つのプロセスしか存在すべきです。

このプロセスはパスワードをダンプするために攻撃されやすいことに注意してください。

svchost.exe

汎用サービスホストプロセス
複数のDLLサービスを1つの共有プロセスでホストします。

通常、svchost.exe-kフラグを付けて起動されます。これにより、レジストリHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchostにクエリが送信され、-kで言及された引数を含むキーがあり、同じプロセスで起動するサービスが含まれます。

たとえば:-k UnistackSvcGroupは、PimIndexMaintenanceSvc MessagingService WpnUserService CDPUserSvc UnistoreSvc UserDataSvc OneSyncSvcを起動します。

-sフラグも引数とともに使用される場合、svchostに対してこの引数で指定されたサービスのみを起動するように要求されます。

svchost.exeの複数のプロセスが存在します。-kフラグを使用していない場合、非常に疑わしいです。親プロセスがservices.exeでない場合も非常に疑わしいです。

taskhost.exe

このプロセスは、DLLから実行されているプロセスのホストとして機能します。また、DLLから実行されているサービスをロードします。

W8ではtaskhostex.exeと呼ばれ、W10ではtaskhostw.exeと呼ばれます。

explorer.exe

これはユーザーのデスクトップを担当し、ファイル拡張子を介してファイルを起動します。

ログオンユーザーごとに1つのプロセスが生成されるはずです。

これはuserinit.exeから実行されるため、このプロセスの親は表示されないはずです。

悪意のあるプロセスの検知

  • 期待されるパスから実行されていますかWindowsバイナリは一時フォルダから実行されません
  • 奇妙なIPアドレスと通信していますか
  • デジタル署名を確認してくださいMicrosoftの成果物は署名されているはずです
  • 正しくスペルされていますか?
  • 期待されるSIDで実行されていますか
  • 親プロセスは期待されるものですか(存在する場合)?
  • 子プロセスは期待されるものですかcmd.exe、wscript.exe、powershell.exeなどはありませんか
ゼロからヒーローまでのAWSハッキングを学ぶ htARTEHackTricks AWS Red Team Expert

HackTricksをサポートする他の方法