Remote access
On this page
Remote access tools, their sessions and transfers, and Windows' own ways in.
remote_tool
remote access tool (installed, run or its files). this remote access product is on this host or was - installed, run, or its own files left - as each source in remote.sources records it: what it can do and, from its logs, what it was used for; not who used it, nor whether its use was approved (remote.allowed, when the analyst gives the list)
Kind | State - something true when Signal read the host |
Built-in rules reading it | 14 |
Fields of remote_tool
Field | Type | Meaning |
|---|---|---|
| string | The remote access product, by Signal's catalog name (internal/remotetools) - the same name on every host. |
| string | What kind of product it is: remote control, remote support (a person invited to connect), or an RMM agent (an organisation's management console reaches the host through it). |
| string | How it is on the host: installed (an installation record, a service, its install folder), portable (it ran, or left its files, from outside any install location with no installation), installed and portable (both - a second copy beside the installed one), or traces only (its configuration or logs remain; no program and no installation was found). |
| string | What records it as installed, each place named: an installed application (with its install date and for whom), a service (its program and start type), its install folder (with the folder's creation time); absent when nothing does. |
| string | Each copy that ran or left its files outside an install location: its path, the kind of folder (a user's Downloads, Desktop, temporary folder, a share ...), who ran it, how many runs and when, and whether the file is still there. |
| string | Every program file of the product found - installed or portable - separated by "; ". |
| string | How each part was recognised as the product: an installed application's name, a service's name, its version resource (what the program says it is, whatever its file is called), its file name only (a lead - the file could not be read or says nothing), its own folders. |
| string | Copies whose version resource names the product while their file name is not one of the product's: the file was renamed after it was built - with the name its version resource gives. |
| string | The signature of each program file found, as Windows checks it: the signer, valid or not, or unsigned - and whether the signer is the product's vendor. |
| string | The accounts it ran as, from each source that records one (a run's user, a running process's token, a service's account). |
| string | Its services: name, program, start type, account, state. |
| string | A service of the product whose program is in a user's folder, a temporary folder or ProgramData's root - where no installer puts a service - with its path. |
| string | Its processes running when Signal read the process table: program, PID, account, start time. |
| time | The earliest time any source records it: an install date, a folder's creation, a run, a log line. Earlier presence may have left no record. |
| time | The latest time any source records it in use: a run, a log line, a running process. |
| bool | true when it was first seen inside the period the analyst gave (the profile's window); absent when no period was given. |
| string | The product's own ID for this host - what someone connecting to it enters - from its configuration, with the file or key it is in. |
| string | The name the product shows for this host, from its configuration. |
| string | The account signed in to the product or that enrolled it (an e-mail address, a console account), from its configuration - who controls it from the vendor's side. |
| string | The organisation, company or group the product is enrolled to, from its configuration. |
| string | The server the product is configured to report to, from its configuration or its service's command line. |
| bool | true when remote.server is not one of the vendor's own servers - an organisation's own server, or someone's; absent when the product has no vendor servers to compare with, or no server is configured. |
| string | "set" when its configuration holds an unattended access password or key - someone can connect without a person at the host accepting - with the file or key and its last write; the value itself is never read into the output. Absent when none was found (or the product's configuration is not read). |
| string | The registry key that makes one of its services start in Safe Mode with networking (SafeBoot\Network), with its last write - where most security software does not run. |
| string | Its own log files read, each with its size, what was read of it and the span of its lines; or that Signal does not read this product's logs yet. |
| string | When its logs cannot tell the whole story: "no log found" though it ran or is installed, "log empty", or "log begins after its first run" (with both times) - a log removed or trimmed by whoever used it, or one the product never wrote; absent when its logs cover its known use, or Signal does not read this product's logs. |
| string | The sessions its logs record: how many incoming and outgoing, from how many peers, over what span. |
| string | The other sides its logs record, by the product's ID for them, with their names and session counts. |
| string | Command shells and system tools the product's own processes started (a process's parent): each with its time, account and command line where recorded - what someone did through it. |
| string | Downloads of its program the browsers recorded: from where, when, to which path. |
| string | Auto-start entries and scheduled tasks that run its program. |
| string | Evidence it was removed: Windows Installer's removal (with the account and time), or a program found by its runs that is no longer on disk. |
| string | Every remote access product found on the host, this one included, separated by ", " - the same on each of them. |
| string | Whether the analyst's approved list (the profile's modules.RemoteAccess.approved_tools) includes it: "yes - <entry>" or "no"; absent when no list was given (authorization unknown). |
| string | Its address book as its configuration records it: the IDs the local user saved - peers the user, or whoever used the account, meant to reach again. |
| string | Where it listens for connections, from its configuration (a port). |
| string | "set" when its configuration holds an account token it connects with (a tunnel's), with where - who it connects as at the vendor; the token itself is never read into the output. |
| string | Every place that records the product on this host, separated by "; ". |
remote_session
remote access session (the tool's log). the product's own log records this session at this time - its direction, the other side's ID and name, and how it was allowed as the product words them; what the log kept (a user or an intruder can delete or trim it), not who sat at the other side
Kind | Event - something that happened at a time |
Its time is | session started (the tool's log) |
Built-in rules reading it | 1 |
Fields of remote_session
Field | Type | Meaning |
|---|---|---|
| string | The remote access product, by Signal's catalog name (internal/remotetools) - the same name on every host. |
| string | incoming (someone connected to this host) or outgoing (this host connected to another), as the product's log records it. |
| time | When the session began, by the product's log - in UTC; a log written in the host's local time is converted with the host's current zone (a daylight saving change since may shift it by an hour). |
| time | When it ended: the product's own record of it, or the first session close its log records after the start (and before the next session); absent when none is recorded. |
| string | How long it lasted (end - start); "end not recorded" without an end. |
| string | The product's ID for the other side - the same whichever host it connects to, so the same ID on several hosts is one remote party. |
| string | The name the other side gave itself, as the log records it - chosen by that side. |
| string | The address the product recorded for the connection, on the session's own line or within two minutes of its start - the other side's, or the vendor's relay it came through; session.address_scope says whether it is public. |
| string | public, private, shared (carrier-grade NAT), loopback, link-local or multicast. |
| string | The Windows account of the session, as the log records it, else the profile the log is in. |
| string | How the session was allowed, as the product records it, in words: accepted by the user at the screen, the unattended access password, a saved login token, rejected. |
| string | The kind of session, as the product records it (remote control, file transfer, VPN ...). |
| string | The log file (and its profile) the session was read from. |
| string | The file transfers the product's logs record during the session, by direction, with up to ten files. |
| bool | true when it began inside the period the analyst gave (the profile's window); absent when no period was given. |
remote_transfer
file transfer (the remote access tool's log). the product's own log records this file moved through it at this time, in the direction its words give; not that the file was opened or run, nor its content
Kind | Event - something that happened at a time |
Its time is | transfer logged (the tool's log) |
Built-in rules reading it | 2 |
Fields of remote_transfer
Field | Type | Meaning |
|---|---|---|
| string | The remote access product, by Signal's catalog name (internal/remotetools) - the same name on every host. |
| string | What the log says was done with the file, in its words or what they mean ("sent from this host", "written to this host", "download", "upload") - a word such as download is the product's, and which side downloaded is as the product means it. |
| string | The file, as the log records it: a full path, or only its name. |
| string | Its size, as the log records it. |
| string | How it was moved, as the log records it (through the clipboard, the file manager ...). |
| string | The product's ID for the other side - the same whichever host it connects to, so the same ID on several hosts is one remote party. |
| string | The log file (and its profile) the session was read from. |
| string | Runs of a program with the transferred file's name, after the transfer (Executions' records) - by name, so a lead to confirm by path. |
| bool | true when it happened inside the period the analyst gave (the profile's window); absent when no period was given. |
remote_setting
Windows remote access setting (now). this setting is configured on this host now, as recorded - what it allows, not that anyone used it, nor when or by whom it was set (remote.path_changed is the last write of where it is kept)
Kind | State - something true when Signal read the host |
Built-in rules reading it | 6 |
Fields of remote_setting
Field | Type | Meaning |
|---|---|---|
| string | Which of Windows' own ways in a setting is: a port forward (netsh portproxy), an SSH key authorized for the administrators or a user, a WinRM listener, WinRM accepting unencrypted traffic, the WinRM client trusting every host, Remote Assistance (offered or solicited help), Remote Desktop shadowing without consent. |
| string | The setting, as configured: a forward's listening and target address and port, a key's type, comment and SHA-256 fingerprint (never the key), a listener's address and transport, a value's data. |
| string | What the setting allows, in words, and its options (an authorized key's restrictions, the WinRM service's state). |
| string | For a port forward, the kind of the address it forwards to: public, private, loopback ... |
| time | When the key or file holding it was last written - the setting's change or another one beside it. |
| string | The account it is for (a user's authorized keys); absent for the machine. |
remote_app_event
remote access tool's event (Windows event log). this program wrote this event to the log at the record's time - its message as the program wrote it
Kind | Event - something that happened at a time |
Its time is | event logged |
Built-in rules reading it | 0 |
Fields of remote_app_event
Field | Type | Meaning |
|---|---|---|
| string | The component that wrote a log record (its provider), e.g. "Service Control Manager". One event ID means different things from different providers in the same log - System event 104 is a log clear from Microsoft-Windows-Eventlog and a smart-card reader's status from a driver - so a rule over an ID names its provider too. |
| int | The Windows event ID of one log record - 1102 (log cleared), 4719 (audit policy changed), 521 (audit log could not be written), and so on. The per-event matching field a rule uses to say "did this specific event happen", as opposed to log.event_count's aggregate "how many events total". |
| string | The event's message data as the tool wrote it (its data fields joined), read by the catalog's patterns for the product. |