The goal of this course is to introduce students to fundamental security concepts and offer them working knowledge of threats and counter-measures.
The topics covered in the course are:
- Introduction: fundamental concepts, access control models, threat modelling.
- Network security: basic networking concepts, DoS, Transport layer security, Link layer security, DNS attacks, Firewalls, Intrusion detection.
- Usable security: basic human factors, warning design, phishing, authentication, device authentication.
- Cryptography: symmetric ciphers, asymmetric ciphers, MACs and hash functions, digital signatures.
- Cryptographic protocols: identification, authentication and key agreement, SSL/TLS, anonymity protocols, TOR.
- OS security: OS concepts, memory and file system, access control, file permissions, memory safety, stack-based buffer overflows.
- Malware: viruses, trojan horses, worms, rootkits.
- Web security: WWW basics, client-side attacks, session hijacking XSS, CSRF, defences, server-side attacks, SQL injection, RFI, LFI.