PyREBox — это песочница для обратного проектирования с поддержкой сценариев Python. Он основан на QEMU, и его цель — помочь обратному инжинирингу, предоставляя возможности динамического анализа и отладки с другой точки зрения. PyREBox позволяет проверять работающую виртуальную машину QEMU, изменять ее память или регистры, а также управлять ее выполнением путем создания простых скриптов на python для автоматизации любого вида анализа. QEMU (при работе в качестве эмулятора всей системы) эмулирует всю систему (ЦП, память, устройства...). Используя методы VMI, ему не требуется выполнять какие-либо изменения в гостевой операционной системе, поскольку он прозрачно извлекает информацию из своей памяти во время выполнения.
Несколько академических проектов, таких как DECAF, PANDA, S2E или AVATAR, ранее использовали инструменты на основе QEMU для решения задач обратного проектирования. Эти проекты позволяют писать плагины на C/C++ и реализовывать несколько расширенных функций, таких как динамический анализ испорченных данных, символьное выполнение или даже запись и воспроизведение трассировок выполнения. В PyREBox мы стремимся применить эту технологию, уделяя особое внимание простоте дизайна и удобству использования системы для аналитиков угроз.