Search result: Catalogue data in Autumn Semester 2017
Computer Science Master | ||||||
Focus Courses | ||||||
Focus Courses in Information Security | ||||||
Focus Core Courses Information Security | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|---|
252-0463-00L | Security Engineering | W | 5 credits | 2V + 2U | D. Basin | |
Abstract | Subject of the class are engineering techniques for developing secure systems. We examine concepts, methods and tools, applied within the different activities of the SW development process to improve security of the system. Topics: security requirements&risk analysis, system modeling&model-based development methods, implementation-level security, and evaluation criteria for secure systems | |||||
Objective | Security engineering is an evolving discipline that unifies two important areas: software engineering and security. Software Engineering addresses the development and application of methods for systematically developing, operating, and maintaining, complex, high-quality software. Security, on the other hand, is concerned with assuring and verifying properties of a system that relate to confidentiality, integrity, and availability of data. The goal of this class is to survey engineering techniques for developing secure systems. We will examine concepts, methods, and tools that can be applied within the different activities of the software development process, in order to improve the security of the resulting systems. Topics covered include * security requirements & risk analysis, * system modeling and model-based development methods, * implementation-level security, and * evaluation criteria for the development of secure systems | |||||
Content | Security engineering is an evolving discipline that unifies two important areas: software engineering and security. Software Engineering addresses the development and application of methods for systematically developing, operating, and maintaining, complex, high-quality software. Security, on the other hand, is concerned with assuring and verifying properties of a system that relate to confidentiality, integrity, and availability of data. The goal of this class is to survey engineering techniques for developing secure systems. We will examine concepts, methods, and tools that can be applied within the different activities of the software development process, in order to improve the security of the resulting systems. Topics covered include * security requirements & risk analysis, * system modeling and model-based development methods, * implementation-level security, and * evaluation criteria for the development of secure systems Modules taught: 1. Introduction - Introduction of Infsec group and speakers - Security meets SW engineering: an introduction - The activities of SW engineering, and where security fits in - Overview of this class 2. Requirements Engineering: Security Requirements and some Analysis - overview: functional and non-functional requirements - use cases, misuse cases, sequence diagrams - safety and security - FMEA, FTA, attack trees 3. Modeling in the design activities - structure, behavior, and data flow - class diagrams, statecharts 4. Model-driven security for access control (design) - SecureUML as a language for access control - Combining Design Modeling Languages with SecureUML - Semantics, i.e., what does it all mean, - Generation - Examples and experience 5. Model-driven security (Part II) - Continuation of above topics 6. Security patterns (design and implementation) 7. Implementation-level security - Buffer overflows - Input checking - Injection attacks 8. Testing - overview - model-based testing - testing security properties 9. Risk analysis and management 1 (project management) - "risk": assets, threats, vulnerabilities, risk - risk assessment: quantitative and qualitative - safeguards - generic risk analysis procedure - The OCTAVE approach 10. Risk analysis: IT baseline protection - Overview - Example 11. Evaluation criteria - CMMI - systems security engineering CMM - common criteria 12. Guest lecture - TBA | |||||
Literature | - Ross Anderson: Security Engineering, Wiley, 2001. - Matt Bishop: Computer Security, Pearson Education, 2003. - Ian Sommerville: Software Engineering, 6th ed., Addison-Wesley, 2001. - John Viega, Gary McGraw: Building Secure Software, Addison-Wesley, 2002. - Further relevant books and journal/conference articles will be announced in the lecture. | |||||
Prerequisites / Notice | Prerequisite: Class on Information Security | |||||
252-1414-00L | System Security | W | 5 credits | 2V + 2U | S. Capkun, A. Perrig | |
Abstract | The first part of the lecture covers individual system aspects starting with tamperproof or tamper-resistant hardware in general over operating system related security mechanisms to application software systems, such as host based intrusion detection systems. In the second part, the focus is on system design and methodologies for building secure systems. | |||||
Objective | In this lecture, students learn about the security requirements and capabilities that are expected from modern hardware, operating systems, and other software environments. An overview of available technologies, algorithms and standards is given, with which these requirements can be met. | |||||
Content | The first part of the lecture covers individual system's aspects starting with tamperproof or tamperresistant hardware in general over operating system related security mechanisms to application software systems such as host based intrusion detetction systems. The main topics covered are: tamper resistant hardware, CPU support for security, protection mechanisms in the kernel, file system security (permissions / ACLs / network filesystem issues), IPC Security, mechanisms in more modern OS, such as Capabilities and Zones, Libraries and Software tools for security assurance, etc. In the second part, the focus is on system design and methodologies for building secure systems. Topics include: patch management, common software faults (buffer overflows, etc.), writing secure software (design, architecture, QA, testing), compiler-supported security, language-supported security, logging and auditing (BSM audit, dtrace, ...), cryptographic support, and trustworthy computing (TCG, SGX). Along the lectures, model cases will be elaborated and evaluated in the exercises. | |||||
263-4640-00L | Network Security | W | 6 credits | 2V + 1U + 2A | A. Perrig, S. Frei | |
Abstract | Some of today's most damaging attacks on computer systems involve exploitation of network infrastructure, either as the target of attack or as a vehicle to attack end systems. This course provides an in-depth study of network attack techniques and methods to defend against them. | |||||
Objective | - Students are familiar with fundamental network security concepts. - Students can assess current threats that Internet services and networked devices face, and can evaluate appropriate countermeasures. - Students can identify and assess known vulnerabilities in a software system that is connected to the Internet (through analysis and penetration testing tools). - Students have an in-depth understanding of a range of important security technologies. - Students learn how formal analysis techniques can help in the design of secure networked systems. | |||||
Content | The course will cover topics spanning five broad themes: (1) network defense mechanisms such as secure routing protocols, TLS, anonymous communication systems, network intrusion detection systems, and public-key infrastructures; (2) network attacks such as denial of service (DoS) and distributed denial-of-service (DDoS) attacks; (3) analysis and inference topics such as network forensics and attack economics; (4) formal analysis techniques for verifying the security properties of network architectures; and (5) new technologies related to next-generation networks. | |||||
Prerequisites / Notice | This lecture is intended for students with an interest in securing Internet communication services and network devices. Students are assumed to have knowledge in networking as taught in a Communication Networks lecture. The course will involve a course project and some smaller programming projects as part of the homework. Students are expected to have basic knowledge in network programming in a programming language such as C/C++, Go, or Python. | |||||
Focus Elective Courses Information Security | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-0811-00L | Applied Security Laboratory In the Master Programme max. 10 credits can be accounted by Labs on top of the Interfocus Courses. Additional Labs will be listed on the Addendum. | W | 8 credits | 7P | D. Basin | |
Abstract | Hands-on course on applied aspects of information security. Applied information security, operating system security, OS hardening, computer forensics, web application security, project work, design, implementation, and configuration of security mechanisms, risk analysis, system review. | |||||
Objective | 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), computer forensics, and risk analysis and risk management. | |||||
Content | 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 a book 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. | |||||
Lecture notes | The course is based on the book "Applied Information Security - A Hands-on Approach". More information: Link | |||||
Literature | Recommended reading includes: * Pfleeger, Pfleeger: Security in Computing, Third Edition, Prentice Hall, available online from within ETH * Garfinkel, Schwartz, Spafford: Practical Unix & Internet Security, O'Reilly & Associates. * Various: OWASP Guide to Building Secure Web Applications, 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, available online as PDF * BSI: IT-Grundschutzhandbuch, available online | |||||
Prerequisites / Notice | * The lab allows flexible working since there are only few mandatory meetings during the semester. * 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 sign the lab's charter and usage policy during the introduction lecture. | |||||
252-1411-00L | Security of Wireless Networks | W | 5 credits | 2V + 1U + 1A | S. Capkun | |
Abstract | Core Elements: Wireless communication channel, Wireless network architectures and protocols, Attacks on wireless networks, Protection techniques. | |||||
Objective | After this course, the students should be able to: describe and classify security goals and attacks in wireless networks; describe security architectures of the following wireless systems and networks: 802.11, GSM/UMTS, RFID, ad hoc/sensor networks; reason about security protocols for wireless network; implement mechanisms to secure 802.11 networks. | |||||
Content | Wireless channel basics. Wireless electronic warfare: jamming and target tracking. Basic security protocols in cellular, WLAN and multi-hop networks. Recent advances in security of multi-hop networks; RFID privacy challenges and solutions. | |||||
263-4630-00L | Computer-Aided Modelling and Reasoning In the Master Programme max. 10 credits can be accounted by Labs on top of the Interfocus Courses. Additional Labs will be listed on the Addendum. | W | 8 credits | 7P | A. Lochbihler, D. Traytel | |
Abstract | The "computer-aided modelling and reasoning" lab is a hands-on course about using an interactive theorem prover to construct formal models of algorithms, protocols, and programming languages and to reason about their properties. The lab has two parts: The first introduces various modelling and proof techniques. The second part consists of a project in which the students apply these techniques | |||||
Objective | The students learn to effectively use a theorem prover to create unambiguous models and rigorously analyse them. They learn how to write precise and concise specifications, to exploit the theorem prover as a tool for checking and analysing such models and for taming their complexity, and to extract certified executable implementations from such specifications. | |||||
Content | The "computer-aided modelling and reasoning" lab is a hands-on course about using an interactive theorem prover to construct formal models of algorithms, protocols, and programming languages and to reason about their properties. The focus is on applying logical methods to concrete problems supported by a theorem prover. The course will demonstrate the challenges of formal rigor, but also the benefits of machine support in modelling, proving and validating. The lab will have two parts: The first part introduces basic and advanced modelling techniques (functional programs, inductive definitions, modules), the associated proof techniques (term rewriting, resolution, induction, proof automation), and compilation of the models to certified executable code. In the second part, the students work in teams of two on a project assignment in which they apply these techniques: they build a formal model and prove its desired properties. The project lies in the area of programming languages, model checking, or information security. | |||||
Literature | Textbook: Tobias Nipkow, Gerwin Klein. Concrete Semantics, part 1 (Link) | |||||
Seminar Information Security | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-4601-00L | Current Topics in Information Security Number of participants limited to 24. | W | 2 credits | 2S | D. Basin, S. Capkun, A. Perrig | |
Abstract | The seminar covers various topics in information security: security protocols (models, specification & verification), trust management, access control, non-interference, side-channel attacks, identity-based cryptography, host-based attack detection, anomaly detection in backbone networks, key-management for sensor networks. | |||||
Objective | The main goals of the seminar are the independent study of scientific literature and assessment of its contributions as well as learning and practicing presentation techniques. | |||||
Content | The seminar covers various topics in information security, including network security, cryptography and security protocols. The participants are expected to read a scientific paper and present it in a 35-40 min talk. At the beginning of the semester a short introduction to presentation techniques will be given. Selected Topics - security protocols: models, specification & verification - trust management, access control and non-interference - side-channel attacks - identity-based cryptography - host-based attack detection - anomaly detection in backbone networks - key-management for sensor networks | |||||
Literature | The reading list will be published on the course web site. |
- Page 1 of 1