ICS: UVa specific material, summer 2024

Go up to the main ICS readme (md)

Much of the rest of this git repo is meant to be generic to anybody who has a class such as this one. But this page contains details specific to the specific version of the course at the University of Virginia.


There are a number of links and other parts of this course that are NOT included in this repository. They are:

The parts of this course that are in this repo are:

Readings

All scholarly articles (such as from the ACM digital library) can be obtained from free from any UVa wireless network. Some of them you will NOT be able to get it for free from your home Internet provider such as Comcast (unless you live in a UVa dorm, of course) without using a UVa VPN. All readings are due by the start of lecture that day.

To avoid having the due dates having to be listed in too many places, the readings and their due dates are not shown here. The readings can be found on the Canvas landing page and in Canvas Assignments tool.

Homeworks

Unless otherwise noted, all submissions are due by the end of the day of the due date given – this means by 11:59:59 pm. The late policies are discussed in the homework policies page (md). Submission is through the Gradescope – all submissions should open up 3 days (i.e., 72 hours) prior to the due date/time (1 day / 24 hours in summer terms).

To avoid having the due dates having to be listed in too many places, the homeworks and their due dates are not shown here. The homeworks themselves can be seen on the Homeworks page (md) – but please don’t start on one until it’s announced in class that it is ready! You can see the due dates in the daily announcements and the Canvas landing page.

Lecture progress

The links to the specific slides sets can be found on the slides page (md).

Expected lecture progress:

  1. Mon, May 20: course introduction; security mindset, terminology
  2. Tue, May 21: terminology, policy, ethics
  3. Wed, May 22: ethics, encryption
  4. Thu, May 23: encryption
  5. Fri, May 24: encryption
  6. Tue, May 28: encryption, networks
  7. Wed, May 29: web security
  8. Thu, May 30: web security, SQL/XSS/CSRF
  9. Fri, May 31: (midterm)
  10. Mon, Jun 3: SQL/XSS/CSRF, cryptocurrency
  11. Tue, Jun 4: anonymity, rootkits
  12. Wed, Jun 5: rootkits, virtual machines, stuxnet
  13. Thu, Jun 6: stuxnet, viruses
  14. Fri, Jun 7: viruses, buffer overflows
  15. Mon, Jun 10: buffer overflows
  16. Tue, Jun 11: forensics
  17. Wed, Jun 12: binary exploits
  18. Thu, Jun 13: (buffer class)
  19. Fri, Jun 14: (buffer class)

Actual lecture progress:

  1. Mon, May 20: finished course introduction; security mindset to 6.13
  2. Tue, May 21:
  3. Wed, May 22:
  4. Thu, May 23:
  5. Fri, May 24:
  6. Tue, May 28:
  7. Wed, May 29:
  8. Thu, May 30:
  9. Fri, May 31:
  10. Mon, Jun 3:
  11. Tue, Jun 4:
  12. Wed, Jun 5:
  13. Thu, Jun 6:
  14. Fri, Jun 7:
  15. Mon, Jun 10:
  16. Tue, Jun 11:
  17. Wed, Jun 12:
  18. Thu, Jun 13:
  19. Fri, Jun 14: