The hypothesis is that an adversary is using the ISLOnline tool to create malicious processes for remote management and persistence. SOC teams should proactively hunt for this behavior in Azure Sentinel to detect potential compromise and unauthorized remote control of endpoints.
KQL Query
let Time_start = now(-5d);
let Time_end = now();
//
DeviceProcessEvents
| where Timestamp between (Time_start..Time_end)
| where ProcessVersionInfoCompanyName has_any ('Xlab', 'ISL Online')
and ProcessVersionInfoProductName has_any ('ISL Light', 'launch')
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
id: dbcc7dcc-fa1e-46fa-84ee-06701c7094b8
name: Remote Management and Monitoring tool - ISLOnline - Create Process
description: |
Remote Monitoring and Management (RMM) programs are IT to manage remote endpoints. Attackers have begun to abuse these programs to persist or provide C2 channels.
https://github.com/jischell-msft/RemoteManagementMonitoringTools
requiredDataConnectors:
- connectorId: MicrosoftThreatProtection
dataTypes:
- DeviceProcessEvents
tactics: CommandAndControl
relevantTechniques: T1219
query: |
let Time_start = now(-5d);
let Time_end = now();
//
DeviceProcessEvents
| where Timestamp between (Time_start..Time_end)
| where ProcessVersionInfoCompanyName has_any ('Xlab', 'ISL Online')
and ProcessVersionInfoProductName has_any ('ISL Light', 'launch')
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
| Sentinel Table | Notes |
|---|---|
DeviceProcessEvents | Ensure this data connector is enabled |
Scenario: IT Admin Creates Process via ISLOnline for Scheduled Maintenance
Description: An IT administrator uses ISLOnline to deploy a scheduled maintenance task that creates a process on multiple endpoints.
Filter/Exclusion: process.parent_process_name == "ISLOnline.exe" or process.parent_process_path contains "ISLOnline"
Scenario: ISLOnline Used to Deploy Endpoint Security Patch
Description: The RMM tool ISLOnline is used to push a security patch to endpoints, which involves creating a process as part of the installation.
Filter/Exclusion: process.name == "setup.exe" and process.parent_process_name == "ISLOnline.exe"
Scenario: ISLOnline Executes a System Cleanup Task
Description: A system cleanup task is initiated via ISLOnline, which creates a process to remove temporary files or logs.
Filter/Exclusion: process.name contains "cleanmgr.exe" or process.name contains "del" or "rm"
Scenario: ISLOnline Deploys a Custom Script for Compliance Check
Description: ISLOnline is used to run a custom script that checks for compliance with internal policies, which may involve creating a process.
Filter/Exclusion: process.name contains "powershell.exe" and process.command_line contains "compliance-check"
Scenario: ISLOnline Runs a System Update via Group Policy
Description: ISLOnline is used to trigger a system update via Group Policy, which may result in the creation of processes related to the update.
Filter/Exclusion: process.name contains "wuauclt.exe" or process.name contains "msiexec.exe" and process.parent_process_name == "ISLOnline.exe"