Approaching IoT devices with emulation
A few years ago, emulation was mostly used for didactic purposes and for video games – that is, Multiple Arcade Machine Emulator (MAME). Recently, companies such as Lastline Inc. (acquired in 2019 by VMware) and research groups such as BitBlaze from CMU and UC Berkeley have resorted to full system emulation for analysis, instrumentation, and vulnerability research. The emergence of IoT and embedded devices has stimulated the development of tools such as Avatar, Avatar2, and PANDA, which we will see in more detail in Chapters 6 and 7. These frontends for QEMU have added sensational functionality. Thanks to their Python code base, it is very easy to start a new project and control breakpoints, memory values, and all sorts of things through Avatar2, while PANDA allows us to take snapshots and replay the CPU state over and over again, saving us a lot of time.
Another very important reason to use emulation as a tool for cybersecurity and...