Video Walks Through Process Ghosting for In-Memory Payload Execution

· 25:37 · Watch on YouTube ↗

Summary

The video explains Process Ghosting and contrasts it with Process Doppelgänging, showing how file sections and process creation are used to execute an in-memory payload. The presenter speculates that the technique may now be detectable.

Key points

  • The presenter explains Process Doppelgänging as saving a clean file state in an NTFS transaction, writing a payload, creating a section, then restoring the original file while launching from the section.
  • For Process Ghosting, the presenter describes marking a temporary file for deletion, writing the payload and creating a section, then starting execution from that section as the file is removed.
  • The techniques are presented as ways to execute payloads from memory and potentially evade antivirus and EDR inspection of files.
  • The video walks through an open-source C++ implementation and its Windows API calls; the project is not named in the transcript.
  • The presenter speculates that Process Doppelgänging may now be highly detectable after its public disclosure, while noting that he has not tested it extensively.

Article Details

Topics
  • [00:39] Introduction to Process Ghosting and the planned implementation walkthrough
  • [01:19] Comparison of Process Doppelgänging and Process Ghosting
  • [02:49] In-memory payload execution and the motivation to evade detection
  • [05:03] Process Doppelgänging workflow using NTFS transactions and file sections
  • [09:46] Process Ghosting workflow using a deletion-pending file and section object
  • [15:39] Walkthrough of the C++ implementation and its Windows API calls