Learn Python & Ethical Hacking From Scratch (Udemy.com)
Write 20+ hacking programs to learn hacking and programming at the same time | No prior knowledge required
Created by: Zaid Sabih
Last updated November 2025
Our take
Based on the ratings of 21,548 students, a sample of their written reviews and the syllabus, as the course stood in November 2025. No course pays to be reviewed.
Zaid Sabih teaches Python and ethical hacking at the same time, and the hook is that every section builds a working tool: a MAC changer, an ARP spoofer, a packet sniffer, a keylogger, a cross-platform backdoor, a web vulnerability scanner. The syllabus shows 184 lectures across 20 sections, about 25 hours in all, with roughly 139,000 students enrolled. It is aimed at people with no Linux, programming or hacking background, and several reviewers describe themselves as exactly that crowd.
Students praise the structure. Reviewers say Zaid explains each attack in plain language before writing the code for it, and the balance of theory and practice suits the subject. The rating breakdown backs that up: about 20,000 of the 21,500 reviews are four or five stars. The low-star reviews are consistent though. The course dates from 2018, and several recent reviewers say commands are obsolete, some links are dead, the virtual machine is flaky, and parts of the code no longer run. One experienced Python programmer felt he was mostly watching Zaid code rather than learning the language.
The listing says it was updated in November 2025, but complaints about aging material continue into 2026, so expect to troubleshoot. Some sections still cover Python 2. There are seven assignments and no quizzes or coding exercises, so practice depends on building the tools alongside the videos. Among the ethical hacking courses we compare, this is the one to pick for people who want to write their own tools rather than only run existing ones. Recommended, with patience for setup.
Pros
- Every section ends with a tool you built: MAC changer, network scanner, DNS spoofer, keylogger, backdoor, web crawler
- Reviewers say the pacing and plain-language explanations work well for people with zero coding background
- About 64 percent of 21,500 reviews are five stars, and repeat students say Zaid's courses are consistently well structured
- Covers networking, malware and web hacking in one 25-hour package, with 15 caption tracks
Cons
- Recent one-star reviews report obsolete commands, dead links and a virtual machine that no longer behaves
- Still teaches Python 2 alongside 3, and the HTTP-era web material felt dated to an experienced programmer
- No quizzes or coding exercises, so it is easy to watch Zaid code without really learning Python
The course is so interesting and the pacing is excellent for a newby like me. So well explained and enjoyable to go through.
Listed as All Levels, but it targets beginners with no Linux, Python or hacking background. Basic IT skills and a 4GB machine are enough.
What you will learn
- 180+ videos (25 hours) on Python programming & ethical hacking
- Write over 20 hacking and security programs
- Learn 2 topics at the same time - Python programming & Ethical Hacking
- No programming, hacking or Linux knowledge required
- Write programs in Python 2 and 3
- Write cross platform programs that work on Windows, Apple Mac OS & Linux
- Have a deep understanding on how computer systems work
- Install hacking lab & needed software (on Windows, Apple Mac OS and Linux)
- Start from 0 up to a high-intermediate level
- Learn by example, by writing exciting programs
- Model problems, design solutions & implement them using Python
- Have a strong base & use the skills learned to write any program even if its not related to hacking
- Understand what is Hacking, what is Programming, and why are they related
- Design a testing lab to practice hacking & programming safely
- Interact & use the Linux terminal
- Understand what MAC address is & how to change it
- Write a python program to change MAC address
- Use Python modules and libraries
- Understand Object Oriented Programming
- Write object oriented programs
- Model & design extendable programs
- Write a program to discover devices connected to the same network
- Read, analyse & manipulate network packets
- Understand & interact with different network layers such as ARP, DNS, HTTP ....etc
- Write a program to redirect the flow of packets in a network (ARP spoofer)
- Write a packet sniffer to filter interesting data such as usernames and passwords
- Write a program to redirect DNS requests (DNS Spoofer)
- Intercept and modify network packets on the fly
- Write a program to replace downloads requested by any computer on the network
- Analyse & modify HTTP requests and responses
- Inject code in HTML pages loaded by computers on the same network
- Downgrade HTTPS to HTTP
- Write a program to detect ARP Spoofing attacks
- Write payloads to download a file, execute command, download & execute, download execute & report .....etc
- Use sockets to send data over TCP
- Send data reliably over TCP
- Write client-server programs
- Write a backdoor that works on Windows, Apple Mac OS and Linux
- Implement features in the backdoor such as file system access, upload and download files and persistence
- Write a remote keylogger that can register all keystrikes and send them by Email
- Interact with files using python (read, write & modify)
- Convert python programs to binary executables that work on Windows, OS X and Linux
- Convert malware to torjans that work and function like other file types like an image or a PDF
- Bypass Anti-Virus Programs
- Understand how websites work, the technologies used and how to test them for weaknesses
- Send requests towebsites and analyse responses
- Write a program that can discover hidden paths in websites
- Write a program that can map websites and discover all links, subdomains, files and directories
- Extract and submit forms using python
- Run dictionary attacks and guess login information on login pages
- Analyse HTML using Python
- Interact with websites using Python
- Write a program that can discover vulnerabilities in websites
Course content
20 sections · 184 lectures · 25 hours of video 7 assignments, 1 article
- 1Introduction 1 free preview12 lectures · 1.6 hours
- 2Writing a MAC Address Changer - Python Basics 1 free preview13 lectures · 1.7 hours
- 3MAC Changer - Algorithm Design 1 free preview7 lectures · 48 min
- 4Programming a Network Scanner15 lectures · 1 quiz · 1.9 hours
- 5Writing an ARP Spoofer11 lectures · 1 quiz · 1.3 hours
- 6Writing a Packet Sniffer 1 free preview8 lectures · 1.1 hours
- 7Writing a DNS Spoofer 1 free preview7 lectures · 1 quiz · 58 min
- 8Writing a File Interceptor 1 free preview6 lectures · 1 quiz · 51 min
- 9Writing a Code Injector 1 free preview13 lectures · 1 quiz · 1.6 hours
- 10Bypassing HTTPS 1 free preview4 lectures · 33 min
- 11Writing an ARP Spoof Detector3 lectures · 24 min
- 12Writing Malware 1 free preview10 lectures · 1.5 hours
- 13Writing Malware - Keylogger 1 free preview8 lectures · 1.3 hours
- 14Writing Malware - Backdoors 1 free preview22 lectures · 3.1 hours
- 15Writing Malware - Packaging 1 free preview15 lectures · 2 hours
- 16Website / Web Application Hacking 1 free preview3 lectures · 16 min
- 17Website Hacking - Writing a Crawler9 lectures · 1.3 hours
- 18Writing a Program To Guess Login Information2 lectures · 1 quiz · 21 min
- 19Writing a Vulnerability Scanner15 lectures · 1 quiz · 2 hours
- 20Bonus Section1 lecture · 4 min
Who it is for
The instructor says it suits
- Anybody interested in learning Python programming
- Anybody interested in learning ethical hacking / penetration testing
What you need before you start
- Basic IT knowledge
- No Linux, programming or hacking knowledge required.
- Computer with a minimum of 4GB ram/memory
- Operating System: Windows / Apple Mac OS / Linux
How it compares
Against the other 388 rated Udemy courses in Python on CourseDuck:
- Rating4.6 out of 5higher than 70% of them
- Reviews21,548#23 of 389 by number of reviews
- Length24.9 hourslonger than 81% of them
- Last updatedNovember 2025more recently than 72% of them
Course Description
Last Update: May 2024
Welcome to my comprehensive course on python programming and ethical hacking. The course assumes you have NO prior knowledge in any of these topics, and by the end of it you'll be at a high intermediate level being able to combine both of these skills to write python programs to hack computer systems exactly the same way that black hat hackers do. That's not all, you'll also be able to use the programming skills you learn to write any program even if it has nothing to do with hacking.
This course is highly practical but it won't neglect the theory, we'll start with basics of ethical hacking and python programming and installing the needed software. Then we'll dive and start programming straight away. You'll learn everything by example, by writing useful hacking programs, no boring dry programming lectures.
The course is divided into a number of sections, each aims to hack a specific system! You'll first learn how this system works and its weaknesses, then you'll lean how to write a python program to exploit these weaknesses and hack it. As we write the program I will teach you python programming from scratch covering one topic at a time. By the end of the course you're going to have a number of ethical hacking programs written by yourself (see below) from backdoors, keyloggers, credential harvesters, network hacking tools, website hacking tools and the list goes on. You'll also have a deep understanding on how computer systems work, how to model problems, design an algorithm to solve problems and implement the solution using python .
As mentioned in this course you will learn both ethical hacking and programming at the same time, here are some of the topics that will be covered in the course:
Programming topics:
Programming in python 2 and 3.
Using modules and libraries.
Variables, types, etc.
Handling user input.
Reading and writing files .
Functions .
Loops .
Data structures.
Regex.
Decision making.
Recursion.
Threading.
Object oriented programming.
Packet manipulation using scapy.
Netfilterqueue.
Socket programming.
String manipulation.
Exceptions.
Serialisation.
Compiling programs to binary executables.
Sending & receiving HTTP requests.
Parsing HTML.
+ more!
Hacking topics:
Basics of network hacking / penetration testing .
Changing MAC address & bypassing filtering .
Network mapping.
ARP Spoofing - redirect the flow of packets in a network.
DNS Spoofing - redirect requests from one website to another.
Spying network devices / clients.
Analysing network traffic such as usernames, passwords, visited urls, etc.
Inject code in pages loaded by computerd connected to the same network.
Replace files on the fly as they get downloaded by computers on the same network.
Detect ARP spoofing attacks.
Bypass HTTPS.
Create malware for Windows, Apple Mac OS and Linux.
Create trojans for Windows, Apple Mac OS and Linux.
Hack Windows, Apple Mac OS and Linux using custom backdoors.
Bypass Anti-Virus programs.
Steal credentials using fake prompts .
Display fake updates .
Use own keylogger to spy on everything typed on Windows & Linux.
Basics of website hacking / penetration testing .
Discover subdomains .
Discover hidden files and directories in a website .
Run wordlist attacks to guess login information .
Discover and exploit XSS vulnerabilities .
Discover weaknesses in websites using own vulnerability scanner.
Programs you'll build in this course:
You'll learn all the above by implementing the following hacking programs
mac_changer - changes MAC Address to anything we want .
network_scanner - scans network and discovers the IP and MAC address of connected clients.
arp_spoofer - runs an ARP spoofing attack to redirect the flow of packets in the network allowing us to intercept data.
packet_sniffer - filters intercepted data and displays usernames, passwords, visited links, etc.
dns_spoofer - redirects DNS requests, eg: redirects requests to from one domain to another.
file_interceptor - Intercepts downloads and replaces them with any file we want .
code_injector - injects code in intercepted HTML pages.
arpspoof_detector - detects ARP spoofing attacks.
execute_command payload - executes a system command on the computer it gets executed on.
execute_and_report payload - executes a system command and reports result via email .
download_and_execute payload - downloads a file and executes it on target system .
download_execute_and_report payload - downloads a file, executes it, and reports result by email .
reverse_backdoor - gives remote control over the system it gets executed on, allows us to
Access file system.
Execute system commands .
Download & upload files.
keylogger - records key-strikes and sends them to us by email.
crawler - discovers hidden paths on a target website .
discover_subdomains - discovers subdomains on target website .
spider - maps the whole target website and discovers files, directories and links.
guess_login - runs a wordlist attack to guess login information.
vulnerability_scanner - scans a target website for weaknesses and produces a report with all findings .
As you build the above you'll learn:
Setting up a penetration testing lab to practice hacking safely.
Installing Kali Linux and Windows as virtual machines inside ANY operating system.
Linux Basics .
Linux terminal basics .
How networks work .
How clients communicate in a network.
Instructor Details
- 4.6 Rating
21,548 Reviews
Zaid Sabih
My name is Zaid Al-Quraishi, I am a professional ethical hacker, computer scientist, and the founder and CEO of zSecurity & Bug-Bounty. I am passionate about utilising my skills to improve the security of organisations and individuals by identifying and resolving vulnerabilities in their systems.
I have in-depth knowledge and experience in the fields of ethical hacking & cyber security, and I have helped over 1 million students worldwide on multiple teaching platforms to gain a better understanding of the subject.
My companies, zSecurity & Bug-Bounty, specialise in providing ethical hacking services and managed bug-bounty programs to help organisations identify and remediate vulnerabilities in their systems.
More courses by Zaid Sabih
Website Hacking / Penetration Testing (2025)
4.6 (23,208 Reviews)
Provider: Udemy
Time: 10.2h
$27.99
The Ultimate Dark Web, Anonymity, Privacy & Security Course (2025)
4.8 (9,329 Reviews)
Provider: Udemy
Time: 10.3h
$27.99
Learn Network Hacking From Scratch (WiFi & Wired) (2025)
4.7 (8,068 Reviews)
Provider: Udemy
Time: 7.9h
$29.99
Learn Bug Bounty Hunting & Web Security Testing From Scratch (2025)
4.6 (3,856 Reviews)
Provider: Udemy
Time: 11.1h
$89.99
More Python courses
Python 3: Deep Dive (Part 1 - Functional) (2024)
4.9 (13,534 Reviews)
Provider: Udemy
Time: 45.8h
$22.99
Python 3: Deep Dive (Part 3 - Dictionaries, Sets, JSON) (2023)
4.9 (1,996 Reviews)
Provider: Udemy
Time: 21.9h
$17.99
Programming for Everybody (Getting Started with Python)
4.9 (717 Reviews)
Provider: Coursera
Time: 12h
Free
An Introduction to Interactive Programming in Python (2013)
4.9 (554 Reviews)
Provider: Coursera
Time: 6h 40m
Free
Python: Python Programming Language | Tutorial | Beginner (2023)
4.9 (239 Reviews)
Provider: Udemy
Time: 5.1h
$19.99
An Introduction to Interactive Programming in Python (Part 2)
4.9 (225 Reviews)
Provider: Coursera
Time: 25h
Free
Reviews
By Devanshu Bansode on 6/28/2026
Zaid sir is best teacher From the start of my journey of Cybersecurity, I am following him only, Not only on Udemy but all the platform i can afford to be. Thank you Sir. Devanshu
By John macdonald on 5/21/2026
This tutor is a very good tutor. The course is so interesting and the pacing is excellent for a newby like me. So well explained and enjoyable to go through. Really really impressed!
By Valerie Saenz on 2/4/2026
I've taken other courses from Zaid, just like the others these are structured so well with a balance of theory and then actual practice which is perfect for this kind of subject.
By Brian Degen on 1/21/2026
Course was great for what I was trying to get out of it, a refresher to knowledge already learned. A little difficult to complete the hands-on practical exercises based on the system I was using for conducting the training.
By Robert Navarro on 1/5/2026
I love how he explains EXACTLY what to do and why, only what I need, absolutely no mention of ENIAC and how many rooms it filled or any of the billions of useless facts we never needed to know :P
By Trojan Op on 1/3/2026
his teaching style is VERY PRODUCTIVE he teaches EVERYTHING with an example. He focuses on the thing you ACTUALLY will need not useless stuff everything he teaches is practical practical and PRACTICAL he will get it in your BRAIN
By Rich Pace on 12/12/2025
vm is dodgy, half the code no longer works, web browsing non functional with iptables set for nfque. I get the course is multiple years old so probably little support.
By P Alexander S Cole on 12/8/2025
I started this course with zero hacking knowledge, though I started coding in python which I don't face difficulty with, this course expose me so much to hacking and networking. The instructor teaches well.
By Stuart Grayson on 12/4/2025
Good intro into Python as never done any python coding, looks a good course for beginner's Course goes into great detail on the how to and at a good pace to also do some side testing. Worth going through - really enjoyed it
By Aditya Ranjan Swain on 10/25/2025
Honestly one of the best entry to mid level cyber security courses out there . After successfully finishing this , 2 times , i can say my fundamentals and overall usecase of different functions , libraries and tools has increased . This is how you teach , explaining the real process line by line step by step ( even the most redundant ones) so that everyone regardless of coding proficiency or cyber sec knowledge can know and learn ,a lot from this . Looking forward to more courses from Zaid .
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 92 / 100









