Chapter 6: Countermeasures and Bypasses
In the preceding chapters, you learned about shellcode, assembly language, and various tools that are used when creating shellcode (such as the various debuggers and MSPvenom), and finally, applied that knowledge to shellcode techniques in both Windows and Linux.
Now, we need to cover the countermeasures that are deployed by these operating systems. Countermeasures are important from a defensive standpoint: you need to block attacks. Although this book is focused on offensive shellcode, we also need to understand these countermeasures and how they can be bypassed where possible. It's important to understand the countermeasures and the bypasses that exist because you will encounter these on target systems.
In this chapter, we will cover countermeasures and bypasses for both major operating systems through the following topics:
- Countermeasures and bypasses for Windows
- Countermeasures and bypasses for Linux