Applied Security Laboratory
Autumn semester 2021 (252-0811-00L)
Overview
Organizers: Dr. Christoph Sprenger. This is an application course.
Lab hours: Thursday, 10-13, LEE D 101 and Zoom
Credits: 8 ECTS
Language: English
Applied Security Laboratory
Announcements
- The introductory lecture takes place on Thu Sep 23, 2021, 10-11, LEE D 101 (40 places). It will also be transmitted via Zoom and recorded.
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.
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 23, 10-11, LEE D 101. There will be no other lectures during the semester.
- Assisted lab hours: Thursdays 10-13.
- The introduction lecture and the assisted lab hours are also accessible via Zoom (see course material below).
- Oct 8: Last possibility for deregistration from course. Dropping the course after this date will count as "failed".
Individual work
- Nov 4: each student hands in an individual lab journal documenting each student’s work with the book
Project schedule
- Sep 30: Register project groups (by email).
- Oct 25: Hand in system description and risk analysis overview / concept, not expected to be complete.
- Oct 29: Feedback to your overview / concept.
- Dec 2: Hand in final system description and risk analysis; also hand in your VMs and exchange report and VMs with other group for reviewing (see course material page), please come to the lab for this (only 1-2 group members).
- Dec 23: Hand in final system reviews; presentation of main results (room TBA, 10-13).
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
- protected page Course material page: Here you will find an updated version of the Applied Information Security book, the project assignment, templates, slides, links to VMs, and other course material (login with n.ethz credentials)
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