Detection rules › Sigma

Suspicious DumpMinitool Execution

Status
test
Severity
high
Log source
category process_creation, product windows
Author
Florian Roth (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects suspicious ways to use the "DumpMinitool.exe" binary

MITRE ATT&CK coverage

Telemetry coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule body

title: Suspicious DumpMinitool Execution
id: eb1c4225-1c23-4241-8dd4-051389fde4ce
status: test
description: Detects suspicious ways to use the "DumpMinitool.exe" binary
references:
    - https://twitter.com/mrd0x/status/1511415432888131586
    - https://twitter.com/mrd0x/status/1511489821247684615
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/DumpMinitool/
author: Florian Roth (Nextron Systems)
date: 2022-04-06
modified: 2023-04-12
tags:
    - attack.credential-access
    - attack.stealth
    - attack.t1036
    - attack.t1003.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Image|endswith:
              - '\DumpMinitool.exe'
              - '\DumpMinitool.x86.exe'
              - '\DumpMinitool.arm64.exe'
        - OriginalFileName:
              - 'DumpMinitool.exe'
              - 'DumpMinitool.x86.exe'
              - 'DumpMinitool.arm64.exe'
    filter_folder:
        Image|contains:
            - '\Microsoft Visual Studio\'
            - '\Extensions\'  # https://github.com/microsoft/vstest/blob/b2e2126f1aa7e5753cafe9515563c99ade6a59ce/src/package/nuspec/Microsoft.TestPlatform.Portable.nuspec#L159
    susp_flags:
        CommandLine|contains: '.txt'
    cmd_has_flags:
        CommandLine|contains:
            - ' Full'
            - ' Mini'
            - ' WithHeap'
    filter_cmd_misses_flags:
        CommandLine|contains: '--dumpType'
    condition: selection and ( ( not filter_folder ) or susp_flags or ( cmd_has_flags and not filter_cmd_misses_flags ) )
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and ( ( not filter_folder ) or susp_flags or ( cmd_has_flags and not filter_cmd_misses_flags ) )

Stage 1: selection

selection:
    - Image|endswith:
          - '\DumpMinitool.exe'
          - '\DumpMinitool.x86.exe'
          - '\DumpMinitool.arm64.exe'
    - OriginalFileName:
          - 'DumpMinitool.exe'
          - 'DumpMinitool.x86.exe'
          - 'DumpMinitool.arm64.exe'

Stage 2: not filter_folder

filter_folder:
    Image|contains:
        - '\Microsoft Visual Studio\'
        - '\Extensions\'

Stage 3: susp_flags

susp_flags:
    CommandLine|contains: '.txt'

Stage 4: cmd_has_flags

cmd_has_flags:
    CommandLine|contains:
        - ' Full'
        - ' Mini'
        - ' WithHeap'

Stage 5: not filter_cmd_misses_flags

filter_cmd_misses_flags:
    CommandLine|contains: '--dumpType'

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imagematch\Extensions\excludes:Image field:"Image" value:"\Extensions\"
Imagematch\Microsoft Visual Studio\excludes:Image field:"Image" value:"\Microsoft Visual Studio\"
CommandLinematch--dumpTypeexcludes:CommandLine field:"CommandLine" value:"--dumpType"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Full corpus 3 (sigma 3)
  • Mini corpus 2 (sigma 2)
  • WithHeap corpus 2 (sigma 2)
  • .txt corpus 9 (sigma 9)
field:"CommandLine" kind:match
Imageends_with
  • \DumpMinitool.arm64.exe corpus 2 (sigma 2)
  • \DumpMinitool.exe corpus 2 (sigma 2)
  • \DumpMinitool.x86.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with
OriginalFileNameeq
  • DumpMinitool.arm64.exe corpus 2 (sigma 2)
  • DumpMinitool.exe corpus 4 (sigma 2, elastic 2)
  • DumpMinitool.x86.exe corpus 2 (sigma 2)
field:"OriginalFileName" kind:eq