Cybersecurity
Use Python to examine how data and systems behave. Explore encoding, cryptography, logs, networks, and web security through controlled exercises and a capture-the-flag project.
What helps
An interest in how computers and networks work helps. Programming Foundations provide a starting point before the security-focused projects.
Python pathway
Programming Foundations / Practice rooms / Track curriculum and enrollment
Encoding & Data Representation
Every hack starts with reading data the way a machine does. Master bytes, hex, base64, bitwise XOR, and byte surgery, then peel apart a multi-layer encoded flag.
- Bytes & Hex: 5 lessons
- Base64 & Encodings: 5 lessons
- Bitwise & XOR: 5 lessons
- Byte Manipulation: 5 lessons
- Multi-layer Decode: 5 lessons
Classical Cryptography
The ciphers that ran for two thousand years, and how they fall. Build Caesar, Vigenere, and transposition ciphers, then break them with brute force and frequency analysis.
- The Caesar Cipher: 5 lessons
- Frequency Analysis: 5 lessons
- The Vigenere Cipher: 5 lessons
- Transposition Ciphers: 5 lessons
- Crack an Unknown Cipher: 5 lessons
Hashing & Integrity
One-way functions that fingerprint data without hiding it. Use hashlib for checksums and HMAC, salt and stretch passwords, and build a tamper-evident hash chain.
- Hash Functions: 5 lessons
- Integrity & Checksums: 5 lessons
- HMAC: Keyed Authentication: 5 lessons
- Password Hashing: 5 lessons
- Tamper-Evident Logs: 5 lessons
Password Cracking
Think like the attacker hammering a stolen hash dump. Run dictionary attacks, brute force, and rule-based mangling, measure password strength, then crack a full leaked database.
- Dictionary Attacks: 5 lessons
- Brute Force: 5 lessons
- Rule-Based Mangling: 5 lessons
- Password Strength: 5 lessons
- Crack the Dump: 5 lessons
Modern Cryptography
Build the math that secures the internet, from scratch. Master modular arithmetic and primes, implement RSA and Diffie-Hellman with plain Python integers, then break weak RSA by factoring.
- Modular Arithmetic: 5 lessons
- Primes & GCD: 5 lessons
- RSA From Scratch: 5 lessons
- Diffie-Hellman: 5 lessons
- Break Weak RSA: 5 lessons
Log Analysis & Forensics
Hunt attackers in the evidence they leave behind. Load logs with pandas, extract indicators with regex, spot anomalies and brute-force attacks, then run a full incident investigation.
- Parsing Logs: 5 lessons
- Regex & Indicators: 5 lessons
- Anomaly Detection: 5 lessons
- Brute-Force Hunting: 5 lessons
- Incident Triage: 5 lessons
Network Analysis
Read the wire. Parse raw binary packets with struct, decode TCP flags, reconstruct flows, detect a port scan, and reconstruct a full network intrusion from the bytes alone.
- Bytes on the Wire: 5 lessons
- Headers & Flags: 5 lessons
- Flow Analysis: 5 lessons
- Scan Detection: 5 lessons
- Intrusion Reconstruction: 5 lessons
Web Security
Attack and defend web apps in Python. Parse HTTP, exploit SQL injection and XSS, forge and verify JWTs, then chain it all to pwn a vulnerable app, using only provided, simulated data.
- HTTP Basics: 5 lessons
- SQL Injection: 5 lessons
- Cross-Site Scripting: 5 lessons
- JSON Web Tokens: 5 lessons
- Pwn the Web App: 5 lessons
Reverse Engineering
Take apart a program you cannot read the source of. Read raw bytes and bit fields, disassemble a custom bytecode, build the virtual machine that runs it, follow its control flow, and crack a VM-based license check.
- Reading the Bytes: 5 lessons
- Decoding Opcodes: 5 lessons
- The Virtual Machine: 5 lessons
- Control Flow: 5 lessons
- Crack the VM: 5 lessons
Capture The Flag
The finale. Five challenges, one per category, that chain every skill in this track: peel an encoding stack, drag a crib through a cipher, trace an intrusion, crack a salted hash, and defeat a multi-layer final boss to claim grandmaster.
- Recon: 5 lessons
- Cipher: 5 lessons
- Forensics: 5 lessons
- Cracking: 5 lessons
- Final Boss: 5 lessons