
Explore the linux filesystem hierarchy and essential shell commands for navigation and file management. Identify directories like /, /bin, /etc, /usr, and practice ls -a, touch, cd, mkdir, and rm.
Learn how to locate executables with the which command by inspecting the path variable, which lists directories, and using which to print the full path of programs such as map.
Discover how the locate command quickly finds files using a built-in database that updates on a schedule; update the database with update DB and search for a binary file.
Learn to use netcat for port scanning, listening for connections, transferring files, and remote administration, including reverse shells and chat-style communication between systems.
Discover how the Linux find command powerfully searches old directories for strings, follows links, and locates sensitive data like private password, with practice using grep alongside.
Learn to use the grep command to locate strings in files, highlight results with color, and perform recursive searches to find passwords across directories.
Learn how to update the package database, upgrade packages, search for a package, and install or purge software using apt.
Start, stop, and enable or disable services with systemctl, then verify activity using ss or netstat filtered by grep, and inspect unit files to confirm persistent service behavior.
Learn to use linux environment variables: create with export, set DSD_IP, check with echo $DSD_IP, and persist by editing ~/.bashrc or ~/.zshrc.
Learn Linux redirection and piping for penetration testing: use history to recall commands, redirect stdout and stderr to files, and chain commands with pipes and tools like grep and sed.
Explore filtering outputs with cut and awk, splitting lines into fields by a delimiter and printing parts using field numbers, then manage processes with background, foreground, and ctrl-z.
Master bash scripting by creating scripts with /bin/bash shebang, giving executable permissions, and using variables with no spaces around =, echoing with $, and substituting commands with $(...) or backticks.
Learn how to read user input with the read command, store it in a variable, and echo with newline handling and input masking using -e and -s options.
Master bash scripting if statements, using brackets or double parentheses to test conditions, compare values with ge and le, and combine tests with and/or to decide access.
Master bash scripting for loops by building for loops with start, end, and optional increment, using do/done, grep, exit status checks, output redirection, and file deletion.
Explore bash scripting with while loops, including infinite loops and break, read data from a file, split lines into usernames and passwords, and validate user input against stored credentials.
Master Python basics by printing strings and numbers and exploring data types through type casting. Learn string quotes single, double, and triple quotes, escaping, concatenation, and hex and binary representations.
Learn to manipulate strings in Python by changing case, splitting with space as delimiter, and replacing text. Handle newlines with strip and view strings with repr function for clean output.
Explore how Python lists store data, access elements by index (zero-based), and use append, insert, and pop to modify and print list items, including handling out of range errors.
Explore python loops, including for, range, while, nested loops, and the zip function, with examples on iterating lists and handling user input.
Discover how Python functions create repeatable code blocks with def, accept arguments, and return values. Build and call simple functions for add, subtract, and multiply, using default and optional arguments.
Learn how to use the Python try-except structure to manage errors, including specific handling for index errors, the except clause, and the finally block for guaranteed execution.
Discover how Python sockets enable UDP communication, building a UDP socket, binding to 0.0.0.0, listening on a port, receiving data, and sending with the sendto function.
Explore building a Python TCP socket server by accepting connections, obtaining a connection object and client address, sending and receiving data, and detecting closed connections when recv returns zero.
Explore how to implement multithreaded sockets to handle multiple clients concurrently, using a thread function, start_new_thread, and echoing data while managing connections and socket reuse.
Learn to manage Python socket sessions with multi-threading, assign numbers to client sockets, map IPs and ports in dictionaries, and send targeted commands to individual clients.
Learn to use the Python subprocess module to execute shell commands, capture output, and interact with remote sessions between a server and Windows client, including commands like whoami.
Explore how to inject shellcode into a running process with python, sending a binary interpreter payload over a socket and executing it in memory on a targeted client.
Demonstrates a Python backdoor with file transfer via open read binary and write binary, client-server communication, and converting the tool into a PyInstaller script.
Delve into Wi-Fi testing with Python, covering access points, MAC addresses, SSID, and channel, and trace essential frames like beacon, probe request and response, authentication, and association.
Learn to use Wireshark to capture beacon frames in monitor mode, filter by beacon subtype, and extract MAC addresses and SSID information to build wifi pentesting tools.
Build a wireless scanner with scapy that captures beacon frames from access points, prints each AP’s MAC address and SSID, avoids duplicates, and runs via sniffing on a chosen interface.
Learn to scan wifi access points with python using raw sockets, capture beacon frames, extract transmitter MAC addresses, and maintain a formatted access point list.
Detect connected wifi clients with Python by inspecting association responses and RTS/CTS frames using raw sockets, avoiding unreliable probe requests.
Modify a Python script to perform wifi channel hopping by switching through channels with a system command, using a background thread and pausing longer on channels 1, 6, and 11.
Learn how to craft and send deauthentication frames using raw sockets in wifi networks, using monitor mode to disconnect a client and capture frames with Wireshark.
Demonstrates man in the middle attacks using bettercap to perform sslstrip downgrades, target selection, and proxy configuration, while explaining how hsts and preload lists limit downgrades and credential interception.
The lecture demonstrates how attackers in a man-in-the-middle scenario can use the Bettercap file replace plugin to substitute a downloaded file with a payload, illustrating risks and defensive considerations.
Explore man-in-the-middle attacks using bettercap and beef-xss to inject JavaScript into web pages, hook targets, and study browser exploitation techniques and payload delivery.
Explore offensive cyber operations using shell cloak to evade antivirus by splitting shellcode into parts stored in browser history and reconstructed into a payload, with beef-xss and social engineering.
Explore x86 fundamentals by examining cpu registers, machine code, and assembly language, and compare NASM hello world with its dump; understand memory layout and stack behavior, including instruction pointer.
Examine how x86 function calls manipulate the stack and ESP: push and pop adjust the stack, pushing return addresses, and returning to the next instruction after a function call.
Explains x86 assembly stack frames, showing how arguments are pushed in reverse order, the return address sits on the stack, and the instruction pointer governs flow.
learn how buffer overflow on the stack can overwrite the return address and let an attacker control the next instruction, shown in a vulnerable UDP echo program with gdb debugging.
Overwrite the return address on the stack to redirect execution to the message board variable, then enable executable memory with the dash exec stack option.
Explore a buffer overflow exploit in binary exploitation, using a nop sled to reach the return address, calculate bytes, and adapt payloads for aslr and format string constraints.
Brute-force ASLR in a buffer overflow context by locating a stable system function address, crafting and sending a payload to trigger a reverse shell, then verify with gdb.
Explore the basics of backdooring a PE file using debugging and hex-editing tools, patching the entry point, and crafting a reverse-shell payload through memory map techniques.
Backdoor a PE by using code caves to insert shellcode into unused space, hijack program flow with jumps, and avoid new section headers, illustrating cave mining and patching concepts.
Discover how to encrypt and decrypt shellcode at runtime, using a second cave as the decryption mechanism and a simple xor-based operation to recover the original code.
This course is 100% hands on for security developers or anyone interested in offensive security. In this course you will be able to create your own custom backdoor using python and control its sessions. You will also learn how to write Wifi pentesting tools with raw sockets. A hands on binary exploitation and backdooring PE is also covered.