Learning Outcomes
- Build Python security tools (port scanner, log parser, PCAP reader)
- Develop end-to-end ML pipelines from scratch
- Explain TCP/IP, DNS, TLS for attack surface analysis
- Apply CIA triad, OWASP Top 10, STRIDE in threat modeling
- Detect and fix ML issues (data leakage, imbalance, overfitting)
Topics Covered
- Python for security: scripting, socket, scapy, pandas, scikit-learn
- Networking fundamentals: TCP/IP, DNS, HTTP/S, TLS, and packet capture with Wireshark
- Security core: CIA triad, OWASP Top 10, CVE/CVSS, STRIDE threat modelling, and pentest lifecycle
- Math intuition for ML: probability, entropy, confusion matrices, ROC curves — no derivations
- ML pipeline debugging: data leakage, SMOTE for class imbalance, overfitting diagnosis
- Dev environment setup: Kali Linux VM, Jupyter Lab, Docker basics, VS Code with security extensions
Hands-on Lab Activities
- Python Security Sprint: Write a port scanner + log parser using provided scaffolding; run automated unit tests to verify outputs. Focused on 2 scripts only.
- Wireshark Packet Analysis: Load a pre-captured PCAP file; annotate the TLS handshake, DNS query, and one plaintext HTTP credential; answer 5 guided questions about packet-level behaviour.
- ML Pipeline Repair: Given a broken spam classifier notebook, diagnose and fix 3 planted bugs (data leakage, wrong train/test split, unscaled features); verify F1 improves to ≥80%.
- STRIDE Threat Modelling Sprint: Given a 2-tier web-app architecture diagram (app server + database), apply STRIDE to identify ≥6 threats; map each to OWASP Top 10 and assign a CVSSv3.1 base score; produce a 1-page threat brief with prioritised mitigations.
Tools
- Python 3.11+
- Jupyter Lab
- scikit-learn
- Wireshark
- Docker




























