The detection identifies potential use of the PcVisit tool, a remote management and monitoring tool, which adversaries may leverage for persistence or command and control. SOC teams should proactively hunt for this behavior in Azure Sentinel to detect and mitigate potential adversary exploitation of legitimate RMM tools.
KQL Query
let Time_start = now(-5d);
let Time_end = now();
//
DeviceFileCertificateInfo
| where Timestamp between (Time_start..Time_end)
| where Signer has 'pcvisit software ag'
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
id: 00bd388d-5d5a-4b60-9b33-5ba4aa636b80
name: Remote Management and Monitoring tool - PcVisit - 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 'pcvisit software ag'
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp),
Report=make_set(ReportId), Count=count() by DeviceId, DeviceName
Scenario: Legitimate scheduled job for system monitoring using PcVisit
Filter/Exclusion: process.parent_process_name != "pcvisit.exe" or process.command_line contains "scheduled_task"
Scenario: Admin task to update PcVisit agent on multiple endpoints
Filter/Exclusion: process.command_line contains "update" or "install" or process.parent_process_name contains "task scheduler"
Scenario: IT team using PcVisit to remotely reboot or restart services on endpoints
Filter/Exclusion: process.command_line contains "reboot" or "restart" or "service" or process.parent_process_name contains "pcvisit.exe"
Scenario: Use of PcVisit for remote desktop support during helpdesk interactions
Filter/Exclusion: process.command_line contains "remote desktop" or "rdp" or process.parent_process_name contains "helpdesk"
Scenario: PcVisit is used to deploy patches or software updates across the network
Filter/Exclusion: process.command_line contains "patch" or "update" or "deployment" or process.parent_process_name contains "deployment_tool"