The results of the Analytics Service can be managed via a web interface or REST API.
Device Scanner
1. Which operating systems are supported by the Scanner?
The Scanner supports 64-bit versions of Microsoft Windows, Linux, and macOS.
2. How is the Scanner distributed and deployed on monitored hosts?
The Scanner is provided as installer packages tailored to each operating system.
- For Microsoft Windows, it is available as EXE and MSI installers.
- Deployment can be managed using commonly used endpoint management systems such as Microsoft SCCM, IBM BigFix, or Tanium.
For detailed installation instructions, refer to the relevant sections: Installing on Windows, Installing on Linux, or Installing on macOS.
3. How is the Scanner installed?
The Scanner can be deployed in one of two modes:
- Persistent Deployment Mode:
On Windows, the Scanner can be launched directly using PowerShell or the Command Prompt after deployment.
4. What components are installed on each system?
The Scanner includes:
- An Application - handles communication with the Analytics Service.
- A Kernel Driver - collects detailed information about the system’s hardware and firmware.
- A System Service - manages and performs continuous monitoring of the system.
5. What data does the Scanner collect?
The Scanner gathers a comprehensive set of data from monitored systems, including:
- Basic information identifying the system (e.g., IP address, MAC address, host name) and Operating System (e.g., vendor, version).
- Detailed information about the hardware and firmware (processor, chipset, devices, firmware vendor, release dates, system and device manufacturers and models, etc.).
- Certain hardware configuration (CPU, chipset and I/O registers) required to assess vulnerabilities and abnormalities, which may indicate firmware or hardware implants.
- Firmware components (UEFI firmware, BIOS, Intel ME/AMT firmware, BMC firmware, and other types of firmware).
- Bootloaders, including Master Boot Record, EFI GUID Partition Table (GPT), and bootloaders stored on EFI System Partition (ESP).
- PCI/PCIe device Option (Expansion) ROM firmware.
- Configuration and structures related to firmware components (ACPI tables, UEFI configuration and runtime tables, UEFI variables, SMBIOS tables, etc.).
- Trusted Platform Module (TPM) state, including values stored in Platform Configuration Registers (PCR).
6. How are requests sent to the Scanner?
The Eclypsium Analytics Service schedules requests using a REST API.
- For systems with persistent deployment, the Scanner periodically checks (every 30 minutes by default) for any scheduled requests.
- In ephemeral deployments, the Scanner can check for requests using the -ht option.
7. Does the Scanner software impact system performance or consume significant resources?
The Scanner software is designed to have a minimal impact on system performance:
- General Operation:
- The Scanner collects data about firmware and hardware and monitors certain runtime hardware configurations and behaviors.
- These operations are not resource-intensive compared to typical security agent software.
- Occasional Resource Use:
- At infrequent intervals (e.g., once or twice a month), the Scanner may extract firmware binaries or blobs from devices using hardware interfaces.
- During this process, the Scanner may temporarily consume higher CPU and I/O resources than usual. However, this impact is still relatively minimal and does not significantly affect overall system performance.
8. Why am I seeing errors like dpkg: warning: version XXXX has bad syntax: invalid character in revision number when installing the Eclypsium Driver RPM package?
This issue occurs due to a DKMS bug that is triggered when /usr/sbin/dpkg is present on systems running an RPM-based distribution, such as CentOS. The bug was reported on here.
- The warning itself is harmless and can be safely ignored.
- Alternatively, you can remove the dpkg package from your system to prevent the bug from being triggered.
9. Why am I seeing the error Module build for kernel XXXX was skipped since the kernel headers for this kernel do not seem to be installed when installing the Eclypsium driver package?
This error occurs because the driver package uses DKMS to automate driver builds, which require the presence of matching kernel headers for the target kernel.
Cause:
- The Linux driver build process depends on kernel headers corresponding to the currently running kernel.
- In some cases, the system’s kernel headers package may be updated to a newer version than the kernel currently running on the system.
- When the kernel headers do not match the running kernel, DKMS cannot build the driver.
Solution:
- Update the kernel, to the latest version, ensuring it matches the installed kernel headers.
- Restart the system and run it with the new kernel.
Once the running kernel and kernel headers align, the driver build should proceed successfully.
10. What TLS CA certificate bundle does the Scanner use to verify the Analytics Service’s certificate?
- On Linux: