Detection rules › Sigma

Potentially Suspicious Rundll32.EXE Execution of UDL File

Status
test
Severity
medium
Log source
product windows, category process_creation
Author
@kostastsale
Source
github.com/SigmaHQ/sigma

Detects the execution of rundll32.exe with the oledb32.dll library to open a UDL file. Threat actors can abuse this technique as a phishing vector to capture authentication credentials or other sensitive data.

MITRE ATT&CK coverage

Event coverage

ProviderEventTitle
SysmonEvent ID 1Process creation

Rule body yaml

title: Potentially Suspicious Rundll32.EXE Execution of UDL File
id: 0ea52357-cd59-4340-9981-c46c7e900428
status: test
description: |
    Detects the execution of rundll32.exe with the oledb32.dll library to open a UDL file.
    Threat actors can abuse this technique as a phishing vector to capture authentication credentials or other sensitive data.
references:
    - https://trustedsec.com/blog/oops-i-udld-it-again
author: '@kostastsale'
date: 2024-08-16
tags:
    - attack.execution
    - attack.command-and-control
    - attack.stealth
    - attack.t1218.011
    - attack.t1071
logsource:
    category: process_creation
    product: windows
detection:
    selection_parent:
        ParentImage|endswith: '\explorer.exe'
    selection_img:
        - Image|endswith: '\rundll32.exe'
        - OriginalFileName: 'RUNDLL32.EXE'
    selection_cli:
        CommandLine|contains|all:
            - 'oledb32.dll'
            - ',OpenDSLFile '
            - '\\Users\\*\\Downloads\\' # Note: You can adjust the path to the download directory or other directories according to your environment.
        CommandLine|endswith: '.udl'
    condition: all of selection_*
falsepositives:
    - UDL files serve as a convenient and flexible tool for managing and testing database connections in various development and administrative scenarios.
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_parent

selection_parent:
    ParentImage|endswith: '\explorer.exe'

Stage 2: selection_img

selection_img:
    - Image|endswith: '\rundll32.exe'
    - OriginalFileName: 'RUNDLL32.EXE'

Stage 3: selection_cli

selection_cli:
    CommandLine|contains|all:
        - 'oledb32.dll'
        - ',OpenDSLFile '
        - '\\Users\\*\\Downloads\\'
    CommandLine|endswith: '.udl'

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
CommandLineends_with
  • .udl
CommandLinematch
  • ,OpenDSLFile
  • \\Users\\*\\Downloads\\
  • oledb32.dll
Imageends_with
  • \rundll32.exe corpus 95 (sigma 95)
OriginalFileNameeq
  • RUNDLL32.EXE corpus 62 (sigma 35, splunk 21, elastic 6)
ParentImageends_with
  • \explorer.exe corpus 13 (sigma 13)