This course was last updated on 26/04/2017

Welcome to my comprehensive course on Ethical Hacking! In this course, you will start as a beginner with no previous knowledge about penetration testing or hacking. The first thing you will learn is some basic information about ethical hacking and the different fields in penetration testing.

This course is focused on the practical side of penetration testing without neglecting the theory behind each attack. Before jumping into penetration testing, you will first learn how to set up a lab and install needed software to practice penetration testing on your own machine. All the attacks explained in this course are launched against real devices in my lab.

The course is structured in a way that will take you through the basics of linux, computer systems, networks and how devices communicate with each other. We will start by talking about how we can exploit these systems to carry out a number of powerful attacks. This course will take you from a beginner to a more advanced level -- by the time you finish, you will have knowledge about most penetration testing fields.

The course is divided into four main sections:

1. Network Penetration Testing - This section will teach you how to test the security of networks, both wired and wireless. First, you will learn how networks work, basic network terminology and how devices communicate with each other. Then it will branch into three sub sections:

Pre-connection: in this section, we still don't know much about penetration testing -- all we have is a computer with a wireless card. You will learn how gather information about the networks and computers around you and launch a number of attacks without a password, such as controlling the connections around you (ie: deny/allow any device from connecting to any network). You will also learn how to create a fake access point, attract users to connect to it and capture any important information they enter.
Gaining Access: Now that you have gathered information about the networks around you and found your target, you will learn how to crack the key and gain access to your target network. In this section you will learn a number of methods to crack WEP/WPA/WPA2 encryption.
 Post Connection: Now you have the key to your target network and you can connect to it. In this section you will learn a number of powerful attacks that can be launched against the network and connected clients. These attacks will allow you to gain access to any account accessed by any device connected to your network and read all the traffic used by these devices (images, videos, audio, passwords ...etc).
2. Gaining Access - In this section you will learn two main approaches to gain full control over any computer system:

Server Side Attacks:  In this approach you will learn how to gain full access to computer systems without the need for user interaction. You will learn how to gather information about a target computer system such as its operating system, open ports, installed services and discover weaknesses and vulnerabilities. You will also learn how to exploit these weaknesses to gain full control over the target. Finally you will learn how to generate different types of reports for your discoveries.
Client Side Attacks - If the target system does not contain any weaknesses then the only way to gain access to it is by interacting with the user. In this approach you will learn how to launch a number of powerful attacks to fool the target user and get them to install a backdoor on their device. This is done by creating fake updates and serving them to the user or by backdoornig downloaded files on the fly. You will also learn how to gather information about the target person and use social engineering to deliver a backdoor to them as an image or any other file type.
3. Post Exploitation - In this section you will learn how to interact with the systems you compromised so far. You’ll learn how to access the file system (read/write/upload/execute), maintain your access, spy on the target and even use the target computer as a pivot to hack other computer systems.

4. Web Application Penetration Testing - In this section you will learn how websites work. Then you will learn how to gather information about your target website, such as website owner, server location, used technologies and much more. You will also learn how to discover and exploit a number of dangerous vulnerabilities such as SQL injections, XSS vulnerabilities, etc.

At the end of each section you will learn how to detect, prevent and secure your system and yourself from these attacks.

All the attacks in this course are practical attacks that work against any computer device, ie: it does not matter if the device is a phone, tablet, laptop, etc. Each attack is explained in a simple way -- first you will learn the theory behind each attack and then you will learn how to carry out the attack using Kali Linux.

NOTE: This course is created for educational purposes only and all the attacks are launched in my own lab or against devices that I have permission to test.

NOTE: This course is totally a product of Zaid Sabih and no other organization is associated with it or a certification exam. Although, you will receive a Course Completion Certification from Udemy, apart from that NO OTHER ORGANIZATION IS INVOLVED.

What are the requirements?

Basic IT Skills
Wireless adapter (for the wifi cracking section ONLY) - ALFA AWUS036NHA and TP-LINK TL-WN722n v1 (Atheros chip NOT THE REALTEK ONE) are the recommended ones.
What am I going to get from this course?

120 detailed videos about ethical hacking & computer security
Know what is hacking, ethical hacking and diffirent types of hackers
Learn about the different fields of ethical hacking
Set up a lab environment to practice hacking
Install Kali Linux - a penetration testing operating system
Install windows & vulnerable operating systems as virtual machines for testing
Learn linux basics
Learn linux commands and how to interact with the terminal
Learn Network Penetration Testing
Network basics & how devices interact inside a network
A number of practical attacks that can be used without knowing the key to the target network
Control connections of clients around you without knowing the password.
Create a fake Wi-Fi network with internet connection & spy on clients
Gather detailed information about clients and networks like their OS, opened ports ...etc.
Crack WEP/WPA/WPA2 encryptions using a number of methods.
ARP Spoofing/ARP Poisonning
Launch Various Man In The Middle attacks.
Gain access to any account accessed by any client in your network.
Sniff packets from clients and analyse them to extract important info such as: passwords, cookies, urls, videos, images ..etc.
Discover open ports, installed services and vulnerabilities on computer systems
Gain control over computer systems using server side attacks
Exploit buffer over flows and code execution vulnerabilities to gain control over systems
Gain control over computer systems using client side attacks
Gain control over computer systems using fake updates
Gain control over computer systems by backdooring downloads on the fly
Create undetectable backdoors
Backdoor normal programs
Backdoor any file type such as pictures, pdf's ...etc.
Gather information about people, such as emails, social media accounts, emails and friends
Use social engineering to gain full control over target systems
Send emails from ANY email account without knowing the password for that account
Read, write download, upload and execute files on compromised systems
Capture key strikes on a compromised system
Use a compromised computer as a pivot to gain access to other computers on the same network
Understand how websites & web applications work
Understand how browsers communicate with websites
Gather sensitive information about websites
Discover servers, technologies and services used on target website
Discover emails and sensitive data associated with a specific website
Find all subdomains associated with a website
Discover unpublished directories and files associated with a target website
Find all websites hosted on the same server as the target website
Exploit file upload vulnerabilities & gain full control over the target website
Discover, exploit and fix code execution vulnerabilities
Discover, exploit & fix local file inclusion vulnerabilities
Discover, fix, and exploit SQL injection vulnerabilities
Bypass login forms and login as admin using SQL injections
Writing SQL queries to find databases, tables and sensitive data such as usernames ad passwords using SQL injections
Read / Write files to the server using SQL injections
Learn the right way to write SQL queries to prevent SQL injections
Discover reflected XSS vulnerabilities
Discover Stored XSS vulnerabilities
Hook victims to BeEF using XSS vulnerabilities
Fix XSS vulnerabilities & protect yourself from them as a user
What is the target audience?

Anybody who is interested in learning ethical hacking / penetration testing
Anybody who wants to learn how hackers would attack their computer systems
Anybody who wants to learn how to secure their systems from hacker