CS 453Software and Systems Security
- Units
- 0.50
- Faculty
- Mathematics
- Subject
- Computer Science
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 7 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.
Introduction to security issues in modern software, operating systems, and other computing platforms (e.g., mobile and cloud environments). Causes of security breaches and methods to help detect, isolate, and prevent them. Specific topics include comparing security and privacy, program security, operating system security, mobile security, hardware security, administrating security, and legal and ethical issues.
Prerequisites
- Complete all of the following
- Must have completed at least 1 of the following:
- Enrolled in H-BBA & BCS Double Degree, H-Computer Science (BCS), H-Computer Science (BMath), JH-Computer Science (BCS), JH-Computer Science (BMath), H-Computing & Financial Management, H-Data Science (BCS), or H-Software Engineering
Antirequisites
- Not completed nor concurrently enrolled in:
Leads to
No course lists it as a requisite.
Fall 2026 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 8751 | 24 / 70 | TTh 13:00–14:20 |
Winter 2027 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6266 | 0 / 70 | MW 14:30–15:50 |
| LEC 701 | 2404 | 32 / 9999 | Online or by arrangement |
Reviewed on UW Flow
58% liked it47% easy56% useful
From 12 ratings and 6 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
Attending and understanding the lectures does not guarantee that you will be able to complete the assignments. The first three assignments are quite challenging and time-consuming. The professor is not familiar with the assignment content; only the TAs handle questions related to the assignments. Additionally, the grading process is slow—none of the grades were released before mid-March. The lecture topics are very interesting, but I didn’t have much time to listen to them due to the heavy workload from the assignments.
Apr 2025 · liked it · 1 found this helpfulOn UW FlowRemove this
Restructured the course for S26. Assignments were easy and just had to follow instructions and post some screenshots to get full marks. The first half of course content was trivial stuff like memory leaks, etc. and second half was very niche stuff you will forget a few weeks after learning it like TPMs, etc. The only redeeming factor of the course was the mandatory research project with a team where you got to make a report on any topic related to security and AI, which was pretty interesting depending on what topic you choose.
Jul 2026 · didn’t like itOn UW FlowRemove this
It wasn't bad. A1 and A3 are disgustingly hard, even if you try to use LLMs to help. They don't release solutions either, presumably to just reuse the assignment every single term. It is a fairly easy pass if you keep yourself updated on the content and start assignments early. 4 x 25% assignments which is nice for a later-term CS course.
Jul 2025 · liked itOn UW FlowRemove this
A1 very difficult. A2 easy. A3 difficult. A4 easy
Jun 2025 · didn’t like itOn UW FlowRemove this
There are 4 assignments each worth 25%. The assignments are auto graded and are "all or nothing", but you can provide an optional writeup to get part marks (up to 50%). I found the assignments to be challenging, but fun. You don't need to attend the lectures to complete the assignments.
Mar 2025 · liked itOn UW FlowRemove this
Discussed on r/uwaterloo
24 posts and comments in 11 threads mention CS 453, May 2024 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.
Fall 2024
Upper year CS courses (or electives) that release assignments in advance 5 points, 5 comments
u/Acceptable-Bridge76: “… CS 453 was one I am looking at as I have heard it only has 4 assignments - but not sure if they get released in advance, unless anyone knows. …”
u/ZeroooLuck: “For CS 453, they don't get released in advance and 3/4 of them required you to ssh into a school machine (which won't be set up until assignment is released ). But I do agree it's very doable remote. …”
Would taking a security course help with employment (CS)? 7 points, 3 comments
u/astroturfer1984: “… Would it be worth taking a class like CS 453, or should I just chill with easy classes in my last semester (I only need one more CS class so I have 492 rn)? …”
u/pythonpirate: “I am taking CS 453 rn and it's honestly not that heavy of a course. It's 4x25% assignments, so no midterm or exam. The first assignment was incredibly difficult, but the latter 3 were straightforward.”
Wtf was that CS 453 assignment 1 point, 0 comments
CS courses to take over COOP? 6 points, 3 comments
“What are some good cs courses to take over coop? Specifically looking for CS 3xx and 4xx ones”
u/amsyed10385: “Are you willing to fly in for midterms and/or finals? Theres not too many courses with neither but a decent amount with final only. Might depend on the term, but CS 453 is 4 assignments worth 25% each this term”
How was it? CS459 Privacy, Cryptography,Network and Data Security 12 points, 16 comments
“I was planning on taking CS458 Computer Security and Privacy, sadly no longer offered. How was CS459 Privacy, Cryptography,Network and Data Security? For anyone taking it this term. …”
u/LaApplePear: “… CS453 and CS459. …”
u/LaApplePear: “… Overview of Each Course CS 453/698: Software and System Security Course Title: Software and System Security Instructor(s): Not specified Course Description: This course provides an introduction to security issues in modern software, operating systems, and other computing …”
u/LaApplePear: “… Course Topics and Content Weekly Breakdown Comparison |Week|CS 453/698 Topics|CS 459/698 Topics| |:-|:-|:-| |1|Introduction to software and system security; Basic security concepts; Privacy principles|Introduction to security/privacy; Ethics/policy relevant to the course| …”
u/LaApplePear: “… Key Focus Areas CS 453: Emphasizes software and system-level security Focus on identifying and mitigating vulnerabilities in software, operating systems, and hardware Practical approaches to detecting, isolating, and preventing security breaches Topics include program security, …”
u/LaApplePear: “… Assignments and Assessments CS 453: Assignments: Four assignments (25% each) Include written and programming exercises Cover material introduced since the previous assignment Research Write-up: Optional for CS 453 students (can replace lowest assignment grade) Mandatory for CS …”
u/LaApplePear: “… Tools and Technologies CS 453: Technical Requirements: Familiarity with C programming Use of Linux systems and the 'submit' command for assignments Hands-On Experience: Identifying software vulnerabilities Using bug-finding tools like fuzz testing and static analysis Potentially …”
u/LaApplePear: “… Grading and Evaluation CS 453: Assignments: 100% of the grade (for CS 453 students) Research Write-up: Optional for CS 453 (can replace lowest assignment grade) Mandatory for CS 698 (20% of the grade) Evaluation Style: Heavy emphasis on assignments and practical work Flexibility …”
u/LaApplePear: “… Learning Outcomes CS 453: Skills Developed: Identifying and mitigating software and system vulnerabilities Deploying detection and defense mechanisms Preparation for Careers in: Software security engineering Vulnerability assessment System security analysis CS 459: Skills …”
u/LaApplePear: “Conclusion Both CS 453 and CS 459 offer valuable insights into the field of cybersecurity but cater to different interests and career paths: CS 453: Software and System Security is ideal for students passionate about: Software Security: Understanding and mitigating …”
CS 453 3 points, 2 comments
u/PrizeCandidate8483: “How is CS 453 in terms of workload, difficulty? I am taking it this term with Prof. Yousra Aafer and Meng Xu. (Especially, if someone can contrast it with the workload of Distributed Systems - CS 454).”
Spring 2024
Any Math/CS courses with take home exams for fall'24? 8 points, 4 comments
“Title. TIA!!”
u/Ok-Conclusion-5481: “CS 346/449/453/484 no exams”
Lesser of the 2 evils: CS 484 or CS 453/489 (Software and Systems Security) 1 point, 1 comment
u/Ok-Conclusion-5481: “Which one should I take over coop? Both have no in-person assessment but CS 484 workload is insane and CS 453/489 has compilers as a pre-requisite which I haven't done but can probably override”
u/Rarag: “Since when did CS453 require compilers (444)? On uwflow it seems to only need 350”
CS489: New Security Course 14 points, 2 comments
“Has anyone taken the new security courses? How is it? CS 489/698 Software and Systems Security and CS 489/689 Privacy, Cryptography, Network, and Data Security Which once is better and what is a good …”
u/Elibroftw: “I don't recommend Software and Systems Security. I've created a review here. The gist of my review is: assignments are just a go learn it yourself. …”
u/ehhthing: “I'm a current student in CS 489 / 453, and while I agree that the course doesn't seem to teach you all of the relevant information required for the assignments, making them unnecessarily difficult, I don't the rest of your criticisms are valid. …”
u/ehhthing: “… This is actually one of my criticisms of how CS453 is taught as well since they try to teach buffer overflows without teaching calling convention and basic x86 first, although as an ECE student I'm really not sure how much assembly and actual systems programming was taught in …”
Cyber Security in Waterloo? 1 point, 8 comments
“I am in high school currently and was looking through the subjects at Waterloo, and as it turns out there is no Cyber Security program?! Any advice on what and how should i do?”
u/ehhthing: “There's CS 453 (currently CS 489 but by next term it'll be CS 453). UW also has a few cryptography courses both in CS and ECE. CrySP has a list of all the cybersecurity related courses at UW but most of them are grad level: https://crysp.uwaterloo.ca/courses/”
Is doing CS 456, CS 458, 3x bird courses + 20hr/week job difficult? 8 points, 13 comments
“Do you think this is doable for my 3B term? Not sure how difficult CS 456 and CS 458 are, especially if taking them in the same term, so any insight would be appreciated. …”
u/KINGBLUE2739046: “I think CS458 is dead.”
u/ehhthing: “At least this term and last term CS 453 doesn't have an exam so there's that...”
u/IntegrationHell: “Do you have a syllabus for CS 453? I can't seem to find any online since it's such a new course.”
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them
Calendar versions
Undergraduate Calendar
- 2024–25
- 2025–26 requisites changed
- 2026–27 (shown here)
- 2019–20 and earlier on ucalendar