Applied Security Laboratory
Autumn semester 2023 (252-0811-00L)
Overview
Organizers: Prof. Dr. David Basin, Dr. Christoph Sprenger, Mihael Liskij. This is an application course.
Lab hours: Thursday, 10-13, LEE D 101
Credits: 8 ECTS
Language: English
Applied Security Laboratory
Announcements
- Rooms for the final presentation on Dec 21: 10-13, HG D 3.2 and 14-17, HG E 41.
- The introductory lecture takes place on Thu Sep 21, *10:30* - 11:30, *HG D 3.2*. Please note the non-standard time and place!
- All further announcements will be made in the corresponding Moodle forum.
Description
This course emphasizes applied aspects of Information Security and consists of two parts.
Independent study
In this part, the students will study a number of topics in a hands-on fashion and carry out experiments in order to better understand the need for secure implementation and configuration of IT systems and to assess the effectivity and impact of security measures. This part is based on a book and virtual machines that include example applications, questions, and answers. Each student will prepare a lab journal documenting their work with the book.
Project work
In the second part, the students will also perform a team project: based on a set of functional and security requirements, they will design and implement a prototypical IT system. In addition, they will conduct a thorough security analysis and devise appropriate security measures for their systems. Finally, they will carry out a technical and conceptual review of another team's system. All project work will be performed in teams and must be properly documented in project reports. At the end of the semester, the teams summarize their work in a short presentation.
Topics covered
The Applied Security Laboratory covers four major topics:
- Operating system security (hardening, vulnerability scanning, access control, logging);
- Application security with an emphasis on web applications (web server setup, common web exploits, authentication, session handling, code security);
- Risk analysis and risk management;
- Computer Forensics (optional).
Grading
The individual lab journal will contribute 20% and the project reports and presentation 80% towards the overall grade.
Schedule
- Mandatory introduction lecture: Thu Sep 21, *10:30*-11:30, *HG D 3.2*. There will be no other lectures during the semester.
- Assisted lab hours: Thursdays 10-13, LEE D 101.
- Oct 6: Last possibility for deregistration from course. Dropping the course after this date will count as "failed".
Individual work
- Nov 3: each student hands in an individual lab journal documenting their work with the book.
Project schedule
- Sep 28: Register project groups (on Moodle).
- Oct 23: Hand in system description and risk analysis overview / concept, not expected to be complete.
- Oct 27: Feedback to your overview / concept.
- Nov 30: Hand in final system description and risk analysis; also hand in your VMs and exchange report and VMs with other group for reviewing.
- Dec 21: Hand in final system reviews; presentation of main results (10-13, HG D 3.2 and 14-17, HG E 41).
Requirements
- The lab covers a variety of different techniques. Thus, participating students should have a solid foundation in the following areas: information security, operating system administration (especially Unix/Linux), and networking. Students are also expected to have a basic understanding of HTML, PHP, JavaScript, and MySQL because several examples are implemented in these languages;
- Students must be prepared to spend more than three hours per week to complete the lab assignments and the project. This applies particularly to students who do not meet the recommended requirements given above. Successful participants of the course receive 8 credits as compensation for their effort;
- All participants must agree and sign the lab's charter and usage policy during the introduction lecture.
Course Material
- We will provide the course material via Moodle. There you will find an updated version of the Applied Information Security book, the project assignment, templates, slides, links to VMs, and other course material.
Literature
Additional recommended reading:
- Pfleeger, Pfleeger: Security in Computing, Third Edition, Prentice Hall, external page available online from within ETH
- Garfinkel, Schwartz, Spafford: Practical Unix & Internet Security, O'Reilly & Associates.
- De Ryck et al., Primer on Client-side Web Security, Springer (external page available online from within ETH).
- Various: OWASP Guide to Building Secure Web Applications, external page available online
- Huseby: Innocent Code – A Security Wake-Up Call for Web Programmers, John Wiley & Sons.
- Scambray, Schema: Hacking Exposed Web Applications, McGraw-Hill.
- O'Reilly, Loukides: Unix Power Tools, O'Reilly & Associates.
- Frisch: Essential System Administration, O'Reilly & Associates.
- NIST: Risk Management Guide for Information Technology Systems, external page available online as PDF
- BSI: IT-Grundschutzhandbuch, external page available online (german), external page PDF in english
- BSI: Risk analysis based on IT-Grundschutz, external page available online as PDF (german), english version