Detection rules › Sigma

Suspicious Microsoft Office Child Process

Status
test
Severity
high
Log source
product windows, category process_creation
Author
Florian Roth (Nextron Systems), Markus Neis, FPT.EagleEye Team, Vadim Khrykov, Cyb3rEng, Michael Haag, Christopher Peacock @securepeacock, @scythe_io
Source
github.com/SigmaHQ/sigma

Detects a suspicious process spawning from one of the Microsoft Office suite products (Word, Excel, PowerPoint, Publisher, Visio, etc.)

MITRE ATT&CK coverage

Event coverage

ProviderEventTitle
SysmonEvent ID 1Process creation

Rule body yaml

title: Suspicious Microsoft Office Child Process
id: 438025f9-5856-4663-83f7-52f878a70a50
related:
    - id: c27515df-97a9-4162-8a60-dc0eeb51b775 # Speicifc OneNote rule due to its recent usage in phishing attacks
      type: derived
    - id: e1693bc8-7168-4eab-8718-cdcaa68a1738
      type: derived
    - id: 23daeb52-e6eb-493c-8607-c4f0246cb7d8
      type: obsolete
    - id: 518643ba-7d9c-4fa5-9f37-baed36059f6a
      type: obsolete
    - id: 04f5363a-6bca-42ff-be70-0d28bf629ead
      type: obsolete
status: test
description: Detects a suspicious process spawning from one of the Microsoft Office suite products (Word, Excel, PowerPoint, Publisher, Visio, etc.)
references:
    - https://www.hybrid-analysis.com/sample/465aabe132ccb949e75b8ab9c5bda36d80cf2fd503d52b8bad54e295f28bbc21?environmentId=100
    - https://mgreen27.github.io/posts/2018/04/02/DownloadCradle.html
    - https://thedfirreport.com/2021/03/29/sodinokibi-aka-revil-ransomware/
    - https://doublepulsar.com/follina-a-microsoft-office-code-execution-vulnerability-1a47fce5629e
    - https://github.com/vadim-hunter/Detection-Ideas-Rules/blob/02bcbfc2bfb8b4da601bb30de0344ae453aa1afe/Threat%20Intelligence/The%20DFIR%20Report/20210329_Sodinokibi_(aka_REvil)_Ransomware.yaml
    - https://github.com/splunk/security_content/blob/300af51b88ad5d5b27ce4f5f54e4d6e6a3a2c06d/detections/endpoint/office_spawning_control.yml
    - https://twitter.com/andythevariable/status/1576953781581144064?s=20&t=QiJILvK4ZiBdR8RJe24u-A
    - https://www.elastic.co/security-labs/exploring-the-ref2731-intrusion-set
    - https://github.com/elastic/detection-rules/blob/c76a39796972ecde44cb1da6df47f1b6562c9770/rules/windows/defense_evasion_execution_msbuild_started_by_office_app.toml
    - https://www.vmray.com/analyses/2d2fa29185ad/report/overview.html
    - https://app.any.run/tasks/c903e9c8-0350-440c-8688-3881b556b8e0/
author: Florian Roth (Nextron Systems), Markus Neis, FPT.EagleEye Team, Vadim Khrykov, Cyb3rEng, Michael Haag, Christopher Peacock @securepeacock, @scythe_io
date: 2018-04-06
modified: 2023-04-24
tags:
    - attack.execution
    - attack.stealth
    - attack.t1047
    - attack.t1204.002
    - attack.t1218.010
logsource:
    category: process_creation
    product: windows
