Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Learn Python & Ethical Hacking From Scratch
Training Overview
Description of Training
Video Overview (3:00)
Section 1: Introduction
Teaser (7:29)
Course Introduction (6:31)
Introduction to Python Programming & Ethical Hacking (6:13)
Lab Overview (5:54)
Initial Preparation (9:12)
Installing Kali Linux as a VM on Windows (9:16)
Installing Kali Linux as a VM on Apple Mac OS (Intel & Apple Silicone) (9:24)
Installing Kali Linux as a VM on Linux (10:41)
Basic Overview of Kali Linux (5:22)
The Terminal & Linux Commands (13:06)
Python 2 VS Python 3 & Writing Our First Program (9:08)
Installing & Using a Python IDE (9:32)
Section 2: Writing a MAC Address Changer - Python Basics
What is MAC Address & How To Change it (7:41)
Using Python Modules & Executing System Commands (9:18)
Implementing a Very Basic MAC Changer (5:16)
Variables & Strings (10:12)
Using Variables in MAC Changer (4:36)
Getting Input From The User (6:18)
Handling User Input (9:40)
Handling Command-line Arguments (9:44)
Initialising Variables Based on Command-line Arguments (7:51)
Python Functions (9:40)
Returning Values From Functions (6:55)
Decision Making in Python (6:54)
Using Conditional Statements in MAC Changer (9:05)
Section 3: MAC Changer - Algorithm Design
Introduction to Algorithms (3:15)
Reading Output Returned By System Commands (6:24)
Regular Expressions (Regex) (8:14)
Extracting a Substring Using Regex (6:39)
Refactoring & Housekeeping (10:59)
Implementing The Algorithm to Check The Mac Did Change (6:11)
Python 3 Compatibility (6:22)
Section 4: Programming a Network Scanner
Introduction & Teaser (10:11)
Installing Windows as a Virtual Machine (5:44)
Installing Windows as a Virtual Machine on Apple Silicon Computers (4:53)
What is ARP & What its Used For (9:43)
Designing an Algorithm To Discover Clients Connected To The Same Network (4:00)
Using Scapy To Create an ARP Request (6:48)
Combining Frames To Broadcast Packets (9:37)
Sending & Receiving Packets (6:57)
Introduction Lists in Python (8:20)
Iterating Over Lists & Analysing Packet (10:09)
Using Escape Characters To Enhance Program Output (6:29)
Dictionaries (9:37)
Improving the Program Using a List of Dictionaries (8:55)
Iterating Over Nested Data Structures (7:18)
Assignment 1: Get IP Range Using Command Line Arguments
Testing The Network Scanner With Python 3 (4:38)
Section 5: Writing an ARP Spoofer
What is ARP Spoofing (6:20)
Redirecting the Flow of Packets in a Network Using arpspoof (5:08)
Creating an ARP Response (7:11)
Sending ARP Responses (5:34)
Extracting MAC Address From Responses (6:59)
Loops (8:53)
More on Loops & Counters (7:56)
Dynamic Printing (6:54)
Handling Exceptions (5:16)
Implementing a Restore Function (11:55)
Restoring ARP Tables When an Exception Occures (5:33)
Assignment 2: Fix Dynamic Printing
Section 6: Writing a Packet Sniffer
Introduction & Teaser (4:39)
Sniffing Packets Using Scapy (7:20)
Extracting data From a Specific Layer (6:50)
Analysing Sniffed Packets & Extracting Fields From Layers (12:21)
Analysing Fields & Extracting Passwords (11:05)
Extracting URLs (8:00)
Capturing Passwords From Any Computer Connected to the Same Network (8:03)
Strings & Bytes in Python 3 (7:19)
Section 7: Writing a DNS Spoofer
Intercepting Packets - Creating a Proxy (13:00)
Converting Packets to Scapy Packets (9:21)
What is DNS Spoofing (7:20)
Filtering DNS Responses (6:26)
Analysing & Creating a Custom DNS Response (7:56)
Modifying Packets On The Fly (7:57)
Redirecting DNS Responses (5:45)
Assignment 3: Conversion Between Strings & Bytes
Section 8: Writing a File Interceptor
Introduction & Teaser (4:27)
Filtering Traffic Based on the Port Used (9:22)
Analysing HTTP Requests (5:54)
Intercepting HTTP Requests (10:19)
Modifying HTTP Responses on The Fly (10:47)
Intercepting & Replacing Downloads on The Network (10:13)
Assignment 4: Testing The File Interceptor With Python 3
Section 9: Writing a Code Injector
Introduction & Teaser (1:20)
Analysing HTTP Responses (6:49)
Replacing a Substring Using Regex (7:15)
Decoding HTTP Responses (9:48)
Modifying HTTP Responses & Injecting Javascript Code in HTML Pages (8:50)
Refactoring & Housekeeping (8:29)
Debugging Issues (6:01)
Using Groups & None-capturing Regex (8:57)
Recalculating Content Length (11:38)
Assignment 5: Test The Code Injector With Python 3
BeEF Overview & Basic Hook Method (11:41)
Hooking Computers Using code_injector (5:37)
Basic BeEF Commands (4:24)
Delivering Malware Using BeEF (5:41)
Section 10: Bypassing HTTPS
How to Bypass HTTPS (10:49)
Bypassing HTTPS & Sniffing Login Credentials (5:40)
Replacing Downloads on HTTPS Pages (7:57)
Injecting Code in HTTPS Pages (8:16)
Section 11: Writing an ARP Spoof Detector
Running Python Programs on Windows (9:45)
Capturing & Analysing ARP Responses (6:43)
Detecting ARP Spoofing Attacks (7:49)
Section 12: Writing Malware
Introduction & Teaser (1:57)
Execute System Command Payload (9:40)
Sending Emails Using Python (12:43)
Filtering Command Output Using Regex (10:07)
Stealing WiFi Passwords Saved on a Computer (9:34)
Downloading Files From Program (7:49)
Writing Files on Disk (11:24)
Password Recovery Basics (8:19)
Using all the Above to Steal Saved Passwords Remotely (8:03)
Interacting With The File System (9:43)
Section 13: Writing Malware - Keylogger
Introduction & Teaser (3:41)
Writing a Basic Local Keylogger (9:59)
Global Variables (8:07)
Logging Special Keys (6:58)
Threading & Recursion (10:59)
OOP - Object Oriented Programming Basics (15:07)
Constructor Methods & Instance Variables (8:06)
Logging Key-strikes and Reporting Them By Email (11:58)
Section 14: Writing Malware - Backdoors
Introduction & Teaser (5:46)
Client - Server Communication & Connection Types (7:46)
Connecting Two Remote Computers Using Sockets (10:09)
Sending & Receiving Data Over TCP (5:19)
Executing System Commands Remotely (10:06)
Implementing a Server (9:08)
Implementing Skeleton For Server - Client Communication (6:58)
Refactoring - Creating a Listener Class (8:13)
Refactoring - Creating a Backdoor Class (6:23)
Serialisation - Theory (11:14)
Serialisation - Implementing Reliable Methods to Send & Receive Data Over TCP (7:55)
Serialisation - Reliably Sending & Receiving Data (6:20)
Sending Commands as List & Implementing Exit Command (8:16)
Interacting With the File System - Implementing cd Command (9:24)
Reading Files (7:30)
Writing Files (6:52)
Downloading Files From Hacked Computer (7:54)
Implementing Upload Functionality in Listener (7:53)
Implementing Upload Functionality in Backdoor (6:12)
Handling Unknown Exceptions (9:37)
Using the Backdoor to Hack Windows, Linux & OS X (12:32)
Testing The Backdoor With Python 3 (14:51)
Section 15: Writing Malware - Packaging
Introduction & Teaser (3:15)
Converting Python Programs To Windows Binary Executables (7:12)
Running Executables Silentely (7:22)
Installing Windows Pyinstaller on Linux (7:43)
Packaging Programs For Windows From Linux (8:33)
Persistence Idea (8:15)
Running Programs on Startup (14:43)
Creating a Basic Trojan Using Download & Execute Payload (10:36)
Creating a Trojan By Embedding Files In Program Code (8:33)
Bypassing Anti-Virus Programs - Theory (5:22)
Bypassing Anti-Virus Programs - Practical (9:04)
Adding an Icon to Generated Executables (5:14)
Spoofing File Extension (9:35)
Converting Python Programs To OS X Executables (8:41)
Converting Python Programs to Linux Executables (7:23)
Section 16: Website / Web Application Hacking
Introduction & Teaser (6:42)
What is a Website (4:13)
How to Hack a Website (5:31)
Section 17: Website Hacking - Writing a Crawler
Sending GET Requests To Web Servers (10:00)
Discovering Subdomains (11:43)
Discovering Hidden Paths in Websites (10:54)
Reading Response Content (6:26)
Extracting Useful Data From Response (7:08)
Filtering Results (7:10)
Extracting Unique Links & Storing Them In a List (6:42)
Recursively Discovering All Paths On a Target Website (9:37)
Testing The Crawler With Python 3 (6:42)
Section 18: Writing a Program To Guess Login Information
Sending Post Requests to Websites (11:59)
Guessing Login Information on Login Pages (9:05)
Assignment 6: Test The Program With Python 3
Section 19: Writing a Vulnerability Scanner
Introduction & Teaser (2:35)
HTTP Requests - POST VS GET (7:05)
Parsing HTML Code (8:19)
Extracting HTML Attributes (10:30)
Posting Forms (10:27)
Building Basic Structure For Vulnerability Scanner (11:24)
Using Default Parameters (5:08)
Sending Requests in a Session (9:16)
Extracting & Submitting Forms Automatically (10:06)
Implementing a Method To Run The Scanner (6:08)
Discovering XSS Vulnerabilities (9:07)
Exploiting XSS Vulnerabilities (5:08)
Implementing Code To Discover XSS in Forms (8:15)
Implementing Code To Discover XSS in Parameters (7:43)
Automatically Discovering Vulnerabilities Using the Vulnerability Scanner (8:46)
Assignment 7: Test The Vulnerability Scanner With Python 3
Audio Version of Training
Audio Download
Decoding HTTP Responses
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock