Detection rules › Elastic
Potential Outgoing RDP Connection by Unusual Process
Adversaries may attempt to connect to a remote system over Windows Remote Desktop Protocol (RDP) to achieve lateral movement. Adversaries may avoid using the Microsoft Terminal Services Client (mstsc.exe) binary to establish an RDP connection to evade detection.
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Lateral Movement | T1021.001 Remote Services: Remote Desktop Protocol |
Event coverage
| Provider | Event | Title |
|---|---|---|
| Sysmon | Event ID 3 | Network connection |
Rule body elastic
[metadata]
creation_date = "2023/08/29"
integration = ["endpoint"]
maturity = "production"
updated_date = "2024/09/01"
[rule]
author = ["Elastic"]
building_block_type = "default"
description = """
Adversaries may attempt to connect to a remote system over Windows Remote Desktop Protocol (RDP) to achieve lateral
movement. Adversaries may avoid using the Microsoft Terminal Services Client (mstsc.exe) binary to establish an RDP
connection to evade detection.
"""
from = "now-119m"
index = ["logs-endpoint.events.network-*"]
interval = "60m"
language = "eql"
license = "Elastic License v2"
name = "Potential Outgoing RDP Connection by Unusual Process"
risk_score = 21
rule_id = "8e39f54e-910b-4adb-a87e-494fbba5fb65"
severity = "low"
tags = [
"Domain: Endpoint",
"OS: Windows",
"Use Case: Threat Detection",
"Tactic: Lateral Movement",
"Data Source: Elastic Defend",
"Rule Type: BBR"
]
timestamp_override = "event.ingested"
type = "eql"
query = '''
network where host.os.type == "windows" and
event.action == "connection_attempted" and destination.port == 3389 and
destination.ip != "::1" and destination.ip != "127.0.0.1" and
not (
process.executable : (
"?:\\Windows\\System32\\mstsc.exe",
"?:\\Program Files (x86)\\mRemoteNG\\mRemoteNG.exe",
"?:\\Program Files (x86)\\PRTG Network Monitor\\PRTG Probe.exe",
"?:\\Program Files\\Azure Advanced Threat Protection Sensor\\*\\Microsoft.Tri.Sensor.exe",
"?:\\Program Files (x86)\\Microsoft\\Remote Desktop Connection Manager\\RDCMan.exe",
"?:\\Program Files\\SentinelOne\\Sentinel Agent*\\Ranger\\SentinelRanger.exe",
"?:\\Program Files\\Devolutions\\Remote Desktop Manager\\RemoteDesktopManager.exe",
"?:\\Program Files (x86)\\Devolutions\\Remote Desktop Manager\\RemoteDesktopManager.exe"
) and process.code_signature.trusted == true
)
'''
[[rule.threat]]
framework = "MITRE ATT&CK"
[[rule.threat.technique]]
id = "T1021"
name = "Remote Services"
reference = "https://attack.mitre.org/techniques/T1021/"
[[rule.threat.technique.subtechnique]]
id = "T1021.001"
name = "Remote Desktop Protocol"
reference = "https://attack.mitre.org/techniques/T1021/001/"
[rule.threat.tactic]
id = "TA0008"
name = "Lateral Movement"
reference = "https://attack.mitre.org/tactics/TA0008/"
Stages and Predicates
Stage 1: network
network where host.os.type == "windows" and
event.action == "connection_attempted" and destination.port == 3389 and
destination.ip != "::1" and destination.ip != "127.0.0.1" and
not (
process.executable : (
"?:\\Windows\\System32\\mstsc.exe",
"?:\\Program Files (x86)\\mRemoteNG\\mRemoteNG.exe",
"?:\\Program Files (x86)\\PRTG Network Monitor\\PRTG Probe.exe",
"?:\\Program Files\\Azure Advanced Threat Protection Sensor\\*\\Microsoft.Tri.Sensor.exe",
"?:\\Program Files (x86)\\Microsoft\\Remote Desktop Connection Manager\\RDCMan.exe",
"?:\\Program Files\\SentinelOne\\Sentinel Agent*\\Ranger\\SentinelRanger.exe",
"?:\\Program Files\\Devolutions\\Remote Desktop Manager\\RemoteDesktopManager.exe",
"?:\\Program Files (x86)\\Devolutions\\Remote Desktop Manager\\RemoteDesktopManager.exe"
) and process.code_signature.trusted == true
)
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
process.code_signature.trusted | eq | true |
process.executable | wildcard | ?:\Windows\System32\mstsc.exe, ?:\Program Files (x86)\mRemoteNG\mRemoteNG.exe, ?:\Program Files (x86)\PRTG Network Monitor\PRTG Probe.exe, ?:\Program Files\Azure Advanced Threat Protection Sensor\*\Microsoft.Tri.Sensor.exe, ?:\Program Files (x86)\Microsoft\Remote Desktop Connection Manager\RDCMan.exe, ?:\Program Files\SentinelOne\Sentinel Agent*\Ranger\SentinelRanger.exe, ?:\Program Files\Devolutions\Remote Desktop Manager\RemoteDesktopManager.exe, ?:\Program Files (x86)\Devolutions\Remote Desktop Manager\RemoteDesktopManager.exe |
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
destination.ip | ne |
|
destination.port | eq |
|
event.action | eq |
|