detection:
    selection_parent:
        ParentImage|endswith:
            - '\EQNEDT32.EXE'
            - '\EXCEL.EXE'
            - '\MSACCESS.EXE'
            - '\MSPUB.exe'
            - '\ONENOTE.EXE'
            - '\POWERPNT.exe'
            - '\VISIO.exe'
            - '\WINWORD.EXE'
            - '\wordpad.exe'
            - '\wordview.exe'
    selection_child_processes:
        - OriginalFileName:
              - 'bitsadmin.exe'
              - 'CertOC.exe'
              - 'CertUtil.exe'
              - 'Cmd.Exe'
              - 'CMSTP.EXE'
              - 'cscript.exe'
              - 'curl.exe'
              - 'HH.exe'
              - 'IEExec.exe'
              - 'InstallUtil.exe'
              - 'javaw.exe'
              - 'Microsoft.Workflow.Compiler.exe'
              - 'msdt.exe'
              - 'MSHTA.EXE'
              - 'msiexec.exe'
              - 'Msxsl.exe'
              - 'odbcconf.exe'
              - 'pcalua.exe'
              - 'PowerShell.EXE'
              - 'RegAsm.exe'
              - 'RegSvcs.exe'
              - 'REGSVR32.exe'
              - 'RUNDLL32.exe'
              - 'schtasks.exe'
              - 'ScriptRunner.exe'
              - 'wmic.exe'
              - 'WorkFolders.exe'
              - 'wscript.exe'
        - Image|endswith:
              - '\AppVLP.exe'
              - '\bash.exe'
              - '\bitsadmin.exe'
              - '\certoc.exe'
              - '\certutil.exe'
              - '\cmd.exe'
              - '\cmstp.exe'
              - '\control.exe'
              - '\cscript.exe'
              - '\curl.exe'
              - '\forfiles.exe'
              - '\hh.exe'
              - '\ieexec.exe'
              - '\installutil.exe'
              - '\javaw.exe'
              - '\mftrace.exe'
              - '\Microsoft.Workflow.Compiler.exe'
              - '\msbuild.exe'
              - '\msdt.exe'
              - '\mshta.exe'
              - '\msidb.exe'
              - '\msiexec.exe'
              - '\msxsl.exe'
              - '\odbcconf.exe'
              - '\pcalua.exe'
              - '\powershell.exe'
              - '\pwsh.exe'
              - '\regasm.exe'
              - '\regsvcs.exe'
              - '\regsvr32.exe'
              - '\rundll32.exe'
              - '\schtasks.exe'
              - '\scrcons.exe'
              - '\scriptrunner.exe'
              - '\sh.exe'
              - '\svchost.exe'
              - '\verclsid.exe'
              - '\wmic.exe'
              - '\workfolders.exe'
              - '\wscript.exe'
    selection_child_susp_paths: # Idea: Laiali Kazalbach, Mohamed Elsayed (#4142)
        Image|contains:
            - '\AppData\'
            - '\Users\Public\'
            - '\ProgramData\'
            - '\Windows\Tasks\'
            - '\Windows\Temp\'
            - '\Windows\System32\Tasks\'
    condition: selection_parent and 1 of selection_child_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_parent and 1 of selection_child_*

Stage 1: selection_parent

selection_parent:
    ParentImage|endswith:
        - '\EQNEDT32.EXE'
        - '\EXCEL.EXE'
        - '\MSACCESS.EXE'
        - '\MSPUB.exe'
        - '\ONENOTE.EXE'
        - '\POWERPNT.exe'
        - '\VISIO.exe'
        - '\WINWORD.EXE'
        - '\wordpad.exe'
        - '\wordview.exe'

Stage 2: selection_child_processes

