Computer Laboratory

Technical reports

The interaction between fault tolerance and security

Geraint Price

December 1999, 144 pages

This technical report is based on a dissertation submitted June 1999 by the author for the degree of Doctor of Philosophy to the University of Cambridge, Wolfson College.

Abstract

This dissertation studies the effects on system design when including fault tolerance design principles within security services.

We start by looking at the changes made to the trust model within protocol design, and how moving away from trusted server design principles affects the structure of the protocol. Taking the primary results from this work, we move on to study how control in protocol execution can be used to increase assurances in the actions of legitimate participants. We study some examples, defining two new classes of attack, and note that by increasing client control in areas of protocol execution, it is possible to overcome certain vulnerabilities.

We then look at different models in fault tolerance, and how their adoption into a secure environment can change the design principles and assumptions made when applying the models.

We next look at the application of timing checks in protocols. There are some classes of timing attack that are difficult to thwart using existing techniques, because of the inherent unreliability of networked communication. We develop a method of converting the Quality of Service mechanisms built into ATM networks in order to achieve another layer of protection against timing attacks.

We then study the use of primary-backup mechanisms within server design, as previous work on server replication in security centres on the use of the state machine approach for replication, which provides a higher degree of assurance in system design, but adds complexity.

We then provide a design for a server to reliably and securely store objects across a loosely coupled, distributed environment. The main goal behind this design was to realise the ability for a client to exert control over the fault tolerance inherent in the service.

The main conclusions we draw from our research are that fault tolerance has a wider application within security than current practices, which are primarily based on replicating servers, and clients can exert control over the protocols and mechanisms to achieve resilience against differing classes of attack. We promote some new ideas on how, by challenging the prevailing model for client-server architectures in a secure environment, legitimate clients can have greater control over the services they use. We believe this to be a useful goal, given that the client stands to lose if the security of the server is undermined.

Full text

PDF (0.9 MB)

BibTeX record

@TechReport{UCAM-CL-TR-479,
  author =	 {Price, Geraint},
  title = 	 {{The interaction between fault tolerance and security}},
  year = 	 1999,
  month = 	 dec,
  url = 	 {http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-479.pdf},
  institution =  {University of Cambridge, Computer Laboratory},
  number = 	 {UCAM-CL-TR-479}
}