Zero to Hero Hacking

Zero to Hero Hacking is a informational repository serving as a comprehensive guide to computer hacking featuring CTF writeups as well as general information and tutorials for common tools, techniques, protocols, and the like. This repository is a “live” repository, meaning that it will be continually updated. If an article is out of date then please submit an issue and it will be resolved.

Check it out on GitHub!


This project is currently in slowmode. My college classes have started again. Updates to this repository will still come when I have free time.


This repository is split into a couple of different directories:

Directory Description
basics Learn the basics of computer hacking.
binex Binary exploitation articles.
crypto Cryptography articles.
forensics Digital forensics articles.
linux Linux articles.
malware Malware articles.
misc Miscellaneous articles.
network Networking articles.
opsec Operations security articles.
osint Open-source intelligence articles.
re Reverse engineering articles.
webex Web exploitation articles.
writeups Read up on CTF writeups.


In order to dive into computer hacking, it is recommended that you are already well acquainted with at least one programming language! For many, Python is the obvious choice as it allows for rapid scripting and exploit development. Once you know one programming language, it becomes much easier to learn others.

Critical languages:

Other recommended languages:

Starting Point

For beginners, it is recommended that you start at the basics and then read up on some CTF writeups.

As a beginner, it’s very easy to get intimidated! Remember that many of us in the field were in your shoes at one point, and we all know what it’s like to be a beginner. Trust in yourself, keep learning, and never stop learning. More than anything else, “hacking” is a mindset that embraces a journey of never-ending learning and critical thinking.

About Contributing

There are a variety of ways that you can contribute to this project. If you would like to write articles, submit proofreads and/or revisions, or contribute in some other direct manner, please follow this guide. If you would like to contribute indirectly by notifying me of proofreads, outdated methods and techniques, broken links, etc. then please submit an issue and it will be resolved.