selection_child_processes:
    - OriginalFileName:
          - 'bitsadmin.exe'
          - 'CertOC.exe'
          - 'CertUtil.exe'
          - 'Cmd.Exe'
          - 'CMSTP.EXE'
          - 'cscript.exe'
          - 'curl.exe'
          - 'HH.exe'
          - 'IEExec.exe'
          - 'InstallUtil.exe'
          - 'javaw.exe'
          - 'Microsoft.Workflow.Compiler.exe'
          - 'msdt.exe'
          - 'MSHTA.EXE'
          - 'msiexec.exe'
          - 'Msxsl.exe'
          - 'odbcconf.exe'
          - 'pcalua.exe'
          - 'PowerShell.EXE'
          - 'RegAsm.exe'
          - 'RegSvcs.exe'
          - 'REGSVR32.exe'
          - 'RUNDLL32.exe'
          - 'schtasks.exe'
          - 'ScriptRunner.exe'
          - 'wmic.exe'
          - 'WorkFolders.exe'
          - 'wscript.exe'
    - Image|endswith:
          - '\AppVLP.exe'
          - '\bash.exe'
          - '\bitsadmin.exe'
          - '\certoc.exe'
          - '\certutil.exe'
          - '\cmd.exe'
          - '\cmstp.exe'
          - '\control.exe'
          - '\cscript.exe'
          - '\curl.exe'
          - '\forfiles.exe'
          - '\hh.exe'
          - '\ieexec.exe'
          - '\installutil.exe'
          - '\javaw.exe'
          - '\mftrace.exe'
          - '\Microsoft.Workflow.Compiler.exe'
          - '\msbuild.exe'
          - '\msdt.exe'
          - '\mshta.exe'
          - '\msidb.exe'
          - '\msiexec.exe'
          - '\msxsl.exe'
          - '\odbcconf.exe'
          - '\pcalua.exe'
          - '\powershell.exe'
          - '\pwsh.exe'
          - '\regasm.exe'
          - '\regsvcs.exe'
          - '\regsvr32.exe'
          - '\rundll32.exe'
          - '\schtasks.exe'
          - '\scrcons.exe'
          - '\scriptrunner.exe'
          - '\sh.exe'
          - '\svchost.exe'
          - '\verclsid.exe'
          - '\wmic.exe'
          - '\workfolders.exe'
          - '\wscript.exe'

Stage 3: selection_child_susp_paths

selection_child_susp_paths:
    Image|contains:
        - '\AppData\'
        - '\Users\Public\'
        - '\ProgramData\'
        - '\Windows\Tasks\'
        - '\Windows\Temp\'
        - '\Windows\System32\Tasks\'

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
Imageends_with
  • \AppVLP.exe corpus 6 (sigma 6)
  • \Microsoft.Workflow.Compiler.exe corpus 3 (sigma 3)
  • \bash.exe corpus 22 (sigma 22)
  • \bitsadmin.exe corpus 29 (sigma 29)
  • \certoc.exe corpus 10 (sigma 10)
  • \certutil.exe corpus 43 (sigma 43)
  • \cmd.exe corpus 130 (sigma 130)
  • \cmstp.exe corpus 8 (sigma 8)
  • \control.exe corpus 5 (sigma 5)
  • \cscript.exe corpus 73 (sigma 73)
  • \curl.exe corpus 30 (sigma 30)
  • \forfiles.exe corpus 12 (sigma 12)
  • \hh.exe corpus 16 (sigma 16)
  • \ieexec.exe corpus 3 (sigma 3)
  • \installutil.exe corpus 9 (sigma 9)
  • \javaw.exe corpus 2 (sigma 2)
  • \mftrace.exe corpus 6 (sigma 6)
  • \msbuild.exe corpus 10 (sigma 10)
  • \msdt.exe corpus 9 (sigma 9)
  • \mshta.exe corpus 67 (sigma 67)
  • \msidb.exe corpus 2 (sigma 2)
  • \msiexec.exe corpus 21 (sigma 21)
  • \msxsl.exe corpus 6 (sigma 6)
  • \odbcconf.exe corpus 11 (sigma 11)
  • \pcalua.exe corpus 3 (sigma 3)
  • \powershell.exe corpus 182 (sigma 182)
  • \pwsh.exe corpus 168 (sigma 168)
  • \regasm.exe corpus 9 (sigma 9)
  • \regsvcs.exe corpus 8 (sigma 8)
  • \regsvr32.exe corpus 65 (sigma 65)
  • \rundll32.exe corpus 95 (sigma 95)
  • \schtasks.exe corpus 56 (sigma 56)
  • \scrcons.exe corpus 9 (sigma 9)
  • \scriptrunner.exe corpus 12 (sigma 12)
  • \sh.exe corpus 16 (sigma 16)
  • \svchost.exe corpus 23 (sigma 23)
  • \verclsid.exe corpus 4 (sigma 4)
  • \wmic.exe corpus 60 (sigma 60)
  • \workfolders.exe corpus 2 (sigma 2)
  • \wscript.exe corpus 75 (sigma 75)
