Name:Windows Renamed Command Interpreter was Executed id:6f4611be-076e-4fa8-bc78-466588a71442 version:1 date:None author:Onur Mustafa Erdogan, Splunk status:production type:Anomaly Description:The following analytic identifies a Windows command interpreter process being executed where it's process name does not match it's original file name attribute.
Processes that have been renamed and executed may be an indicator that an adversary is attempting to evade defenses or execute malicious code. Data_source:
-Sysmon EventID 1
-CrowdStrike ProcessRollup2
search:| tstats `security_content_summariesonly` count min(_time) AS firstTime max(_time) AS lastTime
how_to_implement:The detection is based on data that originates from Endpoint Detection and Response (EDR) agents. These agents
are designed to provide security-related telemetry from the endpoints where the agent is installed. To implement
this search, you must ingest logs that contain the process GUID, process name, and parent process. Additionally,
you must ingest complete command-line executions. These logs must be processed using the appropriate Splunk
Technology Add-ons that are specific to the EDR product. The logs must also be mapped to the `Processes` node
of the `Endpoint` data model. Use the Splunk Common Information Model (CIM) to normalize the field names and
speed up the data modeling process. known_false_positives:3rd party software binaries sharing the same name as Windows command interpreter binaries may trigger false positives. References: -https://attack.mitre.org/techniques/T1036/ -https://attack.mitre.org/techniques/T1036/003/ -https://attack.mitre.org/techniques/T1059/ -https://redcanary.com/threat-detection-report/techniques/rename-system-utilities/ drilldown_searches: name:'View the detection results for - "$dest$" and "$user$"' search:'%original_detection_search% | search dest = "$dest$" user = "$user$"' earliest_offset:'$info_min_time$' latest_offset:'$info_max_time$' name:'View risk events for the last 7 days for - "$dest$" and "$user$"' search:'| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$dest$", "$user$") | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`' earliest_offset:'7d' latest_offset:'0' analytic_story:['Living Off The Land', 'Masquerading - Rename System Utilities', 'Suspicious Command-Line Executions', 'Windows Defense Evasion Tactics', 'Water Gamayun']