This book is a guide, tutorial and reference for one who wishes to learn about hacking and to clarify many common misperceptions.
Hacking is not simply the ability to locate bugs, nor is it the ability to write shell-scripts and execute shellcode, it is more than being a competent programmer or skilled software engineer, it is of both skill and mindset. It is not a fixed pattern or system, but a framework of being able to adapt and to think outside of the box, to come up with new tricks and knowledge and to be precise, but to be able to react quickly and the ability to create and execute plans well.
Primarily some basic programming and decent computer skills and knowledge is needed. If this is lacking in any manner, some basic courses in C, Rust or any compiled language is strongly recommended. Web programming and some shell scripting are some additional recommendations.
We will cover some basic programming concepts in the beginning and the mentality required for hacking. Afterwards, we move on to some of the more basic skills, such as vulnerability and bug detection. We will also go in depth in concepts, such as networking and data extraction. From the mentality to the programming, from the usage, to the creation of tools and scripts, this book is primarily a guide and a reference.
We understand that quite a few terms and concepts will be unfamiliar, but we will try our best to explain them. If not, please consult with reference books and guides on the subject, but please do not simply copy and paste without understanding any of it at all.
We will cover a few Linux and Windows specific tools and utilities and note any platform limitations they may have.