Persistence (TA0003)(external, opens in a new tab or window)
Defense Evasion (TA0005)(external, opens in a new tab or window)
text code block:FROM logs-macos.process_execution_monitoring-* metadata _id, _version, _index | WHERE data_stream.dataset == "macos.process_execution_monitoring" and macos.event.message.description LIKE "*effectiveItemDisposition*" and (macos.event.message.description LIKE "*url=file://*/Library/LaunchAgents/.*" or macos.event.message.description LIKE "*url=file://*/Library/LaunchDaemons/.*") | GROK macos.event.message.description "url=file://%{DATA:Esql.plist_path}, config" | GROK macos.event.message.description "type=%{DATA:Esql.item_type}," | GROK macos.event.message.description "BTMConfigExecutablePath = \"%{DATA:Esql.executable}\"" | WHERE Esql.plist_path RLIKE ".*/Library/Launch(Agents|Daemons)/\\..*\\.plist" | KEEP _id, _version, _index, @timestamp, host.name, Esql.plist_path, Esql.item_type, Esql.executable, macos.event.message.description
Install detection rules in Elastic Security
Detect Persistence via a Hidden Plist Filename via macOS Security Events in the Elastic Security detection engine by installing this rule into your Elastic Stack.
To setup this rule, check out the installation guide for Prebuilt Security Detection Rules(external, opens in a new tab or window).