.jpg)
Course unit details:
Secure Computer Architecture and Systems
Unit code | COMP60261 |
---|---|
Credit rating | 15 |
Unit level | FHEQ level 7 – master's degree or fourth year of an integrated master's degree |
Teaching period(s) | Semester 1 |
Available as a free choice unit? | No |
Overview
Computer hardware, and the systems software that controls it (e.g. operating systems), are very important for modern computer security. Trusting the safety invariants maintained by computer architectures and systems software is crucial in almost all application domains. However, both computer hardware and systems software have been plagued by an increasing number of vulnerabilities that question their capacity for maintaining their security guarantees, often at a dire cost in terms of financial loss, business reputation/legal consequences, or even loss of life.
This unit will present the security aspects of modern computer hardware and systems software. It will introduce fundamentals about systems software and computer architecture, focusing on the key security guarantees computer systems aim to enforce: confidentiality, integrity, availability, identity and trust. The unit will describe how hardware and software work together to achieve these security goals. Additionally, the unit will discuss current security issues in both software and hardware, and the latest research efforts to address these problems.
Aims
The unit aims to present, from both the theoretical and practical points of view, the software and hardware aspects of engineering secure and resilient computer systems. More precisely, it aims to familiarise the students with the fundamentals of systems software and computer architecture. The focus is on the security aspects of both domains, including how software and hardware interact to provide the guarantees necessary for the integrity and resilience of computer systems, and to highlight the main modern trends in software/hardware systems security research.
Learning outcomes
1. Describe the basic aspects of computer systems security.
2. Discuss the fundamental security objectives of systems software, and how they interact with the hardware to achieve these goals.
3. List the main research trends in systems software and computer architecture security.
4. Describe the hardware constructs on which secured software depend.
5. Compare and contrast the different approaches at building computer systems that are resilient against modern threats.
6. Identify and analyse the risks stemming from vulnerabilities in systems software and computer architectures.
7. Reproduce existing attacks against computer systems.
8. Demonstrate the efficiency of modern countermeasures against the threats faced by computer systems.
Syllabus
This course unit will cover the following topics:
- Basic Systems Software Security Concepts
- Brief Introduction to Systems Software Programming Languages (C)
- Memory Safety
- Operating Systems Working Principles
- Operating Systems Security Principles
- Software Compartmentalisation
- Working and Security Principles of Virtualised Environments
- Fundamentals of Computer Architecture
- Fundamentals of Hardware Security Constructs
- Advanced Hardware Security Technologies
- Hardware Side Channels
Teaching and learning methods
- Lectures: 21h in total, 2 x 1 hour of lecture materials per week (part of it delivered asynchronously in video format), 1 x 1 hour revision session in the last week of teaching.
- Laboratories: 4 to 5 lab exercises, to be completed at home.
- Office hours: 1 x 1 hour of office hours per week.
- Feedback: Formative feedback given through the completion of quizzes. Summative feedback provided with the lab exercises’ marks. Oral feedback provided during office hours.
- Assessment: 4 to 5 summative lab exercises, one 2-hour exam at the end of the module.
Employability skills
- Innovation/creativity
- Problem solving
- Research
Assessment methods
Method | Weight |
---|---|
Other | 70% |
Practical skills assessment | 30% |
- Other (70%) refers to Online exam
Feedback methods
Formative feedback given through the completion of quizzes. Summative feedback provided with the lab exercises’ marks. Oral feedback provided during office hours.
Recommended reading
- Security Engineering: A Guide to Building Dependable Distributed Systems, Ross Anderson, Wiley, 2021.
- Hacking: The Art of Exploitation, Jon Erickson, No Starch Press, 2008.
- Linux Kernel Development, Robert Love, Addison-Wesley, 2003.
- Hardware and Software Support for Virtualization, Edouard Bugnion, Jason Nieh, and Dan Tsafrir, Morgan and Claypool, 2017.
- Computer Architecture: A Quantitative Approach, John L. Hennessy and David A. Patterson, Morgan Kaufmann, 2017.
Study hours
Scheduled activity hours | |
---|---|
eAssessment | 2 |
Lectures | 15 |
Independent study hours | |
---|---|
Independent study | 133 |
Teaching staff
Staff member | Role |
---|---|
Pierre Olivier | Unit coordinator |
Additional notes
Summative lab exercises should take about 20 hours of independent study to complete.
Part of the lecture materials will be delivered asynchronously in the form of videos: there should be around 3 hours of videos.
Office hours for this unit would be 10 hours.