Trusted Design

T1183 - Image File Execution Options Injection

概要

Image File Execution Options (IFEO) enable a developer to attach a debugger to an application. When a process is created, a debugger present in an application’s IFEO will be prepended to the application’s name, effectively launching the new process under the debugger (e.g., “C:\dbg\ntsd.exe -g notepad.exe”). (Citation: Microsoft Dev Blog IFEO Mar 2010)

IFEOs can be set directly via the Registry or in Global Flags via the GFlags tool. (Citation: Microsoft GFlags Mar 2017) IFEOs are represented as Debugger values in the Registry under HKLM\SOFTWARE{\Wow6432Node}\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ where is the binary on which the debugger is attached. (Citation: Microsoft Dev Blog IFEO Mar 2010)

IFEOs can also enable an arbitrary monitor program to be launched when a specified program silently exits (i.e. is prematurely terminated by itself or a second, non kernel-mode process). (Citation: Microsoft Silent Process Exit NOV 2017) (Citation: Oddvar Moe IFEO APR 2018) Similar to debuggers, silent exit monitoring can be enabled through GFlags and/or by directly modifying IEFO and silent process exit Registry values in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\. (Citation: Microsoft Silent Process Exit NOV 2017) (Citation: Oddvar Moe IFEO APR 2018)

An example where the evil.exe process is started when notepad.exe exits: (Citation: Oddvar Moe IFEO APR 2018)

Similar to Process Injection, these values may be abused to obtain persistence and privilege escalation by causing a malicious executable to be loaded and run in the context of separate processes on the computer. (Citation: Elastic Process Injection July 2017) Installing IFEO mechanisms may also provide Persistence via continuous invocation.

Malware may also use IFEO for Defense Evasion by registering invalid debuggers that redirect and effectively disable various system and security applications. (Citation: FSecure Hupigon) (Citation: Symantec Ushedix June 2008)

管理者によるコメント

T1183は「Image File Execution Options Injection(IFEOインジェクション)」として定義されていた、Windows環境を標的にした非常に強力かつ極めてステルス性の高い「永続化(Persistence)」、「特権昇格(Privilege Escalation)」、および「防御回避(Defense Evasion)」のテクニックです。

Windowsが標準で持っている開発者向けのデバッグ機能「IFEO(イメージファイル実行オプション)」のレジストリ設定を悪用し、「ユーザーやOSが特定の正規プログラム(例: メモ帳や拡大鏡など)を起動した瞬間に、それを横取りしてマルウェアを身代わりとして自動実行させる」手法です。

1. 概要(攻撃者は何を実現できるのか?)

この手法で攻撃者は、「スタートアップ設定やサービス一覧などの目立つ場所に痕跡を一切残さずに、ユーザーの日常操作に便乗してバックドアを自動起動させること」を実現します。

2. IFEOの本来の仕様と攻撃の仕組み

IFEOは本来、ソフトウェア開発者が「特定のアプリ(例:notepad.exe)が起動したときに、自動的にデバッガ(開発用ツール)をアタッチしてバグを調査したい」という目的のためにMicrosoftが用意した正規のレジストリ機能です。

IFEOレジストリ内に Debugger という名前の値(値データ:デバッガのパス)を作成すると、Windowsシステムは対象のアプリが起動される直前に、その Debugger で指定されたプログラムを「親」として最優先で立ち上げる仕様になっています。

攻撃者はこの仕様を悪用し、デバッガのパスとしてマルウェアのパス(または cmd.exe)を指定します。これにより、Windowsはデバッガが起動したと思い込み、正規アプリの代わりにマルウェアを起動してしまいます。

3. 攻撃の流れ

この手法はシステムのレジストリ構成を書き換える必要があるため、通常はローカル管理者権限(Administrator)を確保した後の「永続化(足場固め)」として実行されます。

  1. 初期侵入と管理者権限の確保:
    脆弱性などを突いてシステムに侵入し、ローカル管理者権限を奪取します。

  2. 標的アプリの選定:
    ユーザーが頻繁に使う、あるいはログイン画面から起動できる正規アプリ(例: メモ帳 notepad.exe や ユーティリティマネージャー utilman.exe)を標定します。

  3. レジストリの改ざん(トリガー):
    コマンド(reg add)を悪用し、WindowsのIFEOレジストリ領域に標的アプリのキーを作成し、Debugger 値にマルウェアのパスを埋め込みます。

    • コマンド例(メモ帳の乗っ取り):
      reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v Debugger /t REG_SZ /d "C:\Windows\Temp\backdoor.exe" /f
  4. トラップの発動:
    仕込み完了後、ユーザーが日常業務の中で「テキストファイルを開こう」とメモ帳(notepad.exe)をダブルクリックします。

  5. コード実行(目的達成):
    Windowsシステムはメモ帳を起動するのを止め、IFEOの設定に従って C:\Windows\Temp\backdoor.exe(マルウェア)をバックグラウンドで自動起動させます。ユーザー側には何も表示されないか、あるいは攻撃者が用意したダミーのメモ帳画面が表示されるため、異変に気づくことは困難です。

4. 防御・対策

「IFEOレジストリキーに対する不審な書き込み行為」を完全にロック・監視することが決定的な防衛策です。

5. 関連する主なCWE

6. 関連する代表的な事例

特定のバグ(CVE)によるハッキングではなく、Windowsの「仕様」を逆手に取ったポストエクスプロイト(侵入後)の工作ですが、標的型攻撃(APT)やランサムウェアの事前の隠蔽フェーズで非常に好まれる手口です。

実務上のアドバイス

Windows端末のフォレンジック調査において、「デスクトップのメモ帳をクリックしても一瞬砂時計が出るだけで画面が開かない」、あるいは「PCのロック画面で Shift鍵を5回連打 して固定キー機能を呼び出そうとしたら、なぜか画面の裏で黒いコマンドプロンプト(SYSTEM権限)が一瞬見えた」といった怪奇現象に遭遇した場合、本手法(T1183)が完全に仕込まれています。

即座にレジストリの Image File Execution Options を確認し、そこに本来あるはずのない不審な Debugger 値が刺さっていないかをチェックすることが、隠蔽されたバックドアの心臓部を掴み取るブレイクスルーとなります。

分析

この攻撃手法を利用する脅威アクター

関連する CVE

攻撃手法 – 脅威アクター Graph


← Technique一覧に戻る ← Tactics一覧に戻る