Shellcode techniques
When it comes to shellcode development for Windows, there are a number of techniques that can be used. In this section, we will cover some of these techniques that are prevalent today. These techniques range from buffer overflow attacks to attacks leveraging pointers known as eggs, backdooring PE files, and so on.
We will get started by considering buffer overflow attacks. Let's dive into this.
Buffer overflow attacks
A buffer is a volatile location of memory. Its aim is to temporarily hold data while this is being transferred from one location to another. Since this is a temporary hold, it has limitations. These limitations are the size of the buffer, which is generally small. When you overflow the buffer, you are exceeding the capacity of the buffer. The result of the overflow can lead to malicious code being executed.
Stack-based buffer overflows are one of the most common types of exploits that exist. These are often used to take over the code...