TUD Logo

TUD Home » ... » Teaching » Distributed Operating Systems » Security

Operating Systems

Exercise: Security

In the tutorial, all solutions will be presented by students. Please be prepared for all questions as the exercise will focus on discussion, not on understanding the question and gathering the knowledge.

Secure Booting

This exercise practices secure booting, employing the example of an Internet-connected game console.

  1. The game console runs the following software stack. Is the given reply within the challenge response protocol correct? Justify your answer.
    • Application: A
    • Operating System: OS, ID, OSrunning
    • OS vendor: OSV
    • Platform: CPU, TRB with EK,SRK,AIK
    • Platform Vendor: TVK, certifies {"good EK",EKpub}TVKpriv
    • Certification Authority: CAK, checks and certifies that AIK belongs to TRB with EK (not shown here)
    • Challenge: nonce
    • Response: {nonce}OSrunningAuthKpriv, {IDOS,OSrunningAuthKpub,OSVKpub}AIKpriv, {"good AIK", AIKpub}CAKpriv
  2. Describe how trusted-computing technology can be applied to protect the integrity of game-related data (e.g., the integrity of files describing avatar properties).
  3. Describe in detail how application A can check whether it has been securely booted, or why this is impossible.
  4. The first version of the game console should implement a closed system. Design a boot protocol which allows only licensed applications to be started. Describe the limitations of the resulting boot protocol respectively the hard- and software properties required to overcome these limitations.
  5. An extended version of the console should be produced as an open system. This console should allow online players to play together, provided each player has a private legal copy of the game. How does secure booting help to prevent
    1. cheating
    2. the use of illegal copies?

Hardware and Software Requirements for Trusted Computing

  1. Discuss how the cryptographic primitives and protocols needed for "secure/authenticated booting" and "remote attestation" can be integrated into the hardware and software stack, such that the desired protection goals can be met. Consider the following aspects and design questions:
    • What are the protection goals?
    • Who's the attacker? What can be assumed about her capabilities and means of access?
    • What has to be built into hardware? What can be done in software?
    • Which security properties must be enforced by hardware components, firmware, operating system, and applications?
Last modified: 6th Jan 2020, 2.15 PM
Author: Dr.-Ing. Marcus Völp

Contact
Regulations
  • ModuleModules: INF-BI-1, INF-BAS4, INF-VERT4, DSE-E3
  • Credits6 Credit Points
  • 2/1/0 = 3 SWS
Time and Place
  • Lecture, weekly
    TimeMon, 11.10 AM PlaceAPB E008
  • Exercise, biweekly
    TimeMon, 9.20 AM PlaceAPB 3105
Mailing List