
Discover which virtual machine software to use for this course, including a free guarded vm option and the workstation player for stability.
Download the linux 64-bit ISO and Windows 10 ISO, and run both as virtual machines to protect your main device. Remember Windows VM expires after 90 days.
Install Python on your virtual machines and use Python 3. Download and install Python 3 on Windows from the Python website; Kali ships with Python 2.7 and Python 3 preinstalled.
The source code is available in the link
https://drive.google.com/open?id=1cFHB8BZuNLZ1gqhglRzzdd0uxBgJTzlV
Identify and compare integrated development environments (IDEs) for Python, from idle to Visual Studio Code, noting free and paid variants and straightforward installation across Windows, Mac, and Linux.
Explore how Python virtual environments isolate project libraries from the system. Learn to create lightweight environments that hold only needed libraries to keep projects small.
Install and use a Python package manager on Linux to set up a virtual environment, activate it, and work isolated from the main interpreter.
Install the virtual environment package on Windows, using pip to install virtualenv. Create a new virtual environment and name it (for example, ve) to isolate project dependencies.
Create and activate a Python virtual environment on Windows using python -m venv, verify isolation with freeze, and deactivate. Learn to set up environments on Windows and Linux.
Explore Visual Studio Code configuration for Python development, install the Python extension, apply material themes and icons, enable docstring generation, and sync settings with GitHub.
Classify networks by geography, connectivity, administration, and architecture, and examine topologies like bus, ring, star, and mesh, plus sizes from personal network to internet.
Explains the OSI model and its layering, from the application layer to the physical layer, illustrating standardized device communication.
Identify key network entities and terminologies, including IP addresses (public and private), MAC addresses, gateways, and ARP mappings, and compare connection oriented DCP with handshake to connectionless UDP.
Learn how to change your network interface MAC address to improve privacy and security by bringing the interface down, applying a new hardware address, and verifying it with ifconfig.
Create a mac changer class in python that retrieves and changes a device's mac address by running system commands via subprocess, parsing output with regex, and targeting a specific interface.
Learn to use regular expressions to locate mac addresses in a data stream by building patterns that match hexadecimal digits, spaces, and separators, and extract all matches.
Import the regular expressions module, compile a pattern, and search strings to obtain a match object; extract and return the MAC address by splitting the match result.
Change a network interface MAC address by printing the current MAC, running commands through a process module, applying the new MAC with sudo, and then verifying the updated MAC.
Explore how the http protocol works as a client-server, request-response web interaction, including methods like get and put, status codes, headers, and message bodies.
Track an IP address by querying the free IP API with a GET request to obtain location, ISP, and time zone in JSON using a Python command-line tool.
Explore how a message moves from the application layer through transport and IP layers to an Ethernet frame, detailing source and destination ports, IPs, MAC addresses, TTL, and header checksums.
Explore how to inspect IP packets with scapy in Python, using functions to access IP header fields, view source and destination addresses, and print detailed packet information.
Learn to use nmap for information gathering and network mapping, including host discovery. Explore command line and graphical interfaces to identify open ports and DNS servers on networks.
Learn to build a scapy based arp scan tool that uses verbose control, a broadcast mac address, and crafted arp packets sent with srp to map a network.
Create a server and a client to demonstrate a reverse connection using sockets, binding, listening, accepting, and sending a message between a hacker machine and a victim machine.
Create a client program using sockets to connect to a server IP and port, send and receive data, decode bytes, and safely close the connection.
Create a structured server and client connection framework to enable remote command execution and file transfer, building on a server class and a client connection class.
Define methods to send and receive data by converting user input to UTF-8 bytes, transmitting via the client connection, receiving with a junk size, then decoding bytes back to strings.
Create server and client socket instances to establish a local connection, listen and accept, exchange data, print received messages, and then close the connection.
Develop a feature to run system commands on a victim machine through a user-input driven menu, building a function-based skeleton and input validation for ethical hacking.
Explore how to receive and execute commands in a loop on a target system using PowerShell, handle command errors, and convert output from bytes to a UTF-8 string.
execute commands on a remote victim machine via a socket, handling standard output and error, decode outputs, send results, and manage command flow and errors within the interactive menu.
Debug a Python command interface by preventing crashes from empty input. Add checks for empty strings to continue loops, ensuring valid commands execute and the program runs smoothly.
Develop a serialization-based method to send arbitrary data using a defined delimiter and debt limit. Encode command results into bytes, transmit via socket, and detect completion to compile the data.
Learn to upload files to the time machine by scanning the folder, listing files with indices, and selecting one to upload via the upload files function.
Learn to implement a send_file function that reads a file in chunks and transmits it over a network socket to a remote machine, continuing until the transfer completes.
Develop a file transfer workflow by receiving a file over a socket, creating a receive/download function, and integrating it with the sending process on a Windows host.
Develop a receive function within the connection class to handle socket data transfer, saving the payload to a binary file and managing chunked content with a delimiter.
Learn how encoding and encrypting virus data can bypass antivirus detection by transforming malicious payloads into unreadable formats before sending and decrypting on the victim machine.
Python is one of the most used programming language in the world and its significance can't be ignored. Python has gained immense popularity recently owing to its performance in various fields like machine learning, data science, data analytics and cyber security. This course is designed in python to make ethical hacking easier for students since python is one of the most easy programming languages to learn. The concepts used in this course are fairly simple and anyone with some knowledge of computer science can try this course.
In this course we will learn following topics:
Introduction to basics of computer networks
What is hacking
How to stay anonymous
Learn how to track IP location
Create your own undetectable malware
Execute system commands on the victim machine using backdoor
Download and upload files to victim machine
How to create a Trojan
How to steal wifi passwords stored on the PC
How to intercept, manipulate and craft network packets
How to perform man in the middle attack
Crack password protected zipped files
Build your own undetectable key logger
Create a botnet with a command and control center
How to protect yourself online