Open-source project
amandewatnitrr/hacking-tutorial avatar
amandewatnitrr/hacking-tutorial

A Lab-First Tutorial for Ethical Hacking: Inside the hacking-tutorial Repository

A tutorial for beginners in Ethical Hacking

48 stars57 forksPythonNOASSERTION

At a glance

What is it?
This review examines amandewatnitrr/hacking-tutorial, a GPL-3.0 tutorial repository for ethical hacking beginners, covering its structure, hands-on approach, and limitations.
Who is it for?
Adopt hacking-tutorial if you are a beginner who wants a structured, lab-based introduction to ethical hacking with Python scripting and containerized practice environments. Avoid it if you need advanced exploitation techniques or production-grade tooling, as the content is explicitly introductory and safety-focused.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • amandewatnitrr/hacking-tutorial48 ★ · +2
Star history
Repository2026-08-222026-10-22
amandewatnitrr/hacking-tutorial4648

2 Stars in the last 61 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

What This Repository Actually Provides

The hacking-tutorial repository is a collection of lessons and scripts for people who want to learn ethical hacking from zero. It is not a single tool or framework. It is a curriculum. The README describes it as a tutorial series covering network scanning, MITM attacks, ARP spoofing, Python scripting for security tasks, SQL injection fundamentals, and an intro to binary exploitation. The intended audience is a beginner who wants theory plus practical exercises. The project stresses that everything is meant for labs you control. That boundary is important: no live targets, no third-party systems. The repository is written primarily in Python, and the license is GPL-3.0, which means any derivative work must stay open source. If you are an engineer evaluating this for adoption, think of it as a syllabus and a set of examples, not a production tool.

How the Lessons Are Organized and What You Actually Learn

The repository has a clear folder structure. The core lessons live in ethical-hacking/ and python-for-eth-hacking/. The ethical-hacking folder includes topics like DNS, SNI, encryption, and password attacks. The python-for-eth-hacking folder applies Python to security tooling, with a specific example mentioned: a guide to post scanning. There is also a python-scripts/ folder with standalone scripts such as port scanners, ARP spoof detectors, and deauth tools. The SQL injection lab is separate and containerized. That separation matters. The README says the SQL injection lab is intentionally non-actionable: it shows unsafe patterns as strings and gives safe alternatives. So the project is not teaching you how to exploit a live database. It is teaching you what the vulnerability looks like and how to avoid it. The binary exploitation section is introductory, which likely means basic concepts rather than advanced exploit development. The structure suggests a progression: start with recon, move to attacks, then to scripting, then to specific vulnerability classes.

Getting It Running: Commands and Environment Setup

The README gives a straightforward start. You clone the repository with git clone https://github.com/amandewatnitrr/hacking-tutorial.git, then cd into the directory. There is no single install script. Lessons live in markdown files, and scripts are standalone Python files. The README points to external resources: a Kali Linux VM from zsecurity.org, VMware Workstation, and Windows 10 VM images. That means you are expected to set up your own lab environment. The SQL injection lab is containerized, so Docker is likely required for that part, though the README does not give a docker run command. For the scripts, you need Python installed. The README warns to use a safe, isolated environment like a VM or an isolated test network. So the practical steps are: clone, read the markdown lessons, run the Python scripts in a VM, and use Docker for the SQL lab. There is no package manager file listed, no requirements.txt mentioned, so dependencies are probably minimal or per-script.

The Safety and Ethics Constraints Are Part of the Design

A notable feature is the explicit safety and ethics section. The repository tells users to only run exercises in environments they control. It also includes a security warning about avoiding unmaintained or suspicious libraries like python_crypto. That warning is unusual for a tutorial repo, and it suggests the author is aware of the risks of teaching offensive security. The SQL injection lab is designed to be non-actionable, meaning it demonstrates unsafe patterns as strings, not as executable exploits. This is a deliberate trade-off: you learn the theory without the ability to cause real harm. For a beginner, that is probably good. For someone who wants to practice actual exploitation, it is limiting. The README also mentions a masking check in CONTRIBUTING.md to prevent leaking real IP or MAC addresses in commits. That is a thoughtful touch for a public repo where people might paste tool output. But it also means the content is curated, and you should not expect raw, unfiltered attack techniques.

Genuine Limitations and Cases Where It Is the Wrong Tool