Imagematch
  • \AppData\ corpus 7 (sigma 7)
  • \ProgramData\ corpus 2 (sigma 2)
  • \Users\Public\ corpus 10 (sigma 10)
  • \Windows\System32\Tasks\ corpus 3 (sigma 3)
  • \Windows\Tasks\ corpus 3 (sigma 3)
  • \Windows\Temp\ corpus 8 (sigma 8)
OriginalFileNameeq
  • CMSTP.EXE corpus 6 (sigma 5, elastic 1)
  • CertOC.exe corpus 6 (sigma 6)
  • CertUtil.exe corpus 21 (sigma 14, splunk 6, elastic 1)
  • Cmd.Exe corpus 65 (sigma 43, splunk 17, elastic 5)
  • HH.exe corpus 9 (sigma 5, splunk 4)
  • IEExec.exe corpus 3 (sigma 3)
  • InstallUtil.exe corpus 11 (sigma 6, splunk 4, elastic 1)
  • MSHTA.EXE corpus 22 (sigma 13, splunk 6, elastic 3)
  • Microsoft.Workflow.Compiler.exe corpus 6 (sigma 3, splunk 2, elastic 1)
  • Msxsl.exe corpus 5 (sigma 3, elastic 2)
  • PowerShell.EXE corpus 120 (sigma 84, splunk 30, elastic 6)
  • REGSVR32.exe corpus 26 (sigma 17, splunk 6, elastic 3)
  • RUNDLL32.exe corpus 62 (sigma 35, splunk 21, elastic 6)
  • RegAsm.exe corpus 8 (sigma 6, elastic 1, splunk 1)
  • RegSvcs.exe corpus 7 (sigma 5, elastic 1, splunk 1)
  • ScriptRunner.exe corpus 3 (sigma 3)
  • WorkFolders.exe corpus 2 (sigma 2)
  • bitsadmin.exe corpus 12 (sigma 9, splunk 2, kusto 1)
  • cscript.exe corpus 19 (sigma 17, elastic 2)
  • curl.exe corpus 15 (sigma 12, splunk 3)
  • javaw.exe corpus 2 (sigma 2)
  • msdt.exe corpus 8 (sigma 6, elastic 2)
  • msiexec.exe corpus 10 (sigma 5, splunk 4, elastic 1)
  • odbcconf.exe corpus 9 (sigma 9)
  • pcalua.exe corpus 2 (sigma 2)
  • schtasks.exe corpus 23 (sigma 18, splunk 4, elastic 1)
  • wmic.exe corpus 61 (sigma 36, splunk 18, elastic 7)
  • wscript.exe corpus 20 (sigma 17, elastic 3)
ParentImageends_with
  • \EQNEDT32.EXE corpus 5 (sigma 5)
  • \EXCEL.EXE corpus 8 (sigma 8)
  • \MSACCESS.EXE corpus 4 (sigma 4)
  • \MSPUB.exe corpus 4 (sigma 4)
  • \ONENOTE.EXE corpus 5 (sigma 5)
  • \POWERPNT.exe corpus 6 (sigma 6)
  • \VISIO.exe corpus 4 (sigma 4)
  • \WINWORD.EXE corpus 10 (sigma 10)
  • \wordpad.exe corpus 2 (sigma 2)
  • \wordview.exe corpus 2 (sigma 2)