Detection rules › Sigma

Suspicious Response File Execution Via Odbcconf.EXE

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

Detects execution of "odbcconf" with the "-f" flag in order to load a response file with a non-".rsp" extension.

MITRE ATT&CK coverage

Event coverage

ProviderEventTitle
SysmonEvent ID 1Process creation

Rule body yaml

title: Suspicious Response File Execution Via Odbcconf.EXE
id: 2d32dd6f-3196-4093-b9eb-1ad8ab088ca5
related:
    - id: 5f03babb-12db-4eec-8c82-7b4cb5580868
      type: derived
    - id: 65d2be45-8600-4042-b4c0-577a1ff8a60e
      type: obsolete
status: test
description: Detects execution of "odbcconf" with the "-f" flag in order to load a response file with a non-".rsp" extension.
references:
    - https://learn.microsoft.com/en-us/sql/odbc/odbcconf-exe?view=sql-server-ver16
    - https://lolbas-project.github.io/lolbas/Binaries/Odbcconf/
    - https://www.trendmicro.com/en_us/research/17/h/backdoor-carrying-emails-set-sights-on-russian-speaking-businesses.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-22
modified: 2024-03-13
tags:
    - attack.stealth
    - attack.t1218.008
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\odbcconf.exe'
        - OriginalFileName: 'odbcconf.exe'
    selection_cli:
        CommandLine|contains|windash: ' -f '
    filter_main_rsp_ext:
        CommandLine|contains: '.rsp'
    filter_main_runonce_odbc:
        # When odbcconf is run with the "/R" flag, it creates a "runonce" key to run at the next reboot
        ParentImage: 'C:\Windows\System32\runonce.exe'
        Image: 'C:\Windows\System32\odbcconf.exe'
        CommandLine|contains: '.exe /E /F "C:\WINDOWS\system32\odbcconf.tmp"'
    condition: all of selection_* and not 1 of filter_main_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_main_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\odbcconf.exe'
    - OriginalFileName: 'odbcconf.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|windash: ' -f '

Stage 3: not filter_main_*

filter_main_rsp_ext:
    CommandLine|contains: '.rsp'
filter_main_runonce_odbc:
    ParentImage: 'C:\Windows\System32\runonce.exe'
    Image: 'C:\Windows\System32\odbcconf.exe'
    CommandLine|contains: '.exe /E /F "C:\WINDOWS\system32\odbcconf.tmp"'

Exclusions

Top-level NOT(...) conjuncts: predicates this rule actively suppresses.

FieldKindExcluded values
CommandLinematch.exe /E /F "C:\WINDOWS\system32\odbcconf.tmp"
ImageeqC:\Windows\System32\odbcconf.exe
ParentImageeqC:\Windows\System32\runonce.exe
CommandLinematch.rsp

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
CommandLinematch
  • -f transforms: windash corpus 8 (sigma 6, chronicle 2)
Imageends_with
  • \odbcconf.exe corpus 11 (sigma 11)
OriginalFileNameeq
  • odbcconf.exe corpus 9 (sigma 9)