Week | Topic | Assignments | Due (Monday before class) |
---|---|---|---|
1 | Course overview, Web Basics Web Programming |
1.1 1.2 |
|
2 | Authentication, Session Management Broken Authentication |
1.3, 1.4 (HW #1) | |
3 | Broken Access Control Unvalidated Redirects/Forwards, File upload, File includes Sensitive Data Exposure (HTTPS) |
2.1 | Lab notebook #1, HW #1 (1.4) |
4 | SSRF, XML External Entities (XXE) Command/Code injection, SQL injection |
3.1, 3.2 4.1 |
Lab notebook #2 |
5 |
Blind SQL injection Cross-site Scripting (XSS) |
4.2 (HW #2) 5.1 |
Lab notebook #3 |
6 |
Cross-Origin Resource Sharing (CORS), Content Security Policy (CSP), Cross-site Request Forgery (CSRF), Clickjacking Web Cache Poisoning, Request Smuggling |
5.2
6.1, 6.2 |
Lab notebook #4, HW #2 (4.2) |
7 |
Insecure Deserialization, Web Sockets Misconfiguration, Insufficient Logging, APIs Tools (wfuzz, nmap, hydra, sqlmap, xsstrike, commix) |
6.3, 6.4, 6.5 6.6 (Final project) 7.1, 7.2, 7.3, 7.4 |
Lab notebook #5 |
8 |
Tools (metasploit), Cloud overview (Motivation, Services) Cloud overview (Navigating), Cloud security (GCP) Cloud vulnerabilities |
7.5 8.1, 8.2, 8.3 |
Lab notebook #6 |
9 |
Cloud security (AWS) (In class exercise) AWS CloudGoat (iam_privesc_by_rollback) (In class exercise) AWS CloudGoat (ec2_ssrf) |
9.1, 9.2, 9.3, 9.4 |
Lab notebook #7 |
10 |
Infrastructure/Security as Code, Terraform (In class exercise) AWS CloudGoat (cloud_breach_s3,rce_web_app) |
Lab notebook #8 | |
Finals | Lab notebook #9 (Monday) Final project (Thursday) |
Attendance | 5% |
Programs | 20% |
Lab notebooks | 55% | Final project | 20% |