← All Threat Hunting ReportsThreat Hunting Exercise

Threat Hunting Exercise: Analyzing EDR Reflective DLL Injection / Process Hollowing Dataset

This hunt uses a simulated EDR/Sysmon dataset (edr_reflective_dll_hollow_2022-07-30T110000.json) capturing T1055.001: Dynamic-link Library Injection and T1055.012: Process Hollowing, where an adversary's loader creates a legitimate-looking process in a suspended state, replaces its memory image with malicious code, and resumes it - evading detections that rely solely on disk-based file scanning.

Step 1: Hypothesis Formation

Hypothesis: A process is created with CREATE_SUSPENDED, followed by memory operations (WriteProcessMemory, NtUnmapViewOfSection, SetThreadContext) targeting its own primary module region, then resumed - with the resulting process's memory-mapped image diverging from its on-disk file (a strong hollowing indicator), and a DLL reported as loaded without a corresponding Image Load event referencing that path on disk. Indicators:

Null Hypothesis: The behavior is legitimate - some security/monitoring/updater tools use similar process-creation patterns (e.g., certain application virtualization or anti-cheat/DRM software) for legitimate protection purposes. Invalidate via hash/signature verification of the parent loader process against known-good vendor binaries.

Rationale: Process hollowing and reflective DLL injection are specifically designed to defeat disk-based AV and naive process-listing defenses by making malicious code appear to run "inside" a trusted, signed binary; this hunt validates memory-behavior-based EDR telemetry as the necessary detection layer.

Step 2: Data Sources and Scope

Step 3: Key Findings

Parsed events (7 shown) confirm a phishing-delivered loader hollowed out a legitimate RegAsm.exe process to run injected code undetected by disk-based scanning.

Timestamp (UTC)HostProcessEventIOC/Why Suspicious?
2022-07-30 11:00:14WKS-FIN-027invoice_report.exeSysmon 1 (Process Create)Loader executed from a Downloads folder after being opened from an email attachment - initial execution.
2022-07-30 11:00:20WKS-FIN-027invoice_report.exe → RegAsm.exeSysmon 1 (Process Create), CREATE_SUSPENDED flag setSuspended-creation IOC: RegAsm.exe (a legitimate .NET utility, rarely launched by a document-viewer-style app) started in a suspended state - the first stage of hollowing.
2022-07-30 11:00:21WKS-FIN-027invoice_report.exe → RegAsm.exeSysmon 10 (ProcessAccess), GrantedAccess=0x1FFFFF (PROCESS_ALL_ACCESS)Memory-access IOC: full-access handle opened by the loader against its own freshly-spawned child - required for the subsequent unmap/write/resume sequence.
2022-07-30 11:00:22WKS-FIN-027RegAsm.exeSysmon 25 (Process Tampering) - Type: "Image is replaced"Core hollowing IOC: EDR's memory-image comparison flags that RegAsm.exe's in-memory image no longer matches its on-disk file - direct confirmation of hollowing.
2022-07-30 11:00:23WKS-FIN-027RegAsm.exeThread resumed; no Sysmon 7 (Image Load) for any new moduleReflective-load IOC: the malicious code is now executing inside RegAsm.exe's memory space, but no standard module-load event was generated - consistent with manual/reflective mapping rather than LoadLibrary.
2022-07-30 11:01:05WKS-FIN-027RegAsm.exeSysmon 3 (Network Connection) to 91.219.238.12:443Behavioral IOC: RegAsm.exe (normally a local-only .NET registration utility) initiates an external network connection - activity entirely inconsistent with its legitimate purpose.
--(binary verification)invoice_report.exe: unsigned, hash not present in any vendor catalogLegitimacy check IOC: the loader itself has no legitimate signature or vendor association, ruling out a benign application-protection tool explanation.

Validation:

Step 4: Recommendations & Next Steps

Hypothesis confirmed - a phishing-delivered loader used classic process hollowing to inject malicious code into a legitimate RegAsm.exe process, evading disk-based detection!