When a file is opened, the default program used to open the file (also called the file association or handler) is checked. File association selections are stored in the Windows Registry and can be edited by users, administrators, or programs that have Registry access (Citation: Microsoft Change Default Programs) (Citation: Microsoft File Handlers) or by administrators using the built-in assoc utility. (Citation: Microsoft Assoc Oct 2017) Applications can modify the file association for a given file extension to call an arbitrary program when a file with the given extension is opened.
System file associations are listed under HKEY_CLASSES_ROOT.[extension], for example HKEY_CLASSES_ROOT.txt. The entries point to a handler for that extension located at HKEY_CLASSES_ROOT[handler]. The various commands are then listed as subkeys underneath the shell key at HKEY_CLASSES_ROOT[handler]\shell[action]\command. For example:
* HKEY_CLASSES_ROOT\txtfile\shell\open\command
* HKEY_CLASSES_ROOT\txtfile\shell\print\command
* HKEY_CLASSES_ROOT\txtfile\shell\printto\command
The values of the keys listed are commands that are executed when the handler opens the file extension. Adversaries can modify these values to continually execute arbitrary commands. (Citation: TrendMicro TROJ-FAKEAV OCT 2012)
T1042は、特定の拡張子(例:.txt や .pdf)のファイルを開いたときに起動するデフォルトのプログラムをマルウェアに書き換えることで、「永続化(Persistence)」を実現します。
この手法で攻撃者は、「ユーザーが日常的にファイルを開く操作をトリガーにした、マルウェアの自動再実行」を実現します。
永続化:
ユーザーが特定のファイル(テキスト、画像、PDFなど)をダブルクリックするたびに、裏でマルウェアが確実に起動する環境を作ります。
検知の回避:
スタートアップフォルダや通常のサービス登録のように「起動時に一斉に動く」仕組みではないため、セキュリティツールの自動起動チェックをすり抜けやすくなります。
攻撃者は、レジストリ(通常はユーザー権限、またはシステム全体に適用する場合は管理者権限)を操作して設定を書き換えます。
ターゲット拡張子の選定:
ユーザーが業務で頻繁に開く拡張子(例:.txt)を選びます。
レジストリの改ざん:
Windowsレジストリの以下のいずれかのキーを書き換えます。
HKEY_CURRENT_USER\Software\Classes\(ユーザー個別)HKEY_LOCAL_MACHINE\Software\Classes\(システム全体).txt に紐づく txtfile\shell\open\command の値を、正規の notepad.exe から「マルウェアのパス(またはマルウェアを経由してメモ帳を開くコマンド)」に変更します。ユーザー操作の待機:
ユーザーがデスクトップやフォルダ内にあるテキストファイルをダブルクリックするのを待ちます。
実行:
OSは関連付けに従ってマルウェアを起動します。攻撃者はユーザーに不審がられないよう、バックグラウンドでマルウェアを動かしつつ、フォアグラウンドでは本来のファイルを正規のアプリで開いて見せかけます。
「関連付け変更の固定化」と「レジストリ監視」が有効です。
OEM Default Associationsの活用:
グループポリシー(GPO)等を使用して、ファイル関連付けの構成ファイル(XML)を強制適用し、ユーザー(やマルウェア)が勝手にデフォルトアプリを変更できないようにします。
レジストリの監視:
Software\Classes 配下の shell\open\command キーに対する予期せぬ書き込み操作を監視・検知します。
EDRによるプロセスツリー分析:
例えば、エクスプローラー(explorer.exe)からテキストファイルを開いたはずなのに、親プロセスとして不審なスクリプトやバイナリが立ち上がっていないかを監視します。
ユーザー権限でも実行可能:
HKEY_CURRENT_USER (HKCU) 側のレジストリを書き換えるだけであれば、攻撃者は管理者権限を持っていなくても(一般ユーザー権限のままでも)永続化を達成できるため、侵入初期の段階から悪用されやすい特徴があります。
ソーシャルエンジニアリングとの親和性:
悪意あるファイルを直接実行させるのではなく、関連付けを変えた後に「無害なファイルをユーザー自身に開かせる」ことで、心理的ハードルを下げさせます。
CWE-15: External Control of System or Configuration Setting:
システムの設定(ファイルの関連付け)を外部から不正に変更されてしまう不備。
CWE-73: External Control of File Name or Path:
実行されるプログラムのパスが攻撃者によって制御されてしまう問題。
特定のソフトウェア脆弱性(CVE)を突くというよりは、OSのデザイン(仕様)を悪用するテクニックですが、以下のような攻撃で組み合わせて使われます。
APT攻撃グループ(例:APT29 / Cozy Bear):
標的の環境に侵入後、検知を回避しながら長期的に潜伏するための足がかり(永続化)として、このレジストリ書き換えを好んで使用します。
ランサムウェア攻撃:
暗号化が完了した後、身代金要求画面(.txt等)を開かせる際に、二度と元のアプリで開けないように関連付け自体を固定化・改ざんするケースがあります。
Windows 10/11では、ファイル関連付けが改ざんされると、OSが「アプリの既定値がリセットされました」という通知を出す仕組みが標準実装されています。社内でこの通知が多発している端末がある場合、T1042(T1546.001)の攻撃を受けている可能性があるため、該当レジストリの確認を推奨します。
この攻撃手法を利用する脅威アクターは登録されていません。