Trusted Design

T1055 - Process Injection

概要

Adversaries may inject code into processes in order to evade process-based defenses as well as possibly elevate privileges. Process injection is a method of executing arbitrary code in the address space of a separate live process. Running code in the context of another process may allow access to the process's memory, system/network resources, and possibly elevated privileges. Execution via process injection may also evade detection from security products since the execution is masked under a legitimate process.

There are many different ways to inject code into a process, many of which abuse legitimate functionalities. These implementations exist for every major OS but are typically platform specific.

More sophisticated samples may perform multiple process injections to segment modules and further evade detection, utilizing named pipes or other inter-process communication (IPC) mechanisms as a communication channel.

管理者によるコメント

T1055(Process Injection:プロセスインジェクション)は、攻撃者が自身の悪意のあるコードを、既に実行されている他の正常なプロセス(例: explorer.exe, svchost.exe)のメモリ空間に注入して実行させる高度な技術です。

1. 概要

Process Injectionは、自身の独立したプロセスとして動くのではなく、他人のプロセスに「寄生」して活動する手法です。

攻撃者が実現できること

2. 攻撃の流れ

最も一般的な「DLL注入(DLL Injection)」の例を挙げます。

  1. ターゲットの特定: 注入先となる正常なプロセスのID(PID)を取得します。
  2. メモリ領域の確保: VirtualAllocEx 関数などを使用して、ターゲットプロセスのメモリ内にコードを書き込むための空き地を作ります。
  3. コードの書き込み: WriteProcessMemory を使い、その空き地に悪意のあるDLLのパスやシェルコードを書き込みます。
  4. 実行のキック: CreateRemoteThread などを呼び出し、ターゲットプロセス内で新しいスレッドを作成して、書き込んだコードを実行させます。

3. 防御・対策

4. 重要ポイント

5. 関連する主なCWE

6. 関連する代表的なCVE

T1055はOSの標準機能を悪用する技術ですが、これを容易にする脆弱性や悪用事例が多数存在します。

分析

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

この攻撃手法を利用する脅威アクターは登録されていません。

関連する CVE

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


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