Applied Security Laboratory
Autumn Semester 2015 (252-0811-00L)
Overview
Organizers: Prof. Dr. David Basin, Dr. Christoph Sprenger, and Dr. Ralf Sasse. This is an application course.
Lab hours: Thursday 9-12h, in CAB E 87.1
Credits: 8 ECTS
Language: English
Applied Security Laboratory
Announcements
- Bring your laptop to the introductory lecture on Sep 17, 2015.
Description
This course emphasizes applied aspects of Information Security. 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 an extensive script and virtual machines that include example applications, questions, and answers.
The students will also complete an independent project: based on a set of functional 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 system. All project work will be performed in teams and must be properly documented.
The Applied Security Laboratory addresses 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.
Schedule
- Mandatory introduction lecture: Thursday, Sep 17, 9-10
- Note: there will be no other lectures during the semester. This allows flexible working. Occasionally, there may be a talk by an external expert.
- Assisted lab hours: Thursdays, 9-12.
- Open lab hours: Rest of the week.
Project schedule:
- Oct 1: Register project groups ();
- Oct 19, 12:00: Hand in system description and risk analysis overview / concept ();
- Oct 23: Feedback to your overview / concept;
- Nov 19: Hand in final system description and risk analysis, max 30 pages (); 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.
- Dec 10, by 09:00: Hand in final system reviews, max 18 pages (); presentation of main results (in lab).
Semester end exam:
- Dec 17: Written, closed-books, 90 minutes: 10:15-11:45 (CAB H 52).
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.
Exam
There will be a written exam at the end of the semester. In addition, all participating students will take part in a longer-term project. This project will contribute to the overall grade.
Longer-term Project
The project will involve the installation, configuration, and implementation of a small IT system that must comply with a given set of functional and security requirements. Students will work in small teams to complete the project. Every student team will afterwards review another team's IT system. Each team will write a report that documents their own IT system as well as the results from their review. The report will be graded. Since it is a team project, the grade will be identical for all members of the team.
Course Material
The course is based on the following book
- "Applied Information Security - A Hands-on Approach" by Prof. Dr. David Basin, Dr. Patrick Schaller, and Michael Schläpfer.
Additional course material
- protected page Course Material: project assignment, templates, slides and other course material (login with n.ethz credentials)
- Virtual Machines and Chapter on Computer Forensics
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.
- 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