“…System components that are not directly addressable by CPU instructions or by trusted hardware modules enable malware to survive in non-volatile memories despite repeated power cycles, secure-and trusted-boot operations [56]; i.e., malware becomes persistent. For example, persistent malware has been found in the firmware of peripheral controllers [15], [43], [67], network interface cards [16], [17], disk controllers [5], [48], [60], [77], USB controllers [2], as well as routers and firewalls [5]. Naturally, persistent malware can infect the rest of the system state, and thus a remote adversary can retain long-term undetected control of a user's local system.…”