CS 458/658 F16 Modules

A draft of the lecture slides for each module will be made available the evening before the module begins. The final version of the lecture slides will be made available after the module is completed and replaces the draft. Use of the draft is at your own risk!

You are expected to have read the indicated sections of the textbook before the corresponding lecture.

Readings marked as mandatory contain required material for the course, and must be read before the date of the corresponding lecture.

Lecture dateTextbook sections
1 (PDF)
Lecture 1 12 Sept 1.1 – 1.8
Optional reading: The 10 privacy principles of PIPEDA
2 (PDF)
Lecture 2 14 Sept 3.1
Mandatory reading before class: Smashing The Stack For Fun And Profit
Optional reading: On the Evolution of Buffer Overflows
Optional reading: Exploiting Format String Vulnerabilities
Optional reading: Example format string vulnerabilities (November 2011, May 2012)
Optional reading: A Taxonomy of Computer Program Security Flaws, with Examples
Lecture 3 19 Sept 3.2
Lecture 4 21 Sept 3.2
Optional reading: Morris worm
Optional reading: The Spread of the Sapphire/Slammer Worm; also: Slammed!
Optional reading: Technical analysis of client identification mechanisms
Mandatory reading before class: Reflections on Trusting Trust
Optional reading: Linux Kernel "Back Door" Attempt; also: The backdooring of SquirrelMail
Optional reading: Salami Fraud
Lecture 5 26 Sept 3.3
Optional reading: Clickjacking attack (Interface illusion)
Optional reading: The inside story of the Conficker worm (access restricted to uWaterloo); also: Conficker C Analysis
Optional reading: MITM Malware Re-Writes Online Bank Statements
Optional reading: An operating system kernel with a formal proof of security
Optional reading: Bugs in open-source software: #gotofail, Heartbleed Bug
3 (PDF)
Lecture 6 28 Sept 5.1
Optional reading: Android permissions demystified
Optional reading: Caja: Capability-based Javascript. Project webpage; draft specification
Lecture 7 3 Oct 5.1
Optional reading: Breaking two-factor authentication: ABN Ambro incident, Android malware for stealing SMS messages
Optional reading: Why passwords have never been weaker - and crackers have never been stronger; 25-GPU cluster cracks every standard Windows password in <6 hours
Optional reading: The top 50 woeful passwords exposed by the Adobe security breach
Optional reading: Password Security: A Case History, Facebook's password hashing scheme
Optional reading: Passphrases that you can memorize - But that even the NSA can't guess
Optional reading: Anatomy of a password disaster - Adobe's giant-sized cryptographic blunder
Lecture 8 5 Oct 5.2
Optional reading: Breaking fingerprint recognition: 'Fake fingerprint' Chinese woman fools Japan controls, Politician's fingerprint 'cloned from photos' by hacker
Optional reading: Breaking facial recognition: Vietnamese security firm: Your face is easy to fake, Android facial recognition based unlocking can be fooled with photo
Optional reading: Reverse-Engineered Irises Look So Real, They Fool Eye-Scanners
Optional reading: Biometrics-based forensics: Computing the Scene of a Crime, High-Tech, High-Risk Forensics
Lecture 9 14 Oct 5.2
Mandatory reading before class: The Protection of Information in Computer Systems, section I.A. (only section I.A. is mandatory)
Optional reading: The Security Principles of Saltzer and Schroeder, illlustrated with scenes from Star Wars
Optional reading: Reliably Erasing Data From Flash-Based Solid State Drives
Optional reading: SELinux
4 (PDF)
Lecture 10 17 Oct 6.1, 6.2
Optional reading: Social engineering I: How I Lost My $50,000 Twitter Username, How I almost lost my $500,000 Twitter user name @jb... and my startup
Optional reading: Social engineering II: Robin Sage, Fake social media ID duped security-aware IT guys
Lecture 11 19 Oct 6.3, 6.4
Optional reading: MITM attacks: The New Threat: Targeted Internet Traffic Misdirection
Optional reading: Cybercrime 2.0: When the Cloud Turns Dark
Optional reading: Black hole attacks: Pakistan hijacks YouTube; The flap heard around the world; Why Google Went Offline Today and a Bit about How the Internet Works
Optional reading: The DDoS That Knocked Spamhaus Offline (And How We Mitigated It); The DDoS That Almost Broke the Internet; Biggest DDoS ever aimed at Cloudflare's content delivery network; Technical Details Behind a 400Gbps NTP Amplification DDoS Attack
Lecture 12 24 Oct 6.7, 6.8
Optional reading: The Inside Story of the Kelihos Botnet Takedown; Gameover; Backstage with the Gameover Botnet Hijackers
Optional reading: Attacking an IDS
5 (PDF)
Lecture 13 26 Oct 2.3
Lecture 14 31 Oct 2.3
Optional reading: COPACOBANA
Optional reading: A Stick Figure Guide to AES
Optional reading: Defeating AES without a PhD
Lecture 15 2 Nov 2.3, 6.6
Optional reading: Why it's harder to forge a SHA-1 certificate than it is to find a SHA-1 collision
Optional reading: Tree of Trust (red: root CA; green: intermediate CA)
Lecture 16 7 Nov 6.6, 9
Optional reading: Lest We Remember: Cold Boot Attacks on Encryption Keys
Optional reading: Intercepting Mobile Communications: The Insecurity of 802.11
Optional reading: Cracking WEP in 60 seconds
Lecture 17 9 Nov 6.6, 9
Optional reading: badssl.com
Optional reading: Turkish Registrar Enabled Phishers to Spoof Google, also Comodogate and DigiNotar incident
Optional reading: Distrusting New WoSign and StartCom Certificates
Optional reading: Superfish
Optional reading: The Tor Project
Optional reading: How Hackers Abused Tor To Rob Blockchain, Steal Bitcoin, Target Private Email And Get Away With It
Lecture 18 14 Nov 6.6, 9
Optional reading: SSH: passwords or keys?
Optional reading: Mixminion
Optional reading: De-Anonymizing Alt.Anonymous.Messages
Optional reading: Ed Snowden Taught Me To Smuggle Secrets Past Incredible Danger. Now I Teach You.
Optional reading: Off-the-Record Messaging
6 (PDF)
Lecture 19 16 Nov 7.1 – 7.4
Optional reading: Snooping into Rob Ford's medical records
Optional reading: Using police databases for personal gain
Lecture 20 21 Nov 7.5
Optional reading: Social Security Numbers Deduced From Public Data
Optional reading: Identifying spies with data aggregation (final four paragraphs)
Lecture 21 23 Nov 9.4
Optional reading: Data mining and integrity: Boston Bomber slipped past while spelling glitch tripped up the law, How Obama Officials Cried 'Terrorism' to Cover Up a Paperwork Error
Optional reading: Data mining in action: How Companies Learn Your Secrets, How this company tracked 16,000 Iowa caucus-goers via their phones
Optional reading: FOILing NYC's Taxi Trip Data
Optional reading: A Face Is Exposed for AOL Searcher No. 4417749
Optional reading: ℓ-Diversity: Privacy Beyond k-Anonymity
Optional reading: t-Closeness: Privacy Beyond k-Anonymity and ℓ-Diversity
Optional reading: Broken Promises of Privacy: Responding to the Surprising Failure of Anonymization
7 (PDF)
Lecture 22 28 Nov 10.1 – 10.4
Optional reading: Investigation into the loss of a hard drive at Employment and Social Development Canada
Optional reading: IST's continuity plan in case of a pandemic
Optional reading: uWaterloo's emergency response policy
Optional reading: Stealing Commodities
Lecture 23 30 Nov 10.5, 11.1, 11.2
Optional reading: PogoWasRight.org, databreaches.net, OSF DataLossDB
Optional reading: uWaterloo's Information Security Breach Response Procedure
Optional reading: The Computer Centre Incident at Concordia
Optional reading: uWaterloo's Electronic Media Disposal Guidelines
Lecture 24 5 Dec 11.4 – 11.7
Optional viewing: A Fair(y) Use Tale
Optional viewing: The great copyright battle: UBC's bold stand against Access Copyright
Optional viewing: Unintended Consequences: Ten Years under the DMCA
Optional reading: Backdoors: The Athens Affair, A Death in Athens, SISMI-Telecom scandal, On the Juniper backdoor
Optional reading: Bruce Schneier on Full Disclosure, Google's view, Microsoft's view, Disclosing breaches to the government
Optional reading: Codes of ethics: ACM IEEE CIPS