Detection rules › Elastic

Browser Process Started in a Hidden Desktop

Source
github.com/elastic/protections-artifacts

Identifies the execution of a browser process in an unusual desktop. This may indicate an attempt to conceal malicious activity from the plain sight of users.

MITRE ATT&CK coverage

Rule body

[rule]
description = """
Identifies the execution of a browser process in an unusual desktop. This may indicate an attempt to conceal malicious
activity from the plain sight of users.
"""
id = "51f30ba4-ec1e-4a83-9c69-14bc8d46a6e5"
license = "Elastic License v2"
name = "Browser Process Started in a Hidden Desktop"
os_list = ["windows"]
reference = [
    "https://attack.mitre.org/techniques/T1564/003/",
    "https://www.elastic.co/security-labs/elastic-security-labs-discovers-lobshot-malware",
]
version = "1.0.3"

query = '''
process where event.type == "start" and
 process.Ext.desktop_name like "WinSta0\\*" and
 process.name : ("chrome.exe", "msedge.exe", "brave.exe", "whale.exe", "browser.exe", "dragon.exe", "vivaldi.exe", "opera.exe", "firefox.exe", "iexplore.exe")
'''

min_endpoint_version = "9.1.0"
optional_actions = []
[[actions]]
action = "kill_process"
field = "process.parent.entity_id"
state = 0
tree = true

[[threat]]
framework = "MITRE ATT&CK"
[[threat.technique]]
id = "T1564"
name = "Hide Artifacts"
reference = "https://attack.mitre.org/techniques/T1564/"
[[threat.technique.subtechnique]]
id = "T1564.003"
name = "Hidden Window"
reference = "https://attack.mitre.org/techniques/T1564/003/"



[threat.tactic]
id = "TA0005"
name = "Defense Evasion"
reference = "https://attack.mitre.org/tactics/TA0005/"

[internal]
min_endpoint_version = "9.1.0"

Stages and Predicates

Stage 1: process

process where event.type == "start" and
 process.Ext.desktop_name like "WinSta0\\*" and
 process.name : ("chrome.exe", "msedge.exe", "brave.exe", "whale.exe", "browser.exe", "dragon.exe", "vivaldi.exe", "opera.exe", "firefox.exe", "iexplore.exe")

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
event.typeeq
  • start corpus 1078 (elastic 1078)
field:"event.type" kind:eq value:"start"
process.Ext.desktop_namewildcard
  • WinSta0\* corpus 2 (elastic 2)
field:"process.Ext.desktop_name" kind:wildcard value:"WinSta0\*"
process.namewildcard
  • brave.exe corpus 7 (elastic 7)
  • browser.exe corpus 7 (elastic 7)
  • chrome.exe corpus 16 (elastic 14, splunk 2)
  • dragon.exe corpus 7 (elastic 7)
  • firefox.exe corpus 5 (elastic 5)
  • iexplore.exe corpus 6 (elastic 5, splunk 1)
  • msedge.exe corpus 12 (elastic 12)
  • opera.exe corpus 3 (elastic 3)
  • vivaldi.exe corpus 6 (elastic 6)
  • whale.exe corpus 4 (elastic 4)
field:"process_name" kind:wildcard