# Qemu-nyx

위와 같은 Play maker mode를 위해서는 Fuzzing Campaign과정이 각각 독립실행이 되어야 합니다.

또한 Kernel Fuzzing에 있어서 다른 문제점은 병행성에 대해서 고려가 어렵다는 것입니다.



이런 문제들을 해결하기 위해 **`Nyx: Greybox Hypervisor Fuzzing using Fast Snapshots and Affine Types ( Usenix Security 2021 )`**&#xC5D0; 소개된 Nyx-Qemu를 활용하여 각 실행의 독립성을 해결해주었습니다.

<figure><img src="https://3902193903-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvgkC9Z23OZkn4w8HEwe5%2Fuploads%2FTNXj5BocfJDUqzCtamyO%2Fimage.png?alt=media&#x26;token=2ae4630d-c427-4d6c-ab4d-6a1ea743de4c" alt=""><figcaption></figcaption></figure>



Qemu-nyx는 매 실행마다 RAM, Disk, vCPU를 초기 스냅샷 상태로 되돌립니다.

RAM, Disk, vCPU는 Dirty Page Logging을 통해 Dirty된 부분만 부분적으로 복구하여 빠른 속도로 복구할 수 있습니다.

<div><figure><img src="https://3902193903-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvgkC9Z23OZkn4w8HEwe5%2Fuploads%2FhYHPDz8A3xppnPMGjaL4%2Fimage.png?alt=media&#x26;token=4e07e250-11d4-4c05-90b2-eebb5b65b3ec" alt="" width="528"><figcaption></figcaption></figure> <figure><img src="https://3902193903-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvgkC9Z23OZkn4w8HEwe5%2Fuploads%2FMhyHPLvkye4VjfYyOgK3%2Fimage.png?alt=media&#x26;token=e265adb8-0964-4f7b-9ad2-a1a0c534bfcd" alt="" width="528"><figcaption></figcaption></figure></div>
