T1546.012 Google Chronicle · YARA-L

Detect Image File Execution Options Injection in Google Chronicle

Adversaries may establish persistence and/or elevate privileges by executing malicious content triggered by Image File Execution Options (IFEO) debugger values. IFEO enables developers to attach debuggers to applications. Registry keys in HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\{binary}.exe can be set with a Debugger value that allows a debugger to be launched automatically when the specified binary is executed. Adversaries abuse this by setting the Debugger value to their malicious payload — whenever the target binary executes, Windows launches the adversary's payload instead (with the target binary name as an argument). This can be used to replace legitimate processes, persist on reboot, or escalate privileges.

MITRE ATT&CK

Tactic
Privilege Escalation Persistence
Technique
T1546 Event Triggered Execution
Sub-technique
T1546.012 Image File Execution Options Injection
Canonical reference
https://attack.mitre.org/techniques/T1546/012/

YARA-L Detection Query

Google Chronicle (YARA-L)
yaral
rule ifeo_injection_detection {
  meta:
    author = "Argus Detection Engineering"
    description = "Detects Image File Execution Options injection via registry modification of Debugger, GlobalFlag, or MitigationOptions values"
    mitre_attack_technique = "T1546.012"
    mitre_attack_tactic = "Persistence, Privilege Escalation"
    severity = "HIGH"
    confidence = "HIGH"
    created = "2026-04-20"

  events:
    $reg.metadata.event_type = "REGISTRY_MODIFICATION"
    $reg.target.registry.registry_key = /(?i)Image File Execution Options\\/
    (
      $reg.target.registry.registry_value_name = /(?i)^(Debugger|GlobalFlag|MitigationOptions)$/
    )
    (
      $reg.target.registry.registry_value_data = /(?i)(cmd\.exe|powershell|mshta|wscript\.exe|cscript\.exe|rundll32|regsvr32|AppData|\\Temp\\|ProgramData)/
      or
      $reg.target.registry.registry_key = /(?i)(sethc\.exe|utilman\.exe|osk\.exe|Magnify\.exe|Narrator\.exe|DisplaySwitch\.exe|AtBroker\.exe|taskmgr\.exe|regedit\.exe|msconfig\.exe|mmc\.exe)/
      or
      (
        $reg.target.registry.registry_value_name = "GlobalFlag"
        and $reg.target.registry.registry_value_data = "512"
      )
    )
    $reg.principal.hostname = $hostname

  condition:
    $reg
}
high severity high confidence

Chronicle YARA-L 2.0 rule detecting IFEO injection via registry modification events. Triggers on Debugger, GlobalFlag, or MitigationOptions value writes under the Image File Execution Options key, with additional scoring for high-value accessibility binary targets and suspicious scripting engine payloads.

Data Sources

Windows Registry events via Chronicle Windows sensor or Sysmon forwardingMicrosoft Defender for Endpoint (MDE) registry telemetry ingested into Chronicle

Required Tables

REGISTRY_MODIFICATION UDM events

False Positives & Tuning

  • Legitimate JIT debugger registration by development IDEs (Visual Studio, JetBrains Rider) which write their debugger path to IFEO for applications under active development — validate against developer workstation asset inventory
  • Windows Defender Application Control or EMET policy enforcement tools writing MitigationOptions values to enforce exploit protection on vulnerable application binaries
  • Automated software testing frameworks or CI/CD build agents that configure IFEO Debugger values on test binaries to capture crashes in sandboxed environments
Download portable Sigma rule (.yml)

Other platforms for T1546.012


Testing Methodology

Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1IFEO Debugger Injection on cmd.exe

    Expected signal: Sysmon Event ID 13: TargetObject=Image File Execution Options\cmd.exe\Debugger, Details=C:\Windows\System32\notepad.exe. Process creation for reg.exe. If cmd.exe is then launched, notepad.exe starts with cmd.exe as its argument.

  2. Test 2IFEO GlobalFlag for SilentProcessExit

    Expected signal: Sysmon Event ID 13 records: GlobalFlag set to 512 in IFEO\notepad.exe, and MonitorProcess set in SilentProcessExit\notepad.exe. The combination of GlobalFlag=512 and MonitorProcess registration is the SilentProcessExit technique.

  3. Test 3Enumerate All IFEO Debugger Registrations

    Expected signal: Process creation for reg.exe with query /s flags. Read-only enumeration. Output reveals all IFEO Debugger and GlobalFlag values across all registered binaries.

Unlock Pro Content

Get the full detection package for T1546.012 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections