Response playbooks, investigation guides, and Atomic Red Team tests are Pro-only. Upgrade to unlock the full detection package for T1027.014.
Upgrade to ProDetect Polymorphic Code in CrowdStrike LogScale
This detection identifies behaviors associated with polymorphic or metamorphic malware that mutates its code or binary footprint at runtime to evade signature-based defenses. Because the binary hash changes with each execution, detections focus on behavioral indicators rather than static signatures: repeated file writes of executables with changing hashes, use of known mutation/packing engines, self-modifying process memory patterns, abnormal entropy in dropped files, and processes that write then immediately execute new PE files from temporary or user-writable directories. Correlation of these behaviors — especially when combined with Command and Scripting Interpreter activity or injection patterns — provides high-confidence indicators of polymorphic malware activity.
MITRE ATT&CK
- Tactic
- Defense Evasion
- Technique
- T1027 Obfuscated Files or Information
- Sub-technique
- T1027.014 Polymorphic Code
- Canonical reference
- https://attack.mitre.org/techniques/T1027/014/
LogScale Detection Query
// Polymorphic code: process writing multiple uniquely-hashed PE files to writable dirs
#event_simpleName=ScriptControlScanTelemetry OR #event_simpleName=PeFileWritten
| rename TargetFileName as WrittenFile
| match(field=WrittenFile, regex="(?i)\\(temp|appdata|programdata|users\\public)\\")
| match(field=WrittenFile, regex="(?i)\.(exe|dll|scr|bin)$")
| groupBy([ComputerName, ParentBaseFileName], function=[
count(SHA256, distinct=true, as=UniqueHashes),
count(WrittenFile, as=FilesWritten),
collect(WrittenFile, limit=10, as=FileList)
])
| where UniqueHashes >= 3
| join(
{#event_simpleName=ProcessRollup2
| match(field=ImageFileName, regex="(?i)\\(temp|appdata|programdata|users\\public)\\")
| rename ImageFileName as ExecImage
| groupBy([ComputerName], function=collect(ExecImage, as=ExecList))},
field=[ComputerName], include=[ExecList]
)
| sort(UniqueHashes, order=desc)
| table([ComputerName, ParentBaseFileName, UniqueHashes, FilesWritten, FileList, ExecList]) CrowdStrike LogScale CQL query detecting polymorphic malware by grouping PE file write telemetry by computer and parent process, counting distinct SHA256 hashes per group over a rolling window, and joining with ProcessRollup2 events showing execution from the same writable directories. Alert threshold: 3+ unique hashes written by the same parent.
Data Sources
Required Tables
False Positives & Tuning
- Falcon's own sensor update mechanism writing versioned sensor component DLLs to ProgramData
- Third-party EDR or AV products that maintain rolling binary versions in AppData for rollback capability
- Enterprise application virtualization products (App-V, Numecent) streaming uniquely-named executable containers
Other platforms for T1027.014
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Simulate Polymorphic PE Mutation via XOR Re-encoding
Expected signal: DeviceFileEvents: 5 FileCreated events in %TEMP% with distinct SHA256 hashes, all with InitiatingProcessFileName=powershell.exe. Sysmon EventID 11 entries for each variant_N.bin file.
- Test 2Drop and Execute Multiple Renamed Copies of a Binary (Hash-Change via Append)
Expected signal: DeviceFileEvents: 4 FileCreated events for svc_update_N.exe in %TEMP% with distinct SHA256 hashes. DeviceProcessEvents: 4 ProcessCreate events for svc_update_N.exe running from %TEMP% with parent cmd.exe. Sysmon EventID 11 and 1 for each iteration.
- Test 3BendyBear-Style In-Memory Stub via PowerShell Reflection (Simulation)
Expected signal: DeviceProcessEvents: PowerShell process with unusual memory allocation patterns. If Defender for Endpoint AMSI/behavior monitoring is enabled: alerts on VirtualAlloc+VirtualProtect RW->RX page permission flip from powershell.exe. Process creation event for powershell.exe with -ExecutionPolicy Bypass flag.
References (5)
- https://attack.mitre.org/techniques/T1027/014/
- https://www.sentinelone.com/cybersecurity-101/polymorphic-malware/
- https://unit42.paloaltonetworks.com/bendybear/
- https://www.linkedin.com/pulse/polymorphic-malware-how-it-works-detection-evasion-/
- https://medium.com/@understanding-polymorphic-code-in-malware
Unlock playbooks & atomic tests with Pro
Get the full detection package for T1027.014 — response playbook and atomic red team tests, plus investigation guidance and hunting queries.
df00tech Pro — £29/user/month