Section 1 : Introduction

Lecture 1 Teaser 7:30
Lecture 2 Course Introduction 6:31
Lecture 3 Introduction to Python Programming & Ethical Hacking 6:13
Lecture 4 Lab Overview & Needed Software 7:49
Lecture 5 INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM Pdf
Lecture 6 About Proctor Testing Pdf
Lecture 7 Remove - INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM Pdf
Lecture 8 Installing Kali 2020 as a virtual Machine 11:13
Lecture 9 Basic Overview of Kali Linux 5:10
Lecture 10 The Terminal & Linux Commands 11:21
Lecture 11 Python 2 VS Python 3 & Writing Our First Program 9:8
Lecture 12 Installing & Using a Python IDE 9:32

Section 2 : Writing a MAC Address Changer - Python Basics

Lecture 13 What is MAC Address & How To Change it 7:41
Lecture 14 Using Python Modules & Executing System Commands 9:18
Lecture 15 Implementing a Very Basic MAC Changer 5:17
Lecture 16 Variables & Strings 10:13
Lecture 17 Using Variables in MAC Changer 4:36
Lecture 18 Getting Input From The User 6:18
Lecture 19 Handling User Input
Lecture 20 Handling Command-line Arguments 9:44
Lecture 21 Initialising Variables Based on Command-line Arguments 7:51
Lecture 22 Python Functions 9:41
Lecture 23 Returning Values From Functions 6:56
Lecture 24 Decision Making in Python 6:54
Lecture 25 Using Conditional Statements in MAC Changer 9:5

Section 3 : MAC Changer - Algorithm Design

Lecture 26 Introduction to Algorithms 3:15
Lecture 27 Reading Output Returned By System Commands 6:24
Lecture 28 Introduction to Regular Expressions (Regex) 8:14
Lecture 29 Extracting a Substring Using Regex 6:40
Lecture 30 Refactoring & Housekeeping 10:59
Lecture 31 Implementing The Validation Algorithm 6:12
Lecture 32 Python 3 Compatibility 6:23

Section 4 : Programming a Network Scanner

Lecture 33 Introduction & Teaser 10:11
Lecture 34 Installing Windows as a Virtual Machine 3:32
Lecture 35 Introduction to ARP 6:48
Lecture 36 Designing an Algorithm To Discover Clients on The Same Network 9:43
Lecture 37 Using Scapy To Create an ARP Request 9:43
Lecture 38 Combining Frames To Broadcast Packets 9:37
Lecture 39 Sending & Receiving Packets 6:57
Lecture 40 Introduction Lists in Python 8:21
Lecture 41 Iterating Over Lists & Analysing Packet 10:10
Lecture 42 Using Escape Characters To Improve Program Output 6:29
Lecture 43 Introduction to Dictionaries in Python 9:37
Lecture 44 Improving the Program Using a List of Dictionaries 8:55
Lecture 45 Iterating Over Nested Data Structures 7:18
Lecture 46 Testing The Network Scanner With Python 3 6:55

Section 5 : Writing an ARP Spoofer

Lecture 47 What is ARP Spoofing 6:20
Lecture 48 Intercepting Data in a Network Using arpspoof 5:9
Lecture 49 Creating an ARP Response 7:12
Lecture 50 Sending ARP Responses 5:34
Lecture 51 Extracting MAC Address From Responses 6:59
Lecture 52 Introduction to Loops in Python 8:53
Lecture 53 More on Loops & Counters
Lecture 54 Dynamic Printing 6:55
Lecture 55 Exception Handling in Python 5:16
Lecture 56 Implementing a Restore Function 11:55
Lecture 57 Restoring ARP Tables on Exception 5:33

Section 6 : Writing a Packet Sniffer

Lecture 58 Introduction & Teaser 4:39
Lecture 59 Sniffing Packets Using Scapy 7:20
Lecture 60 Extracting data From a Specific Layer 6:50
Lecture 61 Analysing Sniffed Packets & Extracting Fields From Layers 12:22
Lecture 62 Analysing Fields & Extracting Passwords 11:6
Lecture 63 Extracting URLs 8:1
Lecture 64 Capturing Passwords From Any Computer Connected to the Same Network 8:3
Lecture 65 Strings & Bytes in Python 3 7:20

