How the Universal Sensor Works
This article explains what the SenseOn Universal Sensor does on an endpoint after installation, how data flows from the host to the SenseOn analysis platform, and what controls are in place to protect that data. It is aimed at security teams reviewing SenseOn, compliance teams documenting data flows, and sysadmins who want to understand the agent running on their estate.
At a Glance
The Universal Sensor is a host-resident agent that collects security telemetry from endpoints (Windows, macOS, and Linux), processes it locally for early signal extraction, and forwards it to the SenseOn analysis platform over a mutually-authenticated TLS connection. It can also act on the endpoint when instructed, for example to isolate a host from the network, terminate a process, or run a forensic script as part of Active Response.
Key characteristics:
- Outbound-only network model. The sensor does not listen on any inbound port. All communication is initiated from the endpoint to your tenant's SenseOn domain.
- Latest version installed automatically. Install commands always fetch the latest published Universal Sensor build. Specific versions can be pinned per Device Segment after install.
- Mutual TLS to a known set of hostnames. Endpoints communicate with
*.snson.netand a small number of supporting AWS S3 buckets. See Connectivity Requirements for the full list. - Local buffering when offline. Telemetry is buffered on disk if the endpoint cannot reach the analysis platform, then uploaded when connectivity returns.
Process Model
After installation, the following processes run on a Universal Sensor v7+ endpoint:
| Process | Role |
|---|---|
senseon-seed (service) |
The main Seed Service. Coordinates the sensor lifecycle, manages configuration, and supervises the other components. |
senseon-agent (Windows) / senseon-see (macOS / Linux) |
The telemetry collection process. Reads OS-level events (process activity, network connections, file changes, authentication, etc.) and forwards them to the broker. |
senseon-bootstrapper |
Handles install-time tasks and the post-install handshake with the SenseOn platform. After bootstrap, it monitors for new sensor versions and applies updates. |
senseon-logger |
Captures local diagnostic and health logs for the sensor itself, separate from security telemetry. |
senseon-broker |
Mediates between the collection process and the network upload path. Performs local buffering and rate limiting. |
On Linux, each process runs under a dedicated senseon-epns system user where the OS supports it, with privilege escalation only where required for specific telemetry sources (for example raw socket access for network capture).
Service Names
| OS | Service identifier | Where to view it |
|---|---|---|
| Windows | senseon-seed |
Services console (services.msc) |
| Linux | senseon-seed.service |
systemctl status senseon-seed.service |
| macOS | com.senseon.see (LaunchDaemon) |
sudo seectl status |
Data Flow
The high-level data flow from a host to the SenseOn analysis platform is:
+----------------------+ +-----------------+ +-----------------+
| OS-level events & | | Local broker & | | SenseOn |
| network observations | ---> | on-disk buffer | ---> | analysis |
| collected by agent | | (encrypted) | | platform |
+----------------------+ +-----------------+ +-----------------+
|
v
+-----------------+
| Local detection |
| rules (EPP / |
| inline actions) |
+-----------------+
Collection
The agent collects telemetry from the operating system via native APIs and, on Linux, via eBPF where available. Collected categories include:
- Process telemetry — process creation, parent / child relationships, command line, executable hash, code signature status
- Network telemetry — TCP / UDP connections, DNS lookups, and TLS metadata. The sensor inspects a broad set of common application-layer protocols (for example HTTP, DNS, TLS, SMB, Kerberos, LDAP, SSH, and FTP) and writes the metadata it extracts from each. Packet payloads are not transmitted to the platform. On Linux without eBPF support, network telemetry is unavailable and only process telemetry is collected. See Endpoint Requirements for details.
- File telemetry — file create, modify, delete, and rename events for paths covered by the active detection set. Some of these events are analysed by local detection and EPP rules at the moment they occur, but not every observed file event is retained as telemetry on the platform. The retention scope is determined by the active detection set and the segment configuration applied to the device.
- Authentication telemetry — logon events, account changes, privilege use
- Endpoint Protection (EPP) telemetry — antivirus / antimalware scan results where EPP is enabled. See Endpoint Protection.
Local processing
Before upload, the broker:
- Deduplicates highly repetitive events
- Runs Endpoint Protection (EPP) rules locally so that file and process-level malware decisions are made on-host without waiting for the cloud
- Applies a subset of detection rules locally, including the rules used by Reflex, so that high-confidence detections trigger automated actions without round-tripping through the cloud
- Compresses telemetry batches
- Buffers batches on disk while awaiting upload
Cloud-side analytics still run on the full telemetry once it arrives at the platform, so local processing is additive rather than a replacement.
Upload
Telemetry is uploaded over mutually-authenticated TLS 1.2 or higher to your tenant's SenseOn analysis platform on *.snson.net. The sensor presents a client certificate provisioned during installation, and validates the platform's server certificate against a pinned set of acceptable signers.
If outbound connectivity is unavailable, telemetry continues to be collected and buffered on disk locally. When connectivity returns, the broker drains the buffer in order. See Long Term Telemetry Retention for how the platform retains data on the cloud side after upload.
If TLS interception is in place on your network, you must add *.snson.net to the interception bypass list, otherwise mutual TLS authentication will fail. See TLS Interception.
Security Model
Trust establishment
Each endpoint is provisioned with a unique identity at install time:
- The installer key (
SENSEON_INSTALLER_KEY) is used once during the install handshake to authenticate the endpoint to your tenant. It does not need to be retained on the host after install. - During the handshake, the platform issues the endpoint a client TLS certificate and private key. These are stored at OS-specific paths under
/etc/senseon-see/(Linux),/var/senseon-see/(macOS), andC:\Program Files\senseon-see\(Windows). - A
precise.uuidfile is generated locally and identifies the host across restarts. See Golden Images for how this interacts with cloned VMs.
Inbound exposure
The Universal Sensor does not open any inbound listening ports, and does not expose a localhost-only IPC listener to other local processes either. All communication to the SenseOn platform, and all Active Response sessions, are initiated outbound from the endpoint to known SenseOn domains.
Active Response
When an analyst initiates an Active Response session, the platform sends signed instructions to the endpoint over the existing outbound mutual TLS channel. The sensor executes those instructions at the same privilege level as the Seed Service (root on Linux / macOS, SYSTEM on Windows). All actions are logged to the per-session audit trail visible at Digital Estate > Session History.
Auto-updates
The sensor downloads new versions from seev4.s3.amazonaws.com (covered by the *.s3.amazonaws.com rule in Connectivity Requirements). Before applying an update, the bootstrapper verifies that the update is signed by SenseOn. Unsigned or incorrectly signed updates are rejected.
Update Model
How versions are managed
- The install command always installs the latest published version of the Universal Sensor.
- After install, the sensor checks for new versions on a regular interval. New builds in the configured release stream (GA, Beta, or Alpha) are applied automatically.
- The release stream and any version pinning are configured per Device Segment, so different parts of your estate can sit on different versions.
Rolling back
If a new version causes an issue, the previous version can be selected in Settings > Device Configuration for the affected segment. The next time the bootstrapper runs, it downgrades the sensor on devices in that segment to the chosen version.
Resource Model
The figures below are taken from Endpoint Requirements and represent typical steady-state use, not absolute limits. Actual usage varies with the workload on the host.
| Profile | CPU (typical) | Memory (typical) |
|---|---|---|
| Windows, NDR + EDR only | < 0.6% | ~ 90 MB |
| Windows, NDR + EDR + EPP | < 1% | ~ 300 MB |
| Linux | Comparable to Windows EDR-only profile | Comparable to Windows |
| macOS | Comparable to Windows EDR-only profile | Comparable to Windows |
On servers with EPP enabled and a heavy file I/O workload (file servers, build hosts, database hosts), CPU use can climb temporarily to as much as 20% during scans. See the note on Impact on CPU/RAM in the requirements doc.
Network use
On average, bandwidth use is approximately 28 kilobits per second in steady state, or around 300 MiB per host per 24 hours. Bursts above this baseline occur during active investigations (more telemetry surfaced for a specific host) or following an outage when buffered data is uploaded.
What the Universal Sensor Does Not Do
The following are explicit non-behaviours, intended to address common questions from security teams:
- It does not capture keystrokes. No keylogging is performed.
- It does not read clipboard contents. Clipboard data is not collected as telemetry.
- It does not capture screen content. No screenshots or screen recordings are taken.
- It does not exfiltrate file contents by default. File telemetry covers metadata and events. File contents are only transferred in two specific cases: when explicitly requested via Active Response by an authorised analyst (and only the specific file requested), or when a detection rule that supports file upload matches on a file. File-upload-on-match is currently in beta and is opt-in per rule.
- It does not read encrypted application data. The sensor operates at the OS level and does not decrypt content that the OS itself does not see in cleartext.
- It does not perform active network scans. The sensor is a passive observer of traffic to and from the host. It does not probe other devices on the network, port-scan, or generate synthetic traffic.
- It is not a remote desktop tool. Active Response sessions execute discrete instructions (scripts, file uploads / downloads, isolation actions). They do not stream the user's screen or keyboard.
Related Reading
- Endpoint Requirements — supported OSes, network requirements, CPU / RAM
- Installing the Universal Sensor — the install command and what it does
- Sensor v7.0+ release notes — what changed at the v7 transition
- Active Response — the analyst-led response mechanism
- Endpoint Protection (EPP) — the malware protection module
- Long Term Telemetry Retention — how telemetry is retained after upload
- Device Segments — how per-segment configuration controls sensor behaviour
- How SenseOn Protects Customer Data — broader data protection principles