CS456/556 Schedule

Calendar feed: https://www.flyn.org/courses/cs456-2022-spring/schedule.ics
Date
Subject
Due
Read before class
Assigned
Tuesday, Jan 25 1. Introduction; intro Aquinas computer, unix, git, and cli in C
Thursday, Jan 27 2. The C Programming Language; net-client.c net-server.c sprintf-size.c fmt.c dyn.c owner.c errors.c style.c open.c fopen.c Security Engineering Ch. 1 Aquinas make and unix2
Tuesday, Feb 1 3. Definitions and the vulnerability cycle; definitions CVE CVSS CWE CPE NVD gravvuln Aquinas git, cli in C, and make Security Engineering § 27.5.7, How to Read a Paper, and Seven Pernicious Kingdoms Aquinas chat in C: Phase 1 (checks 1–3)
Thursday, Feb 3 4. Taxonomy of vulnerabilities; vulnerabilities
Tuesday, Feb 8 5. Security principles; principles Security Measures in OpenSSH Aquinas chat in C: Phase 1 (checks 1–3) § 1.A of The Protection of Information in Computer Systens Aquinas secprin
Thursday, Feb 10 6. Security principles applied; principles-applied TLS check
Tuesday, Feb 15 7. Secure systems development; secure-development Aquinas secprin Security Engineering Ch. 27 Aquinas chat in C: Phase 2 (checks 1–23)
Thursday, Feb 17 8. Project Design; project-design shadow.c
Tuesday, Feb 22 9. System calls and kernel mediation; syscall fork-exec.c pipe.c Aquinas chat in C: Phase 2 (checks 1–23) Security Engineering Ch. 6 Aquinas chat in C: Phase 3 (checks 1–n)
Thursday, Feb 24 10. Process management; process-management
Tuesday, Mar 1 11. Gaining and losing privilege; setuid Aquinas chat in C: Phase 3 (checks 1–n) Setuid Demystified and Some thoughts on security after ten years of qmail 1.0 Aquinas chat in C: Phase 4 (checks 1–n)
Thursday, Mar 3
Tuesday, Mar 8 13. Review Aquinas chat in C: Phase 4 (checks 1–n)
Thursday, Mar 10 14. Exam 1
Tuesday, Mar 22 15. Cryptographic primitives; crypto Security Engineering Ch. 5 Aquinas tweetnacl in C
Thursday, Mar 24 16. Cryptographic systems; crypto2
Tuesday, Mar 29 17. Concurrency; concurrency poller.c Aquinas tweetnacl in C Security Engineering Ch. 7 Aquinas chat in C: Phase 5 (checks 1–n)
Thursday, Mar 31 18. Concurrency 2; concurrency2
Tuesday, Apr 5 19. LangSec and parsers parsing Aquinas chat in C: Phase 5 (checks 1–n) Exploit Programming Aquinas chat in C: Phase 6 (checks 1–n)
Thursday, Apr 7 20. Introduction to parser generators; parser-generator Makefile lexer.l parser.y
Tuesday, Apr 12 21. Review Aquinas chat in C: Phase 6 (checks 1–n)
Thursday, Apr 14 22. Exam 2
Tuesday, Apr 19 23. Building, harnessing, and fuzzing; fuzzing The Art, Science, and Engineering of Fuzzing: A Survey Aquinas chat in C: Phase 7 (checks 1–n)
Thursday, Apr 21 24. Program analysis
Tuesday, Apr 26 25. Chat commands; grouped.c Aquinas chat in C: Phase 7 (checks 1–n) Aquinas chat in C: Phase 8 (checks 1–n)
Thursday, Apr 28
Tuesday, May 3
Thursday, May 5 Graduate assignment (see syllabus) and Aquinas chat in C: Phase 8 (checks 1–n)