CPUID is an instruction that identifies CPU type and features.
Has there ever been a case of either targeting or the opposite - ignoring of specific CPUIDs by malware in the wild?
CPUID is an instruction that identifies CPU type and features.
Has there ever been a case of either targeting or the opposite - ignoring of specific CPUIDs by malware in the wild?
Yes, malware sometimes does check CPUID. Reverse engineering of malware has found the use of CPUID as a form of execution guardrails, a technique used by malware to determine whether or not a machine should be targeted. By looking for signs that it is running in a virtual machine (Xen, for example, uses the ASCII string XenVMMXenVMM
, exposed via CPUID), malware can attempt to evade reverse engineering or analysis by either refusing to execute, refusing to download a second stage payload, or confusing the analyst by performing dummy actions unrelated to its real purpose.