Skip to content
Every technique
T1027.002No distinct observable

Software Packing

StealthLinux, macOS, Windows

Where this stands

A reviewer read the telemetry and concluded there is nothing here to detect that a sibling technique does not already cover.

No analytic in this brief has an observable that is both expressible in lib/sigma and specific to packing rather than to a neighbouring technique. AN0066 (Windows) describes a chain of abnormal allocation size, then a code write, then execution from a non-image section; the only in-brief log source that carries any of that, Sysmon EventID 10 process_access, has no allocation-size or write-content field at all, so the only piece a rule can key on is a GrantedAccess mask plus a CallTrace UNKNOWN frame on the OpenProcess step — and that is exactly data/detections/T1055.002's selector, on the identical logsource, with the same mask family. […]

Covered instead by T1055.002, T1620.

What the technique is

Adversaries may perform software packing or virtual machine software protection to conceal their code. Software packing is a method of compressing or encrypting an executable. Packing an executable changes the file signature in an attempt to avoid signature-based detection. Most decompression techniques decompress the executable code in memory. Virtual machine software protection translates an executable's original code into a special format that only a special virtual machine can run. A virtual machine is then called to run this code. Utilities used to perform software packing are called packers. Example packers are MPRESS and UPX. A more comprehensive list of known packers is available, but adversaries may create their own packing techniques that do not leave the same artifacts as well-known packers to evade defenses.

Read it on attack.mitre.org

What MITRE says you would watch

  • AN0066

    Detection of unpacking behavior through abnormal memory allocation, followed by executable code injection and execution from non-image sections.

  • AN0067

    Correlates ELF file execution with high-entropy writable memory segments and self-modifying code patterns.

  • AN0068

    Detection of packed Mach-O binaries unpacking into memory and transferring control to dynamically modified code segments.

Technique names and descriptions © MITRE ATT&CK®, CC BY 4.0. Not endorsed by MITRE.