People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!
sev_es_string_io is called to copy the string between an unencrypted guest memory region
and the virtualized target dev. When doing this copy, the size of the write and count variable (amount of bytes) are controlled by the attacker. memcpy is performed. However, the location being written to is limited in size to 0x1000 bytes! So, if we specify something outside of this range, for a write, then we have an out of bounds write primitive. In practice, size * count > 0x1000 is all we need to do.VMGExit is a shutdown function, which is not what is usually fuzzed. The more you fuzz the more things you will find!