Process doppelgänging → spawn signed image with attacker bytes
Use NTFS transactional file APIs to overlay an attacker image during process creation. The final mapped process differs from the on-disk file — AV sees only the legit signed image at scan time.
§ Context
Assumed environment: foothold on Windows pre-1809 or modern build that doesn't fully neuter transactional NTFS. AV/EDR relies on on-disk scanning more than runtime memory analysis.
§ Steps
- 01Foothold shellInitial AccessT1078— Valid Accounts
- 02Process spawns with attacker codeExecutionT1059— Command and Scripting Interpreter
- 03Rollback transaction — on-disk file unchangedDefense EvasionT1027— Obfuscated Files or Information
- 04NtCreateProcessEx from sectionDefense EvasionINJ-PROCESS-HOLLOWING— Process Hollowing (T1055.012)
- 05Overlay attacker image within transactionDefense EvasionINJ-DOPPELGANGING— Process Doppelgänging
- 06Open transacted fileDefense EvasionINJ-DOPPELGANGING— Process Doppelgänging
§ References
§ Frequently asked
- What is the "Process doppelgänging → spawn signed image with attacker bytes" attack path?
- Use NTFS transactional file APIs to overlay an attacker image during process creation. The final mapped process differs from the on-disk file — AV sees only the legit signed image at scan time. It chains 6 steps drawn from real-world offensive-security techniques.
- What starting position does this attack require?
- The first step is Foothold shell (T1078) — a initial access primitive. Assumed environment: foothold on Windows pre-1809 or modern build that doesn't fully neuter transactional NTFS.
- What is the final impact of this kill-chain?
- The final step lands on Open transacted file (INJ-DOPPELGANGING), which falls under Defense Evasion. From here, an operator typically pivots into post-exploitation or maintains persistence.
- How can defenders detect or prevent this attack?
- Detection and prevention vary per step. Refer to each linked MITRE ATT&CK entry under "References" — every technique on that page lists defensive controls, detection telemetry, and known threat-actor usage.
§ Related dossiers
- Shared techniques2
LogoFAIL → UEFI bootkit → persistent ring-0
Drop a malformed JPG/PNG/BMP into the EFI partition's boot logo path. Vulnerable vendor UEFI parses it pre-OS, executes attacker code before SecureBoot's verifier — install a bootkit that survives wipe + reinstall.
- Shared techniques2
nf_tables UAF → kernel R/W → root
CVE-2024-1086-class nf_tables UAF reachable from a user namespace. Win the race with userfaultfd to land an attacker object in the freed slot, build a kernel R/W primitive, overwrite the current task's cred struct.
- Shared techniques2
io_uring UAF → modprobe_path overwrite → root
Use an io_uring UAF to land arbitrary kernel write, repoint /proc/sys/kernel/modprobe to an attacker binary, then trigger a kernel auto-modprobe — runs the binary as root.
- Shared techniques2
Process hollowing → run beacon in svchost shell
Spawn svchost.exe suspended, unmap its image, write attacker PE into the same address space, resume — the process keeps a legit-looking PEB and command line but executes beacon code.
- Shared techniques2
BYOVD → kernel-level disable of EDR callbacks
From local admin, load a signed-but-vulnerable driver. Use its kernel primitive to walk the EDR's PsSetCreateProcessNotifyRoutine entries and unlink them — EDR stops receiving events while still 'running'.
- Shared techniques2
F5 BIG-IP iControl auth bypass (CVE-2022-1388) → root on LB
Connection-header smuggle bypasses iControl REST auth, command-injection RCE as root. Load balancers see all traffic — recover TLS keys, session cookies, internal SSO config.