- 23.5 hours on-demand video
- 1 article
- 12 downloadable resources
- Full lifetime access
- Access on mobile and TV
- Certificate of Completion
Get your team access to 4,000+ top Udemy courses anytime, anywhere.Try Udemy for Business
- 170+ videos on Python programming & ethical hacking
- Install hacking lab & needed software (on Windows, OS X and Linux)
- Learn 2 topics at the same time - Python programming & Ethical Hacking
- Start from 0 up to a high-intermediate level
- Write over 20 ethical hacking and security programs
- Learn by example, by writing exciting programs
- Model problems, design solutions & implement them using Python
- Write programs in Python 2 and 3
- Write cross platform programs that work on Windows, OS X & Linux
- Have a deep understanding on how computer systems work
- 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 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 any computer 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, OS X and Linux
- Implement cool 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 a website
- Write a program that can map a website and discover all links, subdomains, files and directories
- Extract and submit forms from 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
This a teaser lecture to give you a taste of what you'll be able to do by the end of the course.
I will show you some of the tools we'll build later on in the course, you'll see how to:
1. Use the arp_spoof and packet_sniffer programs to steal usernames and passwords entered by any computer on the same network.
2. Use the backdoor to remotely hack a Windows machine.
3. Use the vulnerability_scanner program we'll write to discover weaknesses in a website.
In this course, we will be using a number of operating systems, Kali for hacking and 2 other target machines, in this section you will learn how to install all of these machines as virtual machines inside your current operating system, this allow use to use all of the machines at the same time, it also completely isolates these machines from your main machine therefore your main machine will not be affected if anything goes wrong.
This lecture will give you an overview of the lab that we will need to set up for this course.
MAC address (Media Access Control) - is a unique identifier assigned to network interfaces.
In this lecture you'll learn what is is, how its used, and how to change it using Kali Linux.
A dictionary is an unordered collection of data in which each element has a key (to access the element) and a value.
In this lecture you'll be introduced to dictionaries and learn how they work and how to use them.
As an example we'll use a dictionary to store data about the discovered clients.
ARP spoofing is a very dangerous attack that allows hackers to intercept the flow of packets in the network, allowing them to spy on any connected device or even modify data on the fly.
In this lecture you'll learn what arp spoofing attack is, why is it possible, and what it can be used to do ?
The goal in this section is to write a packet sniffer, a program that can capture packets and analyse them to extract useful data such as visited websites, usernames, passwords....etc
This lecture will introduce you to this idea, and show you the program in action so you know exactly what's the end product that we are trying to get to.
The goal of this section is to write a Python program to replace downloads on the network.
This lecture will give you a general idea of what we want to achieve by the end of this section, and it will show you a teaser of the program that we'll build so you understand what we want to achieve by the end of this section.
The goal of this section is to build a Python program to inject code in web pages loaded by computers on the same network.
This lecture will give you a general idea of what we want to achieve by the end of this section, and will show you a teaser of the program we want to build so you have a clear idea of what we want to achieve at the end of this section.
All the programs we built so far only work with HTTP pages, this is because data sent over HTTPS is encrypted.
This lecture will fix this issue and teach you how to downgrade HTTPS to HTTP.
- Basic IT knowledge
- No Linux, programming or hacking knowledge required.
- Computer with a minimum of 4GB ram/memory
- Operating System: Windows / OS X / Linux
Welcome this great course where you'll learn python programming and ethical hacking at the same time, 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 and write python programs to hack into computer systems exactly the same way that black hat hackers do, and 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 on ethical hacking and python programming, installing the needed software and then we'll dive and start programming straight away. From here onwards you'll learn everything by example, by writing useful hacking programs, so we'll never have any boring dry programming lectures.
The course is divided into a number of sections, each aims to achieve a specific goal, the goal is usually to hack into a certain system, so we'll start by learning how this system work and its weaknesses, and then you'll lean how to write a python program to exploit these weaknesses and hack the system, as we write the program I will teach you python programming from scratch covering one topic at a time, so 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, so here are some of the topics that will be covered in the course:
Writing programs for python 2 and 3.
Using modules and libraries.
Variables, types ...etc.
Handling user input.
Reading and writing files.
Object oriented programming.
Packet manipulation using scapy.
Compiling programs to binary executables.
Sending & receiving HTTP requests.
Basics of network hacking / penetration testing.
Changing MAC address & bypassing filtering.
ARP Spoofing - redirect the flow of packets in a network.
DNS Spoofing - redirect requests from one website to another.
Spying on any client connected to the network - see usernames, passwords, visited urls ....etc.
Inject code in pages loaded by any computer connected to the same network.
Replace files on the fly as they get downloaded by any computer on the same network.
Detect ARP spoofing attacks.
Create malware for Windows, OS X and Linux.
Create trojans for Windows, OS X and Linux.
Hack Windows, OS X and Linux using custom backdoor.
Bypass Anti-Virus programs.
Use fake login prompt to steal credentials.
Display fake updates.
Use own keylogger to spy on everything typed on a Windows & Linux.
Learn the basics of website hacking / penetration testing.
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 all 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 shows usernames, passwords, visited links ....etc
dns_spoofer - redirects DNS requests, eg: redirects requests to from one domain to another.
file_interceptor - replaces intercepted files 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 all 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 terminal basics.
How networks work.
How clients communicate in a network.
Address Resolution Protocol - ARP.
Domain Name System - DNS.
Hypertext Transfer Protocol - HTTP.
How anti-virus programs work.
Connecting devices over TCP.
Transferring data over TCP.
How website work.
GET & POST requests.
By the end of the course you're going to have programming skills to write any program even if it has nothing to do with hacking, but you'll learn programming by programming hacking tools!
With this course you'll get 24/7 support, so if you have any questions you can post them in the Q&A section and we'll respond to you within 15 hours.
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.
This course is totally a product of Zaid Sabih & zSecurity, no other organisation is associated with it or a certification exam. Although, you will receive a Course Completion Certification from Udemy, apart from that NO OTHER ORGANISATION IS INVOLVED.
- Anybody interested in learning Python programming
- Anybody interested in learning ethical hacking / penetration testing