diff --git a/detections/endpoint/office_spawning_control.yml b/detections/endpoint/office_spawning_control.yml new file mode 100644 index 0000000000..1e4d5eea82 --- /dev/null +++ b/detections/endpoint/office_spawning_control.yml @@ -0,0 +1,75 @@ +name: Office Spawning Control +id: 053e027c-10c7-11ec-8437-acde48001122 +version: 1 +date: '2021-09-08' +author: Michael Haag, Splunk +type: TTP +datamodel: +- Endpoint +description: 'The following detection identifies control.exe spawning from an office product. This detection identifies any Windows Office Product spawning `control.exe`. + In malicious instances, the command-line of `control.exe` will contain a file path to a .cpl or .inf, related to CVE-2021-40444. In this + instance, we narrow our detection down to the Office suite as a parent process. + During triage, review all file modifications. Capture and analyze any artifacts + on disk. review parallel and child processes to identify further suspicious behavior' +search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) + as lastTime from datamodel=Endpoint.Processes where Processes.parent_process_name + IN ("winword.exe","excel.exe","powerpnt.exe","mspub.exe","visio.exe") Processes.process_name=control.exe + by Processes.dest Processes.user Processes.parent_process Processes.process_name + Processes.process Processes.process_id Processes.parent_process_id | `drop_dm_object_name(Processes)` + | `security_content_ctime(firstTime)`| `security_content_ctime(lastTime)`| `office_spawning_control_filter`' +how_to_implement: To successfully implement this search you need to be ingesting information on process that include the name of the process responsible for the changes from your endpoints into the `Endpoint` datamodel in the `Processes` node. In addition, confirm the latest CIM App 4.20 or higher is installed and the latest TA for the endpoint product. +known_false_positives: Limited false positives should be present. +references: + - https://strontic.github.io/xcyclopedia/library/control.exe-1F13E714A0FEA8887707DFF49287996F.html + - https://app.any.run/tasks/36c14029-9df8-439c-bba0-45f2643b0c70/ + - https://attack.mitre.org/techniques/T1218/011/ + - https://www.echotrail.io/insights/search/control.exe + - https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-40444 + - https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1218.002/T1218.002.yaml +tags: + analytic_story: + - Spearphishing Attachments + - Microsoft MSHTML Remote Code Execution CVE-2021-40444 + dataset: [] + kill_chain_phases: + - Exploitation + mitre_attack_id: + - T1566.001 + product: + - Splunk Enterprise + - Splunk Enterprise Security + - Splunk Cloud + required_fields: + - Processes.dest + - Processes.user + - Processes.parent_process_name #parent process name + - Processes.parent_process #parent cmdline + - Processes.original_file_name + - Processes.process_name #process name + - Processes.process #process cmdline + - Processes.process_id + - Processes.parent_process_path + - Processes.process_path + - Processes.parent_process_id + security_domain: endpoint + impact: 80 + confidence: 100 + # (impact * confidence)/100 + risk_score: 80 + context: + - Source:Endpoint + - Stage:Defense Evasion + message: An instance of $parent_process_name$ spawning $process_name$ was identified on endpoint $dest$ clicking a suspicious attachment. + observable: + - name: dest + type: Hostname + role: + - Victim + - name: parent_process_name + type: Parent Process + role: + - Parent Process + - name: process_name + type: Process + role: + - Child Process \ No newline at end of file diff --git a/tests/endpoint/office_spawning_control.test.yml b/tests/endpoint/office_spawning_control.test.yml new file mode 100644 index 0000000000..963291c0f1 --- /dev/null +++ b/tests/endpoint/office_spawning_control.test.yml @@ -0,0 +1,12 @@ +name: Office Spawning Control Unit Test +tests: +- name: Office Spawning Control + file: endpoint/office_spawning_control.yml + pass_condition: '| stats count | where count > 0' + earliest_time: '-24h' + latest_time: 'now' + attack_data: + - file_name: windows-sysmon_control.log + data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1566.001/macro/windows-sysmon_control.log + source: XmlWinEventLog:Microsoft-Windows-Sysmon/Operational + sourcetype: xmlwineventlog \ No newline at end of file