WMI and WinRM
في هذه الصفحة
Remote and local management: WMI activity and subscriptions, WinRM sessions.
wmi_activity
WMI activity (historical). WMI recorded this at the record's time (WMI-Activity): a provider DLL loaded into its host (5857), a client's operation that failed (5858) or a client's temporary subscription (5860) - with the client's computer and account as WMI wrote them. WMI does not log what succeeded
Kind | Event - something that happened at a time |
Its time is | event logged |
Built-in rules reading it | 3 |
Fields of wmi_activity
Field | Type | Meaning |
|---|---|---|
| string | What the WMI-Activity record is: provider loaded (5857), client operation failed (5858) or temporary subscription (5860). WMI does not log an operation that succeeded: a client's queries and method calls are seen only when they fail. |
| string | The WMI provider WMI loaded (5857): its registered name. |
| string | The provider's DLL as WMI recorded it (5857) - with its %variables% as written. |
| string | Where the provider's DLL is: "Windows folder", "Program Files", "Microsoft's ProgramData folder" (Defender's platform, Visual Studio's setup) or "elsewhere" - a folder providers are not installed to, such as a profile, Temp or ProgramData. |
| string | The process the provider was loaded into (5857), usually WmiPrvSE.exe, with its PID. |
| string | The client's operation that failed (5858): the call, its namespace and its query or method, e.g. "Start IWbemServices::ExecQuery - root\cimv2 : SELECT ...". |
| string | WMI's result code for the failed operation (5858), e.g. 0x80041003 access denied, 0x8004100C not supported. |
| string | The WMI namespace of a temporary subscription (5860). |
| string | The event filter's query: what event triggers the subscription (a time, a logon, a process start...). |
| string | The computer the WMI client ran on (5858, 5860), as WMI recorded it - this host's name for a local client. |
| bool | Whether the client ran on another computer than this one (its name is not the host's, localhost or a loopback address). |
| string | The account the WMI client ran as (5858, 5860), as WMI recorded it. |
| string | The client process's ID (5858, 5860) - of a process on the client's computer. |
| string | The account's SID - its identity across renames and hosts (a domain account has the same SID everywhere). Timeless, unlike process.pid, so it needs no companion time; the evidence types that carry it name their instances by it (evidence.Type.Identity). |
wmi_subscription
WMI subscription (now). this permanent WMI event subscription exists now: when its filter's event happens, its consumer acts - for a CommandLine or ActiveScript consumer, by running code
Kind | State - something true when Signal read the host |
Built-in rules reading it | 1 |
Fields of wmi_subscription
Field | Type | Meaning |
|---|---|---|
| string | A WMI subscription's event filter: its name. |
| string | The event filter's query: what event triggers the subscription (a time, a logon, a process start...). |
| string | The subscription's consumer: its class and name, e.g. CommandLineEventConsumer.Name="x". CommandLine and ActiveScript consumers run code; the others log or mail. |
| string | What the entry runs, exactly as configured (environment variables unexpanded); a task's actions joined by "; ". |
| string | Every source the entry was read from, e.g. "TaskCache registry, task XML file, Task Scheduler (WMI)". |
wmi_subscription_created
WMI subscription registered (historical). a permanent WMI event subscription was registered at the record's time (WMI-Activity 5861); where Sysmon is installed, its filter, consumer and binding as each was registered (Sysmon 19, 20, 21 - the consumer with what it runs)
Kind | Event - something that happened at a time |
Its time is | event logged |
Built-in rules reading it | 1 |
Fields of wmi_subscription_created
Field | Type | Meaning |
|---|---|---|
| string | A WMI subscription's event filter: its name. |
| string | The event filter's query: what event triggers the subscription (a time, a logon, a process start...). |
| string | The subscription's consumer: its class and name, e.g. CommandLineEventConsumer.Name="x". CommandLine and ActiveScript consumers run code; the others log or mail. |
| string | What the entry runs, exactly as configured (environment variables unexpanded); a task's actions joined by "; ". |
| time | When a log record was written (its TimeCreated). |
winrm_session
WinRM session (historical). a WinRM session was opened at the record's time, as this account: from this host to the peer (WinRM 6), or a shell created on this host for a client (WinRM 91) - remote PowerShell and other remote management; not what was run in it
Kind | Event - something that happened at a time |
Its time is | event logged |
Built-in rules reading it | 2 |
Fields of winrm_session
Field | Type | Meaning |
|---|---|---|
| string | outbound - this host opened a WinRM session to another (WinRM 6, the client side); inbound - a shell was created on this host for a client (WinRM 91, the server side). |
| string | The computer an outbound session went to, from its connection string. An inbound record does not name the client: its address is in the Security log's network logon (4624 type 3) of the same moment. |
| string | What the session was for: an outbound session's connection string (address, port, PowerShell version); an inbound shell's resource URI (the endpoint, e.g. Microsoft.PowerShell). |
| bool | Whether an outbound session went to this host itself (its own name, localhost or a loopback address) - local management, not a move to another host. |
| string | The account's SID - its identity across renames and hosts (a domain account has the same SID everywhere). Timeless, unlike process.pid, so it needs no companion time; the evidence types that carry it name their instances by it (evidence.Type.Identity). |
| string | What the account is: person, default (a local account Windows creates), service, virtual, anonymous, group or computer. |