The hypothesis is that an adversary is using DesktopNow, a Remote Monitoring and Management tool, to establish persistence or command and control by leveraging file signature anomalies. SOC teams should proactively hunt for this behavior in Azure Sentinel to detect potential adversary exploitation of legitimate RMM tools for malicious purposes.
KQL Query
let Time_start = now(-5d);
let Time_end = now();
//
DeviceFileCertificateInfo
| where Timestamp between (Time_start..Time_end)
| where Signer has 'NCH Software'
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
id: 5b14b2de-fdd6-4d4f-88d7-d6d077544cb7
name: Remote Management and Monitoring tool - DesktopNow - File Signature
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:
- DeviceFileCertificateInfo
tactics: CommandAndControl
relevantTechniques: T1219
query: |
let Time_start = now(-5d);
let Time_end = now();
//
DeviceFileCertificateInfo
| where Timestamp between (Time_start..Time_end)
| where Signer has 'NCH Software'
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
Scenario: Legitimate Scheduled Job Execution
Description: A system administrator schedules a job using DesktopNow to run a maintenance script on multiple endpoints during off-peak hours.
Filter/Exclusion: process.parent_process_name == "Task Scheduler" or process.command_line contains "schtasks.exe"
Scenario: Software Update Deployment
Description: The IT team uses DesktopNow to deploy a software update to all endpoints, which involves copying and executing update files.
Filter/Exclusion: process.command_line contains "update.exe" or file.name contains "update_package"
Scenario: Remote Desktop Session
Description: An admin connects to a remote endpoint using DesktopNow’s remote desktop feature to troubleshoot an issue.
Filter/Exclusion: process.name == "mstsc.exe" or process.parent_process_name == "Remote Desktop Connection"
Scenario: File Integrity Monitoring Check
Description: The security team uses DesktopNow to perform a file integrity check on critical system files.
Filter/Exclusion: process.command_line contains "integrity_check.exe" or file.hash matches known good hash
Scenario: Backup Job Execution
Description: DesktopNow is used to initiate a backup job that copies files from one server to another.
Filter/Exclusion: process.command_line contains "backup.exe" or file.name contains "backup_data"