UAC Bypass Attempt with IEditionUpgradeManager Elevated COM Interface

Identifies attempts to bypass User Account Control (UAC) by abusing an elevated COM Interface to launch a rogue Windows ClipUp program. Attackers may attempt to bypass UAC to stealthily execute code with elevated permissions.

Elastic rule (View on GitHub)

  1[metadata]
  2creation_date = "2020/10/28"
  3integration = ["endpoint", "windows"]
  4maturity = "production"
  5updated_date = "2024/05/21"
  6
  7[rule]
  8author = ["Elastic"]
  9description = """
 10Identifies attempts to bypass User Account Control (UAC) by abusing an elevated COM Interface to launch a rogue Windows
 11ClipUp program. Attackers may attempt to bypass UAC to stealthily execute code with elevated permissions.
 12"""
 13from = "now-9m"
 14index = ["winlogbeat-*", "logs-endpoint.events.process-*", "logs-windows.sysmon_operational-*", "endgame-*"]
 15language = "eql"
 16license = "Elastic License v2"
 17name = "UAC Bypass Attempt with IEditionUpgradeManager Elevated COM Interface"
 18references = ["https://github.com/hfiref0x/UACME"]
 19risk_score = 73
 20rule_id = "b90cdde7-7e0d-4359-8bf0-2c112ce2008a"
 21setup = """## Setup
 22
 23If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
 24events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
 25Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
 26`event.ingested` to @timestamp.
 27For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
 28"""
 29severity = "high"
 30tags = [
 31    "Domain: Endpoint",
 32    "OS: Windows",
 33    "Use Case: Threat Detection",
 34    "Tactic: Privilege Escalation",
 35    "Tactic: Defense Evasion",
 36    "Tactic: Execution",
 37    "Data Source: Elastic Endgame",
 38    "Data Source: Elastic Defend",
 39    "Data Source: Sysmon",
 40]
 41timestamp_override = "event.ingested"
 42type = "eql"
 43
 44query = '''
 45process where host.os.type == "windows" and event.type == "start" and process.name : "Clipup.exe" and
 46  not process.executable : "C:\\Windows\\System32\\ClipUp.exe" and process.parent.name : "dllhost.exe" and
 47  /* CLSID of the Elevated COM Interface IEditionUpgradeManager */
 48  process.parent.args : "/Processid:{BD54C901-076B-434E-B6C7-17C531F4AB41}"
 49'''
 50
 51
 52[[rule.threat]]
 53framework = "MITRE ATT&CK"
 54[[rule.threat.technique]]
 55id = "T1548"
 56name = "Abuse Elevation Control Mechanism"
 57reference = "https://attack.mitre.org/techniques/T1548/"
 58[[rule.threat.technique.subtechnique]]
 59id = "T1548.002"
 60name = "Bypass User Account Control"
 61reference = "https://attack.mitre.org/techniques/T1548/002/"
 62
 63
 64
 65[rule.threat.tactic]
 66id = "TA0004"
 67name = "Privilege Escalation"
 68reference = "https://attack.mitre.org/tactics/TA0004/"
 69[[rule.threat]]
 70framework = "MITRE ATT&CK"
 71[[rule.threat.technique]]
 72id = "T1548"
 73name = "Abuse Elevation Control Mechanism"
 74reference = "https://attack.mitre.org/techniques/T1548/"
 75[[rule.threat.technique.subtechnique]]
 76id = "T1548.002"
 77name = "Bypass User Account Control"
 78reference = "https://attack.mitre.org/techniques/T1548/002/"
 79
 80
 81
 82[rule.threat.tactic]
 83id = "TA0005"
 84name = "Defense Evasion"
 85reference = "https://attack.mitre.org/tactics/TA0005/"
 86[[rule.threat]]
 87framework = "MITRE ATT&CK"
 88[[rule.threat.technique]]
 89id = "T1559"
 90name = "Inter-Process Communication"
 91reference = "https://attack.mitre.org/techniques/T1559/"
 92[[rule.threat.technique.subtechnique]]
 93id = "T1559.001"
 94name = "Component Object Model"
 95reference = "https://attack.mitre.org/techniques/T1559/001/"
 96
 97
 98
 99[rule.threat.tactic]
100id = "TA0002"
101name = "Execution"
102reference = "https://attack.mitre.org/tactics/TA0002/"

References

Related rules

to-top