6bdfddac8e
* Expand timestamp_override tests * removed timestamp_override from eql sequence rules * add config entry for eql rules with beats index and t_o * add timestamp_override to missing fields
125 lines
5.8 KiB
TOML
125 lines
5.8 KiB
TOML
[metadata]
|
|
creation_date = "2020/10/19"
|
|
maturity = "production"
|
|
updated_date = "2022/03/31"
|
|
|
|
[rule]
|
|
author = ["Elastic"]
|
|
description = """
|
|
This rule detects the Active Directory query tool, AdFind.exe. AdFind has legitimate purposes, but it is frequently
|
|
leveraged by threat actors to perform post-exploitation Active Directory reconnaissance. The AdFind tool has been
|
|
observed in Trickbot, Ryuk, Maze, and FIN6 campaigns. For Winlogbeat, this rule requires Sysmon.
|
|
"""
|
|
from = "now-9m"
|
|
index = ["logs-endpoint.events.*", "winlogbeat-*", "logs-windows.*"]
|
|
language = "eql"
|
|
license = "Elastic License v2"
|
|
name = "AdFind Command Activity"
|
|
note = """## Triage and analysis
|
|
|
|
### Investigating AdFind Command Activity
|
|
|
|
[AdFind](http://www.joeware.net/freetools/tools/adfind/) is a freely available command-line tool used to retrieve information from
|
|
Active Directory (AD). Network discovery and enumeration tools like `AdFind` are useful to adversaries in the same ways
|
|
they are effective for network administrators. This tool provides quick ability to scope AD person/computer objects and
|
|
understand subnets and domain information. There are many [examples](https://thedfirreport.com/category/adfind/)
|
|
observed where this tool has been adopted by ransomware and criminal groups and used in compromises.
|
|
|
|
#### Possible investigation steps:
|
|
- `AdFind` is a legitimate Active Directory enumeration tool used by network administrators, it's important to understand
|
|
the source of the activity. This could involve identifying the account using `AdFind` and determining based on the command-lines
|
|
what information was retrieved, then further determining if these actions are in scope of that user's traditional responsibilities.
|
|
- In multiple public references, `AdFind` is leveraged after initial access is achieved. Review previous activity on impacted
|
|
machines for suspicious indicators such as previous anti-virus/EDR alerts, phishing emails received, or network traffic
|
|
to suspicious infrastructure.
|
|
|
|
### False Positive Analysis
|
|
- This rule has a high chance to produce false positives as it is a legitimate tool used by network administrators. One
|
|
option could be allowlisting specific users or groups who use the tool as part of their daily responsibilities. This can
|
|
be done by leveraging the exception workflow in the Kibana Security App or Elasticsearch API to tune this rule to your environment.
|
|
- Malicious behavior with `AdFind` should be investigated as part of a step within an attack chain. It doesn't happen in
|
|
isolation, so reviewing previous logs/activity from impacted machines can be very telling.
|
|
|
|
### Related Rules
|
|
- Windows Network Enumeration
|
|
- Enumeration of Administrator Accounts
|
|
- Enumeration Command Spawned via WMIPrvSE
|
|
|
|
### Response and Remediation
|
|
- Take immediate action to validate activity, investigate and potentially isolate activity to prevent further
|
|
post-compromise behavior.
|
|
- It's important to understand that `AdFind` is an Active Directory enumeration tool and can be used for malicious or legitimate
|
|
purposes, so understanding the intent behind the activity will help determine the appropropriate response.
|
|
|
|
|
|
## Config
|
|
|
|
If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2, events will not define `event.ingested` and default fallback for EQL rules was not added until 8.2, so you will need to add a custom pipeline to populate `event.ingested` to @timestamp for this rule to work.
|
|
"""
|
|
references = [
|
|
"http://www.joeware.net/freetools/tools/adfind/",
|
|
"https://thedfirreport.com/2020/05/08/adfind-recon/",
|
|
"https://www.fireeye.com/blog/threat-research/2020/05/tactics-techniques-procedures-associated-with-maze-ransomware-incidents.html",
|
|
"https://www.cybereason.com/blog/dropping-anchor-from-a-trickbot-infection-to-the-discovery-of-the-anchor-malware",
|
|
"https://www.fireeye.com/blog/threat-research/2019/04/pick-six-intercepting-a-fin6-intrusion.html",
|
|
"https://usa.visa.com/dam/VCOM/global/support-legal/documents/fin6-cybercrime-group-expands-threat-To-ecommerce-merchants.pdf",
|
|
]
|
|
risk_score = 21
|
|
rule_id = "eda499b8-a073-4e35-9733-22ec71f57f3a"
|
|
severity = "low"
|
|
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Discovery"]
|
|
timestamp_override = "event.ingested"
|
|
type = "eql"
|
|
|
|
query = '''
|
|
process where event.type in ("start", "process_started") and
|
|
(process.name : "AdFind.exe" or process.pe.original_file_name == "AdFind.exe") and
|
|
process.args : ("objectcategory=computer", "(objectcategory=computer)",
|
|
"objectcategory=person", "(objectcategory=person)",
|
|
"objectcategory=subnet", "(objectcategory=subnet)",
|
|
"objectcategory=group", "(objectcategory=group)",
|
|
"objectcategory=organizationalunit", "(objectcategory=organizationalunit)",
|
|
"objectcategory=attributeschema", "(objectcategory=attributeschema)",
|
|
"domainlist", "dcmodes", "adinfo", "dclist", "computers_pwnotreqd", "trustdmp")
|
|
'''
|
|
|
|
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1018"
|
|
name = "Remote System Discovery"
|
|
reference = "https://attack.mitre.org/techniques/T1018/"
|
|
|
|
[[rule.threat.technique]]
|
|
id = "T1069"
|
|
name = "Permission Groups Discovery"
|
|
reference = "https://attack.mitre.org/techniques/T1069/"
|
|
[[rule.threat.technique.subtechnique]]
|
|
id = "T1069.002"
|
|
name = "Domain Groups"
|
|
reference = "https://attack.mitre.org/techniques/T1069/002/"
|
|
|
|
|
|
[[rule.threat.technique]]
|
|
id = "T1087"
|
|
name = "Account Discovery"
|
|
reference = "https://attack.mitre.org/techniques/T1087/"
|
|
[[rule.threat.technique.subtechnique]]
|
|
id = "T1087.002"
|
|
name = "Domain Account"
|
|
reference = "https://attack.mitre.org/techniques/T1087/002/"
|
|
|
|
|
|
[[rule.threat.technique]]
|
|
id = "T1482"
|
|
name = "Domain Trust Discovery"
|
|
reference = "https://attack.mitre.org/techniques/T1482/"
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0007"
|
|
name = "Discovery"
|
|
reference = "https://attack.mitre.org/tactics/TA0007/"
|
|
|