IY5512 Computer Security (Operating Systems)
First term, core module for Technical Pathway only.
Module leader
Chris Mitchell
Aims
This course is concerned with security mechanisms in modern computer systems and will consider:
-
the core concepts: security policies, security models, subjects and objects, and access rights;
-
user authentication, including the use of tokens and biometrics;
-
important access control models and policies;
-
how access control can be implemented in hardware, operating systems and software;
-
how access control is implemented in commercial products;
-
why operating systems and computer systems remain vulnerable to attack, and how vulnerable systems can be strengthened to increase their resistance to attackers.
Objectives
On completion of this course students should be able to:
- Demonstrate an understanding of the importance of security models with reference to the security of computer systems.
- Describe the features and security mechanisms that are generally used to implement security policies.
- Provide examples of the implementation of such features and mechanisms within particular operating systems.
- Display breadth of knowledge of the security vulnerabilities affecting computer systems.
- Demonstrate an understanding of the main issues relating to software security in the context of computer systems.
Provisional Syllabus
Concepts and Terminology: security, confidentiality, integrity, availability, reliability, security policies, security models, information flow, access requests, memory protection
Authentication: basic techniques, relevance to access control
Access Control: mandatory and discretionary access control, capabilities, access control lists, intermediate controls, multilevel security.
Security Models: information flow, Bell-LaPadula model, basic security theorem, Chinese Wall model, Clark-Wilson model, role-based access control
Vulnerabilities in Computer Systems: Why they exist and how they can be prevented
Software Security: vulnerabilities in C and C++, type safety, type soundness, object oriented languages, sandboxing, stack inspection
Case Studies: Pentium processor, Unix, Windows, Java Security architecture
Method of examination
Written examination
Module leader
Chris Mitchell
Main references
- D. Gollmann, Computer Security, John Wiley & Sons, 2005 (2nd edition).
- C.P. Pfleeger and S.L. Pfleeger, Security in Computing, Prentice-Hall, 2006 (fourth edition).
- M. Bishop, Computer Security: Art and Science, Addison Wesley, 2002.
Other references
- J. O'Gorman, Operating Systems, Palgrave MacMillan, 2000.
- Internet Security Solutions Inc., Windows 2000 Security Technical Reference, Microsoft Press, 2000.
- S. Garfinkel and G. Spafford, Practical Unix and Internet Security, O'Reilly, 1996.
- L. Gong, Inside Java 2 Platform Security, Addison Wesley, 2003.