Detection rules › Sigma
Regsvr32 DLL Execution With Uncommon Extension
Detects a "regsvr32" execution where the DLL doesn't contain a common file extension.
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Execution | T1574 Hijack Execution Flow |
| Stealth | T1574 Hijack Execution Flow |
Event coverage
| Provider | Event | Title |
|---|---|---|
| Sysmon | Event ID 1 | Process creation |
Rule body yaml
title: Regsvr32 DLL Execution With Uncommon Extension
id: 50919691-7302-437f-8e10-1fe088afa145
status: test
description: Detects a "regsvr32" execution where the DLL doesn't contain a common file extension.
references:
- https://app.any.run/tasks/34221348-072d-4b70-93f3-aa71f6ebecad/
author: Florian Roth (Nextron Systems)
date: 2019-07-17
modified: 2023-05-24
tags:
- attack.privilege-escalation
- attack.persistence
- attack.stealth
- attack.t1574
- attack.execution
logsource:
category: process_creation
product: windows
detection:
selection:
- Image|endswith: '\regsvr32.exe'
- OriginalFileName: 'REGSVR32.EXE'
filter_main_legit_ext:
CommandLine|contains:
# Note: For better accuracy you might not want to use contains
- '.ax'
- '.cpl'
- '.dll' # Covers ".dll.mui"
- '.ocx'
filter_optional_pascal:
CommandLine|contains: '.ppl'
filter_optional_avg:
CommandLine|contains: '.bav'
filter_main_null_4688:
CommandLine: null
filter_main_empty_4688:
CommandLine: ''
condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
- Other legitimate extensions currently not in the list either from third party or specific Windows components.
level: medium
Stages and Predicates
Stage 0: condition
selection and not 1 of filter_main_* and not 1 of filter_optional_*Stage 1: selection
selection:
- Image|endswith: '\regsvr32.exe'
- OriginalFileName: 'REGSVR32.EXE'
Stage 2: not filter_main_*
filter_main_legit_ext:
CommandLine|contains:
- '.ax'
- '.cpl'
- '.dll'
- '.ocx'
filter_main_null_4688:
CommandLine: null
filter_main_empty_4688:
CommandLine: ''
Stage 3: not filter_optional_*
filter_optional_pascal:
CommandLine|contains: '.ppl'
filter_optional_avg:
CommandLine|contains: '.bav'
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
CommandLine | is_null | |
CommandLine | match | .ax |
CommandLine | match | .cpl |
CommandLine | match | .dll |
CommandLine | match | .ocx |
CommandLine | match | .bav |
CommandLine | match | .ppl |
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.
| Field | Kind | Values |
|---|---|---|
Image | ends_with |
|
OriginalFileName | eq |
|