Windows Sysmon
A log shipper designed for files
Configure Winlogbeat to ship Sysmon event logs to Logstash and Elasticsearch.
Install Integration
Install Sysmon
Download the sysmon package from Microsoft link below:
https://docs.microsoft.com/en-us/sysinternals/downloads/sysmon (opens in a new tab)
Extract the files to C:\Program Files\Sysmon
Now open Powershell as Administrator and change directory to the extracted files.
cd 'C:\Program Files\Sysmon\'
Now run:
.\sysmon.exe -i -accepteula -l -n
Install Winlogbeat
To get started you will need to install winlogbeat. To do this you have two main options:
- Choose the winlogbeat ZIP file (opens in a new tab) (Windows ZIP x86_64) or
- Choose the Microsoft Software Installer MSI (opens in a new tab) file (Windows MSI x86_64 (beta))
To successfully install winlogbeat and set up the required Windows service you will need to have administrator access.
If you have chosen to download the zip file:
- Extract the contents of the zip file into C:\Program Files.
- Rename the extracted folder to winlogbeat
- Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select Run As Administrator).
- From the PowerShell prompt, run the following commands to install winlogbeat as a Windows service:
cd 'C:\Program Files\@beatname'
.\install-service-@beatname.ps1
If script execution is disabled on your system, you need to set the execution policy for the current session to allow the script to run. For example:
PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-@beatname.ps1
For more information about Powershell execution policies see here (opens in a new tab)
If you have chosen to download the winlogbeat.msi file:
- double-click on it and the relevant files will be downloaded.
At the end of the installation process you'll be given the option to open the folder where winlogbeat has been installed.
- Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select Run As Administrator).
- From the PowerShell prompt, change directory to the location where winlogbeat was installed and run the following command to install winlogbeat as a Windows service:
.\install-service-@beatname.ps1
If script execution is disabled on your system, you need to set the execution policy for the current session to allow the script to run. For example:
PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-@beatname.ps1
For more information about Powershell execution policies see here (opens in a new tab)
Update your configuration file
The configuration file below is pre-configured to send data to your Logit.io Stack via Logstash.
Note: Please make sure the 'hosts' field in the Logstash outputs section is correctly populated. If you are logged into your Logit.io account the 'hosts' field should have been pre-populated with the correct values.
Copy the configuration file below (making the above changes as necessary) and overwrite the contents of winlogbeat.yml. (If you used the installer program to install winlogbeat the winlogbeat.yml file may not exist so you'll need to create it and add the details below).
###################### Logit.io Winlogbeat Configuration ########################
# ============================== Winlogbeat specific options ==============================
winlogbeat.event_logs:
- name: Application
ignore_older: 72h
- name: System
- name: Security
- name: Microsoft-Windows-Sysmon/Operational
tags: [sysmon]
- name: Windows PowerShell
event_id: 400, 403, 600, 800
- name: Microsoft-Windows-PowerShell/Operational
event_id: 4103, 4104, 4105, 4106
- name: ForwardedEvents
tags: [forwarded]
fields:
type: wineventlog
fields_under_root: true
# ================================== Outputs ===================================
# ------------------------------ Logstash Output -------------------------------
output.logstash:
hosts: ["@logstash.host:@logstash.sslPort"]
loadbalance: true
ssl.enabled: true
pipeline: "winlogbeat-%{[agent.version]}-routing"
# ================================= Processors =================================
processors:
- add_host_metadata:
when.not.contains.tags: forwarded
- add_cloud_metadata: ~
Validate Configuration
From the PowerShell prompt, (in the directory where winlogbeat was installed) and run the following command to validate your configuration file:
.\@beatname.exe test config -c .\@beatname.yml -e
If the yml file is valid, winlogbeat will print Config OK
.
If there's a problem you should get an error message with details of the error.
Start winlogbeat
From the PowerShell prompt, (in the directory where winlogbeat was installed) run the following command:
Start-Service winlogbeat
Check Logit.io for your logs
Data should now have been sent to your Stack.
View My DataIf you don't see take a look at How to diagnose no data in Stack below for how to diagnose common issues.
How to diagnose no data in Stack
If you don't see data appearing in your stack after following this integration, take a look at the troubleshooting guide for steps to diagnose and resolve the problem or contact our support team and we'll be happy to assist.
Stopping Winlogbeat
Stop the Winlogbeat service with the following command:
Stop-Service winlogbeat
Windows Sysmon Overview
Windows Sysmon (System Monitor) is a powerful logging tool designed to monitor and log system activity to the Windows event log. An extension of the Windows Event Logging system, Sysmon provides detailed information about process creations, network connections, and changes to file creation time, helping administrators and security professionals increase the forensic capabilities of their systems.
Sysmon logs are invaluable for security monitoring and incident response because they provide insights that are not available through other logging mechanisms. The logs help to identify malicious or anomalous activity that can indicate a breach or other security incidents. Sysmon's configuration can be customized extensively to capture only the events that are pertinent to your security needs, minimizing noise and enhancing the relevance of the logged data.
Our platform leverages Sysmon logs to provide a comprehensive security analysis and threat detection suite. It offers centralized log management capabilities designed for easy integration, thorough analysis, and effective troubleshooting within your IT environment. With our tool, you can efficiently sift through vast amounts of Sysmon data to detect suspicious activity and maintain system integrity.
For assistance with configuring or enhancing your Sysmon deployment, or if you need help integrating Sysmon logs with other monitoring tools, the team at Logit.io is here to help. Feel free to visit our Help Centre or contact our support team through live chat for immediate assistance.