Adversaries may be exploiting the Pulse Connect Secure RCE vulnerability (CVE-2021-22893) to gain remote code execution on VPN servers. SOC teams should proactively hunt for this behavior in Azure Sentinel to detect and mitigate potential compromise of critical network infrastructure.
let threshold = 3;
PulseConnectSecure
| where Messages contains "Unauthenticated request url /dana-na/"
| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by Source_IP
| where count_ > threshold
id: d0c82b7f-40b2-4180-a4d6-7aa0541b7599
name: PulseConnectSecure - CVE-2021-22893 Possible Pulse Connect Secure RCE Vulnerability Attack
description: |
'This query identifies exploitation attempts using Pulse Connect Secure(PCS) vulnerability (CVE-2021-22893) to the VPN server'
severity: High
requiredDataConnectors:
- connectorId: PulseConnectSecure
dataTypes:
- Syslog
queryFrequency: 1h
queryPeriod: 1h
triggerOperator: gt
triggerThreshold: 0
tactics:
- InitialAccess
relevantTechniques:
- T1190
query: |
let threshold = 3;
PulseConnectSecure
| where Messages contains "Unauthenticated request url /dana-na/"
| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by Source_IP
| where count_ > threshold
entityMappings:
- entityType: IP
fieldMappings:
- identifier: Address
columnName: Source_IP
version: 1.0.2
kind: Scheduled
metadata:
source:
kind: Community
author:
name: Sittikorn S
support:
tier: Community
categories:
domains: [ "Security - Threat Intelligence" ]
Scenario: Legitimate Admin Task - Scheduled Job Execution
Description: An administrator is running a scheduled job to update the Pulse Connect Secure configuration using the pcsadmin tool.
Filter/Exclusion: Check for process.name = pcsadmin and process.args LIKE '%update%' to exclude legitimate configuration updates.
Scenario: System Maintenance - Log File Analysis
Description: A security analyst is manually reviewing logs for unusual activity using the logcheck tool, which is configured to analyze Pulse Connect Secure logs.
Filter/Exclusion: Filter by process.name = logcheck and process.args LIKE '%logcheck%' to exclude manual log analysis activities.
Scenario: Patch Deployment - Automated Update Process
Description: A patch management system is deploying a security update to Pulse Connect Secure using the patchmgr tool.
Filter/Exclusion: Use process.name = patchmgr and process.args LIKE '%deploy%' to exclude automated patch deployment tasks.
Scenario: User Authentication - Failed Login Attempt
Description: A user is attempting to authenticate to the Pulse Connect Secure server, resulting in a failed login attempt.
Filter/Exclusion: Filter by event.type = failed_login and source.ip IN (known_user_ips) to exclude legitimate user authentication attempts.
Scenario: Network Monitoring - Traffic Analysis Tool
Description: A network monitoring tool like Wireshark is capturing and analyzing traffic to the Pulse Connect Secure server for troubleshooting.
Filter/Exclusion: Use process.name = wireshark or process.name = tcpdump to exclude network traffic analysis activities.