The repository has clear limitations. First, it is introductory. The binary exploitation section is described as introductory, so do not expect advanced exploit development or reverse engineering. Second, the SQL injection lab is intentionally non-actionable, so you cannot practice actual SQL injection against a live target. That is a safety feature, but it also means you will not get real exploitation experience. Third, the repository is a collection of markdown files and scripts, not a maintained software project. There are no releases listed, and the last push date is unknown. That means the content may become stale, especially regarding tools like Bettercap or Nmap, which change over time. Fourth, the README references external resources like a specific Kali VM and a Windows 10 VM on Google Drive and Sync.com. Those links may break or be outdated. If you are an organization looking for a standardized training program, this repo is not that. It is a personal tutorial that you must adapt. It is also the wrong tool if you need to teach compliance or corporate policy; it is purely technical.

A Real Alternative: How It Differs in Approach

A common alternative for learning ethical hacking is a structured online platform like TryHackMe or Hack The Box. Those platforms provide live, hosted lab environments where you attack intentionally vulnerable machines. The approach is fundamentally different: hacking-tutorial gives you static lessons and scripts to run in your own VM, while platforms like TryHackMe give you interactive, guided challenges with a built-in attack box. The difference is the environment. With hacking-tutorial, you control everything: the network, the targets, the tools. That is more flexible but also more setup work. With a platform, the environment is managed for you, and you can focus purely on the attack techniques. Another difference is the safety model: hacking-tutorial relies on your discipline to stay in your own lab, while platforms enforce boundaries by design. If you want minimal setup and immediate hands-on practice, a platform is easier. If you want to build your own lab and learn how to configure it, hacking-tutorial is closer to that goal.

Maintenance, Licensing, and What to Verify Before Use

The repository is licensed under GPL-3.0. That means if you use the scripts or lessons in your own project, you must release that project under the same license. For an individual learning at home, that is not a problem. For a company building internal training materials, it could be a constraint. The README does not mention any maintenance history, and no releases are listed, so you should assume the content is updated sporadically. The last push date is unknown, which is a warning sign for a project that depends on current tools. Before using it, verify that the links to external resources still work, especially the VM images. Also check the CONTRIBUTING.md for the masking check, because that affects how you can contribute. The README mentions a UI folder and a deployed site at hacking-tutorial.vercel.app, but the review does not cover that frontend in detail. If you plan to use the SQL injection lab, confirm that the Docker setup is documented somewhere, because the README does not give explicit commands. Overall, the maintenance cost is low because it is just markdown and scripts, but the risk is staleness.

Editorial conclusion

Adopt hacking-tutorial if you are a beginner who wants a structured, lab-based introduction to ethical hacking with Python scripting and containerized practice environments. Avoid it if you need advanced exploitation techniques or production-grade tooling, as the content is explicitly introductory and safety-focused. Before using it, verify that your lab environment is isolated (VM or Docker), review the safety and ethics guidelines in the README, and check the license terms for any scripts you plan to reuse. The repository is a solid starting point, but it is not a substitute for hands-on practice on your own targets.

Frequently asked questions

Which hacking is illegal?

The repository takes no position on the law and does not attempt to classify activities. What it does instead is scope itself: everything is meant to be run in environments you control, no live targets are used, and the injection material is written to be non-actionable with a licence note explaining the boundary. Legal questions about your own circumstances are not addressed anywhere on the page.

How can I start learning hacking?

Clone the repository and work through the lesson series, which runs from an encryption crash course through name resolution and protocol lessons to password attacks, then a post scanning guide in Python, then the injection lab and binary exploitation. Practical exercises require a virtual machine, a container, or an isolated test network that you control.

Can I learn hacking legally?

The project's own answer is that you can, inside a lab you own. It states the constraint three times across the overview, the getting started instructions and the safety section, naming a local machine, a virtual machine or a container as acceptable environments, and it provides prepared virtual machine images and a hypervisor link for building that environment.

What are the 7 steps of hacking?

The repository does not present a numbered seven step framework and cites none. What it gives is a curriculum list: network scanning and information gathering, pre-connection and post-connection attacks, man-in-the-middle attacks, device discovery and address resolution spoofing, named scanning and interception tools, scripting in Python to automate security tasks, injection fundamentals in a sandboxed lab, and an introduction to binary exploitation.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/amandewatnitrr-hacking-tutorial.svg)](https://hysenlabs.com/projects/amandewatnitrr-hacking-tutorial)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/amandewatnitrr-hacking-tutorial.svg)](https://hysenlabs.com/projects/amandewatnitrr-hacking-tutorial)