Intro to Cybersecurity and Hacking (CTFs)
We'll learn about cryptography methods and their weaknesses, forensics and how to hide messages in image files, buffer overflows and how to find vulnerabilities in C code, reverse engineering and how to figure out what a piece of code is supposed to do, and web exploits and things to avoid when making a website. In the process, we'll learn how to work with linux, write python scripts, and use powerful tools.
Some programming knowledge would be helpful, but it is not an official prerequisite; if necessary, I can teach some introductory python if you have not had experience with it before. Since the best way to learn this material is through practice with challenges called CTFs (capture the flags), you will need an account for picoCTF.org (just do not use your full real name as your username), which offers challenges and servers that we are allowed to hack. Some of the sessions may involve other software such as ghidra, radare2, or an IDE, but for most of the sessions, a web browser is sufficient.
Note that this series is meant to help you be a better programmer and be able to find vulnerabilities in code, whether your own or someone else's; it is not meant for malicious hacking.