Section 7 : Writing a DNS Spoofer

Lecture 66 Intercepting Packets - Creating a Proxy 13:1
Lecture 67 Converting Packets to Scapy Packets 9:22
Lecture 68 Introduction to DNS Spoofing 7:20
Lecture 69 Filtering DNS Responses 6:26
Lecture 70 Analysing & Creating a Custom DNS Response 7:56
Lecture 71 Modifying Packets On The Fly 7:58
Lecture 72 Redirecting DNS Responses 5:45

Section 8 : Writing a File Interceptor

Lecture 73 Introduction & Teaser 4:28
Lecture 74 Filtering Traffic Based on the Port Used 9:22
Lecture 75 Analysing HTTP Requests 5:55
Lecture 76 Intercepting HTTP Requests 10:19
Lecture 77 Modifying HTTP Responses on The Fly 10:48
Lecture 78 Intercepting & Replacing Downloads on The Network 9:24

Section 9 : Writing a Code Injector

Lecture 79 Introduction & Teaser 1:20
Lecture 80 Analysing HTTP Responses 6:49
Lecture 81 Replacing a Substring Using Regex 7:15
Lecture 82 Decoding HTTP Responses 9:49
Lecture 83 Modifying HTTP Responses & Injecting Javascript Code in HTML Pages 8:50
Lecture 84 Refactoring & Housekeeping 8:29
Lecture 85 Debugging Issues in Python 6:1
Lecture 86 Using Groups & None-capturing Regex 8:57
Lecture 87 Recalculating Content Length 11:39
Lecture 88 BeEF Overview & Basic Hook Method 11:42
Lecture 89 Hooking Computers Using code_injector 5:38
Lecture 90 Basic BeEF Commands 4:24
Lecture 91 Delivering Malware Using BeEF 5:41

Section 10 : Bypassing HTTPS

Lecture 92 How to Bypass HTTPS 10:49
Lecture 93 Bypassing HTTPS & Sniffing Login Credentials 8:5
Lecture 94 Replacing Downloads on HTTPS Pages 10:56
Lecture 95 Injecting Code in HTTPS Pages 8:35

Section 11 : Writing an ARP Spoof Detector

Lecture 96 Running Python Programs on Windows 9:46
Lecture 97 Capturing & Analysing ARP Responses 6:43
Lecture 98 Detecting ARP Spoofing Attacks Using Python 7:50

Section 12 : Writing Malware

Lecture 99 Introduction & Teaser 1:57
Lecture 100 Execute System Command Payload 9:41
Lecture 101 Sending Emails Using Python 11:26
Lecture 102 Filtering Command Output Using Regex
Lecture 103 Stealing WiFi Passwords Saved on a Computer 9:35
Lecture 104 Downloading Files Using Python 7:50
Lecture 105 Writing Files on Disk 11:24
Lecture 106 Password Recovery Basics 8:19
Lecture 107 Stealing Saved Passwords From Remote Computers 8:3
Lecture 108 Interacting With The File System Using Python 9:44

Section 13 : Writing Malware - Keylogger

Lecture 109 Introduction & Teaser 3:41
Lecture 110 Writing a Basic Local Keylogger Using Python 10:0
Lecture 111 Introduction to Global Variables 8:8
Lecture 112 Logging Special Keys
Lecture 113 Introduction to Threading & Recursion in Python 10:59
Lecture 114 Introduction Object Oriented Programming 15:8
Lecture 115 Constructor Methods & Instance Variables 8:7
Lecture 116 Logging Key-strikes and Reporting Them By Email 11:58

Section 14 : Writing Malware - Backdoors

