7c90f1d4c4
* Initial commit
* Update Investigation guides - security-docs review
* Update command_and_control_dns_tunneling_nslookup.toml
* Update defense_evasion_amsienable_key_mod.toml
* Apply security-docs review
* Remove dot
* Update rules/windows/command_and_control_rdp_tunnel_plink.toml
Co-authored-by: nastasha-solomon <79124755+nastasha-solomon@users.noreply.github.com>
* Apply changes from review
* Apply the suggestion
Co-authored-by: nastasha-solomon <79124755+nastasha-solomon@users.noreply.github.com>
(cherry picked from commit 817b97f428)
135 lines
6.1 KiB
TOML
135 lines
6.1 KiB
TOML
[metadata]
|
|
creation_date = "2020/12/14"
|
|
maturity = "production"
|
|
updated_date = "2022/05/09"
|
|
|
|
[rule]
|
|
author = ["Elastic"]
|
|
description = """
|
|
The malware known as SUNBURST targets the SolarWind's Orion business software for command and control. This rule detects
|
|
post-exploitation command and control activity of the SUNBURST backdoor.
|
|
"""
|
|
from = "now-9m"
|
|
index = ["logs-endpoint.events.*"]
|
|
language = "eql"
|
|
license = "Elastic License v2"
|
|
name = "SUNBURST Command and Control Activity"
|
|
note = """## Triage and analysis
|
|
|
|
### Investigating SUNBURST Command and Control Activity
|
|
|
|
SUNBURST is a trojanized version of a digitally signed SolarWinds Orion plugin called
|
|
SolarWinds.Orion.Core.BusinessLayer.dll. The plugin contains a backdoor that communicates via HTTP to third-party
|
|
servers. After an initial dormant period of up to two weeks, SUNBURST may retrieve and execute commands that instruct
|
|
the backdoor to transfer files, execute files, profile the system, reboot the system, and disable system services.
|
|
The malware's network traffic attempts to blend in with legitimate SolarWinds activity by imitating the Orion
|
|
Improvement Program (OIP) protocol, and the malware stores persistent state data within legitimate plugin configuration files. The
|
|
backdoor uses multiple obfuscated blocklists to identify processes, services, and drivers associated with forensic and
|
|
anti-virus tools.
|
|
|
|
More details on SUNBURST can be found on the [Mandiant Report](https://www.mandiant.com/resources/sunburst-additional-technical-details).
|
|
|
|
This rule identifies suspicious network connections that attempt to blend in with legitimate SolarWinds activity
|
|
by imitating the Orion Improvement Program (OIP) protocol behavior.
|
|
|
|
#### Possible investigation steps
|
|
|
|
- Investigate the process execution chain (parent process tree) for unknown processes. Examine their executable files
|
|
for prevalence, whether they are located in expected locations, and if they are signed with valid digital signatures.
|
|
- Retrieve the executable involved:
|
|
- Use a private sandboxed malware analysis system to perform analysis.
|
|
- Observe and collect information about the following activities:
|
|
- Attempts to contact external domains and addresses.
|
|
- File and registry access, modification, and creation activities.
|
|
- Service creation and launch activities.
|
|
- Scheduled tasks creation.
|
|
- Use the PowerShell Get-FileHash cmdlet to get the files' SHA-256 hash values.
|
|
- Search for the existence and reputation of the hashes in resources like VirusTotal, Hybrid-Analysis, CISCO Talos, Any.run, etc.
|
|
- Investigate whether the potential malware ran successfully, is active on the host, or was stopped by defenses.
|
|
- Investigate the network traffic.
|
|
- Investigate other alerts associated with the user/host during the past 48 hours.
|
|
|
|
### False positive analysis
|
|
|
|
- This activity should not happen legitimately. The security team should address any potential benign true positive
|
|
(B-TP), as this configuration can put the environment at risk.
|
|
|
|
### Response and remediation
|
|
|
|
- Initiate the incident response process based on the outcome of the triage.
|
|
- Isolate the involved host to prevent further post-compromise behavior.
|
|
- If the triage identified malware, search the environment for additional compromised hosts.
|
|
- Implement temporary network rules, procedures, and segmentation to contain the malware.
|
|
- Stop suspicious processes.
|
|
- Immediately block the identified indicators of compromise (IoCs).
|
|
- Inspect the affected systems for additional malware backdoors like reverse shells, reverse proxies, or droppers that
|
|
attackers could use to reinfect the system.
|
|
- Remove and block malicious artifacts identified during triage.
|
|
- Run a full antimalware scan. This may reveal additional artifacts left in the system, persistence mechanisms, and
|
|
malware components.
|
|
- Reimage the host operating system and restore compromised files to clean versions.
|
|
- Upgrade SolarWinds systems to the latest version to eradicate the chance of reinfection by abusing the same vector.
|
|
- Using the incident response data, update logging and audit policies to improve the mean time to detect (MTTD) and the
|
|
mean time to respond (MTTR).
|
|
"""
|
|
references = [
|
|
"https://www.fireeye.com/blog/threat-research/2020/12/evasive-attacker-leverages-solarwinds-supply-chain-compromises-with-sunburst-backdoor.html",
|
|
]
|
|
risk_score = 73
|
|
rule_id = "22599847-5d13-48cb-8872-5796fee8692b"
|
|
severity = "high"
|
|
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Command and Control"]
|
|
timestamp_override = "event.ingested"
|
|
type = "eql"
|
|
|
|
query = '''
|
|
network where event.type == "protocol" and network.protocol == "http" and
|
|
process.name : ("ConfigurationWizard.exe",
|
|
"NetFlowService.exe",
|
|
"NetflowDatabaseMaintenance.exe",
|
|
"SolarWinds.Administration.exe",
|
|
"SolarWinds.BusinessLayerHost.exe",
|
|
"SolarWinds.BusinessLayerHostx64.exe",
|
|
"SolarWinds.Collector.Service.exe",
|
|
"SolarwindsDiagnostics.exe") and
|
|
(http.request.body.content : "*/swip/Upload.ashx*" and http.request.body.content : ("POST*", "PUT*")) or
|
|
(http.request.body.content : ("*/swip/SystemDescription*", "*/swip/Events*") and http.request.body.content : ("GET*", "HEAD*")) and
|
|
not http.request.body.content : "*solarwinds.com*"
|
|
'''
|
|
|
|
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1071"
|
|
reference = "https://attack.mitre.org/techniques/T1071/"
|
|
name = "Application Layer Protocol"
|
|
[[rule.threat.technique.subtechnique]]
|
|
id = "T1071.001"
|
|
name = "Web Protocols"
|
|
reference = "https://attack.mitre.org/techniques/T1071/001/"
|
|
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0011"
|
|
name = "Command and Control"
|
|
reference = "https://attack.mitre.org/tactics/TA0011/"
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1195"
|
|
name = "Supply Chain Compromise"
|
|
reference = "https://attack.mitre.org/techniques/T1195/"
|
|
[[rule.threat.technique.subtechnique]]
|
|
id = "T1195.002"
|
|
name = "Compromise Software Supply Chain"
|
|
reference = "https://attack.mitre.org/techniques/T1195/002/"
|
|
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0001"
|
|
name = "Initial Access"
|
|
reference = "https://attack.mitre.org/tactics/TA0001/"
|