Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Adversaries may perform software packing or virtual machine software protection to conceal their code.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 28% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -22% | 0% |
| case-13 | ✗→✓ | ▲ Improved | -28% | 0% |
> Sub-technique of: T1027
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.
Platforms: Linux, macOS, Windows
The following tests are from Atomic Red Team and provide actionable ways to test this technique:
Copies and then runs a simple binary (just outputting "the cake is a lie"), that was packed by UPX. No other protection/compression were applied.
Supported Platforms: linux
bashcp #{bin_path} /tmp/packed_bin && /tmp/packed_bin
Copies and then runs a simple binary (just outputting "the cake is a lie"), that was packed by UPX.
The UPX magic number (0x55505821, "UPX!") was changed to (0x4c4f5452, "LOTR"). This prevents the binary from being detected by some methods, and especially UPX is not able to uncompress it any more.
Supported Platforms: linux
bashcp #{bin_path} /tmp/packed_bin && /tmp/packed_bin
Copies and then runs a simple binary (just outputting "the cake is a lie"), that was packed by UPX. No other protection/compression were applied.
Supported Platforms: macos
bashcp #{bin_path} /tmp/packed_bin && /tmp/packed_bin
Copies and then runs a simple binary (just outputting "the cake is a lie"), that was packed by UPX.
The UPX magic number (0x55505821, "UPX!") was changed to (0x4c4f5452, "LOTR"). This prevents the binary from being detected by some methods, and especially UPX is not able to uncompress it any more.
Supported Platforms: macos
bashcp #{bin_path} /tmp/packed_bin && /tmp/packed_bin
If Atomic Red Team tests are not applicable, manually verify the technique by:
Employ heuristic-based malware detection. Ensure updated virus definitions and create custom signatures for observed malware.
| Finding | Severity | Impact | | ------------------------------------- | -------- | --------------- | | Software Packing technique applicable | Low | Defense Evasion |
| CWE ID | Title | | ------- | ---------------------------- | | CWE-693 | Protection Mechanism Failure |
Other measured skills in the registry, with their headline benchmark lift.