Getting Started with Sysmon in ICS/OT

This guide covers what Sysmon is, why it matters for ICS/OT environments, and how to deploy it.

What is Sysmon?

Microsoft Sysinternals Sysmon (System Monitor) is a Windows system service and device driver that logs detailed system activity to the Windows Event Log. Once installed with a configuration file, Sysmon monitors and logs events such as:

Sysmon runs as a background service and survives reboots. It does not require a SIEM or centralized logging to be useful -- the events are viewable directly in Windows Event Viewer.

Why Sysmon for ICS/OT?

Many ICS/OT environments have limited visibility into what happens on Windows-based systems such as HMIs, engineering workstations, historians, and domain controllers. Common challenges include:

Sysmon addresses these challenges because:

How to Deploy Sysmon

1. Download Sysmon

Download Sysmon from Microsoft: https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon

Extract the archive to a location on the target system (e.g., C:\Tools\Sysmon\).

2. Choose a Configuration File

Visit the Configuration Files page and select the config that matches your environment. For first-time deployments, start with the IT Workstation Baseline for desktops/laptops or the IT Server Baseline for servers.

Download the XML configuration file to the same directory as Sysmon (e.g., C:\Tools\Sysmon\sysmonconfig-baseline-it-workstation.xml).

3. Install Sysmon

Open an elevated (Administrator) command prompt and run:

sysmon.exe -accepteula -i sysmonconfig-baseline-it-workstation.xml

Replace sysmonconfig-baseline-it-workstation.xml with the name of your chosen configuration file.

4. Verify Installation

Open Windows Event Viewer and navigate to:

Applications and Services Logs > Microsoft > Windows > Sysmon > Operational

You should see events appearing. If the log is empty, wait a few minutes for activity to generate events.

You can also verify Sysmon is running:

sc query Sysmon64

5. Update a Configuration

To change the configuration on a system where Sysmon is already installed:

sysmon.exe -c sysmonconfig-new.xml

6. Uninstall Sysmon

If you need to remove Sysmon:

sysmon.exe -u

Centralized Log Collection (Optional)

While Sysmon works without centralized logging, forwarding events to a central location improves visibility across multiple systems. Options include:

To allow the Network Service to access Sysmon logs for forwarding:

wevtutil.exe sl Microsoft-Windows-Sysmon/Operational /ca:O:BAG:SYD:(A;;0xf0005;;;SY)(A;;0x5;;;BA)(A;;0x1;;;S-1-5-32-573)(A;;0x1;;;NS)

Performance and Latency

A common concern in ICS/OT environments is whether Sysmon will impact system performance or introduce network latency. Key points:

For detailed guidance on phased deployment, system criticality decisions, and tuning, see the Deployment Considerations page.

Next steps: Browse the Configuration Files to find the right config for your environment. Read the Deployment Considerations guide before deploying to production OT systems. As your team gains experience, advance to more comprehensive configurations.