Lecture 117 Introduction & Teaser 5:46
Lecture 118 Client - Server Communication & Connection Types 7:46
Lecture 119 Connecting Two Remote Computers Using Sockets 10:9
Lecture 120 Sending & Receiving Data Over TCP 5:19
Lecture 121 Executing System Commands Remotely 10:7
Lecture 122 Implementing a Server 9:8
Lecture 123 Implementing Skeleton For Server - Client Communication 6:59
Lecture 124 Refactoring - Creating a Listener Class 8:13
Lecture 125 Refactoring - Creating a Backdoor Class 6:24
Lecture 126 Serialisation - Theory 11:14
Lecture 127 Serialisation - Implementing Reliable Methods to Send & Receive Data Over TCP 7:56
Lecture 128 Serialisation - Reliably Sending & Receiving Data 6:20
Lecture 129 Sending Commands as List & Implementing Exit Command 8:16
Lecture 130 Interacting With the File System - Implementing cd Command 9:25
Lecture 131 Reading Files Using Python 7:31
Lecture 132 Writing Files Using Python 6:53
Lecture 133 Downloading Files From Hacked Computer 7:55
Lecture 134 Implementing Upload Functionality in Listener 7:53
Lecture 135 Implementing Upload Functionality in Backdoor 6:13
Lecture 136 Handling Unknown Exceptions 9:38
Lecture 137 Using the Backdoor to Hack Windows, Linux & OS X 12:33
Lecture 138 Testing The Backdoor With Python 3 14:51

Section 15 : Writing Malware - Packaging

Lecture 139 Introduction & Teaser 3:16
Lecture 140 Converting Python Programs To Windows Binary Executables 7:13
Lecture 141 Running Executables Silentely 7:23
Lecture 142 Installing Windows Pyinstaller on Linux 7:43
Lecture 143 Packaging Programs For Windows From Linux 8:34
Lecture 144 Introduction to Persistence 8:15
Lecture 145 Running Programs on Startup 14:43
Lecture 146 Creating a Basic Trojan Using Download & Execute Payload 10:36
Lecture 147 Creating a Trojan By Embedding Files In Program Code 8:34
Lecture 148 Bypassing Anti-Virus Programs - Theory 5:23
Lecture 149 Bypassing Anti-Virus Programs - Practical 9:5
Lecture 150 Adding an Icon to Generated Executables 5:14
Lecture 151 Spoofing File Extension 9:35
Lecture 152 Converting Python Programs To OS X Executables 8:41
Lecture 153 Converting Python Programs to Linux Executables 7:24

Section 16 : Website Web Application Hacking

Lecture 154 Introduction & Teaser 6:42
Lecture 155 What is a Website 4:14
Lecture 156 How to Hack a Website 5:31

Section 17 : Website Hacking - Writing a Crawler

Lecture 157 Sending GET Requests To Web Servers 10:1
Lecture 158 Discovering Website Subdomains Using Python 11:44
Lecture 159 Discovering Hidden Paths in Websites 10:55
Lecture 160 Reading Response Content 6:27
Lecture 161 Extracting Useful Data From Response 7:9
Lecture 162 Filtering Results 7:10
Lecture 163 Extracting Unique Links & Storing Them In a List 6:42
Lecture 164 Recursively Discovering All Paths On a Target Website 9:37
Lecture 165 Testing The Crawler With Python 3 6:43

Section 18 : Writing a Program To Guess Login Information

Lecture 166 Sending Post Requests to Websites 12:0
Lecture 167 Guessing Login Information on Login Pages 9:5

Section 19 : Writing a Vulnerability Scanner

Lecture 168 Introduction & Teaser 2:35
Lecture 169 HTTP Requests - POST VS GET 7:6
Lecture 170 Parsing HTML Code Using Python 8:19
Lecture 171 Extracting HTML Attributes 10:30
Lecture 172 Posting Forms 11:25
Lecture 173 Building Basic Structure For a Vulnerability Scanner 10:27
Lecture 174 Using Default Parameters 5:9
Lecture 175 Sending Requests in a Session 9:16
Lecture 176 Extracting & Submitting Forms Automatically 10:7
Lecture 177 Implementing a Method To Run The Scanner 6:9
Lecture 178 Discovering XSS Vulnerabilities 9:7
Lecture 179 Exploiting XSS Vulnerabilities 5:9
Lecture 180 Implementing Code To Discover XSS in Forms 8:16
Lecture 181 Implementing Code To Discover XSS in Parameters 7:44
Lecture 182 Automatically Discovering Vulnerabilities Using the Vulnerability Scanner