Trustworthy services through attestation

<p>Remote attestation is a promising mechanism for assurance of distributed systems. It allows users to identify the software running on a remote system before trusting it with an important task. This functionality is arriving at exactly the right time as security-critical systems, such as hea...

Full description

Bibliographic Details
Main Author: Lyle, J
Other Authors: Martin, A
Format: Thesis
Language:English
Published: 2011
Subjects:
_version_ 1797087634088001536
author Lyle, J
author2 Martin, A
author_facet Martin, A
Lyle, J
author_sort Lyle, J
collection OXFORD
description <p>Remote attestation is a promising mechanism for assurance of distributed systems. It allows users to identify the software running on a remote system before trusting it with an important task. This functionality is arriving at exactly the right time as security-critical systems, such as healthcare and financial services, are increasingly being hosted online. However, attestation has limitations and has been criticized for being impractical. Too much effort is required for too little reward: a large, rapidly-changing list of software must be maintained by users, who then have insufficient information to make a trust decision. As a result attestation is rarely used today.</p><p>This thesis evaluates attestation in a service-oriented context to determine whether it can be made practical for assurance of servers rather than client machines. There are reasons to expect that it can: servers run fewer programs and the overhead of integrity reporting is more appropriate on a server which may be protecting important assets. However, a literature review and new experiments show that problems remain, many stemming from the large trusted computing base as well as the lack of information linking software identity to expected behaviour.</p><p>Three novel solutions are proposed. Web service middleware is restructured to minimize the software running at the endpoint, thus lowering the effort for the relying party. A key advantage of the proposed two-tier structure is that strong integrity guarantees can be made without loss of conformance with service standards. Secondly, a program modelling approach is investigated to further automate the attestation and verification process and add more information about system behaviour. Several sets of programs are modelled, including the bootloader, a web service and a menu-based shell. Finally, service behaviour is attested through source code properties established during compilation. This provides a trustworthy and verifiable connection between the identity of the software on a service platform and its expected runtime behaviour. This approach is applicable to any programming language and verification method, and has the advantage of not requiring a runtime monitor. These contributions are evaluated using an example e-voting service to show the level of assurance attestation can provide.</p><p>Overall, this thesis demonstrates that attestation can be made significantly more practical through the described new techniques. Although some problem remain, with further improvements to operating systems and better software engineering methods, attestation may become a trustworthy and reliable assurance mechanism for web services.</p>
first_indexed 2024-03-07T02:38:27Z
format Thesis
id oxford-uuid:a99b5bd5-e164-48e8-85ed-d0a35908f7b7
institution University of Oxford
language English
last_indexed 2024-03-07T02:38:27Z
publishDate 2011
record_format dspace
spelling oxford-uuid:a99b5bd5-e164-48e8-85ed-d0a35908f7b72022-03-27T03:09:33ZTrustworthy services through attestationThesishttp://purl.org/coar/resource_type/c_db06uuid:a99b5bd5-e164-48e8-85ed-d0a35908f7b7Computer securitySoftware engineeringEnglishOxford University Research Archive - Valet2011Lyle, JMartin, A<p>Remote attestation is a promising mechanism for assurance of distributed systems. It allows users to identify the software running on a remote system before trusting it with an important task. This functionality is arriving at exactly the right time as security-critical systems, such as healthcare and financial services, are increasingly being hosted online. However, attestation has limitations and has been criticized for being impractical. Too much effort is required for too little reward: a large, rapidly-changing list of software must be maintained by users, who then have insufficient information to make a trust decision. As a result attestation is rarely used today.</p><p>This thesis evaluates attestation in a service-oriented context to determine whether it can be made practical for assurance of servers rather than client machines. There are reasons to expect that it can: servers run fewer programs and the overhead of integrity reporting is more appropriate on a server which may be protecting important assets. However, a literature review and new experiments show that problems remain, many stemming from the large trusted computing base as well as the lack of information linking software identity to expected behaviour.</p><p>Three novel solutions are proposed. Web service middleware is restructured to minimize the software running at the endpoint, thus lowering the effort for the relying party. A key advantage of the proposed two-tier structure is that strong integrity guarantees can be made without loss of conformance with service standards. Secondly, a program modelling approach is investigated to further automate the attestation and verification process and add more information about system behaviour. Several sets of programs are modelled, including the bootloader, a web service and a menu-based shell. Finally, service behaviour is attested through source code properties established during compilation. This provides a trustworthy and verifiable connection between the identity of the software on a service platform and its expected runtime behaviour. This approach is applicable to any programming language and verification method, and has the advantage of not requiring a runtime monitor. These contributions are evaluated using an example e-voting service to show the level of assurance attestation can provide.</p><p>Overall, this thesis demonstrates that attestation can be made significantly more practical through the described new techniques. Although some problem remain, with further improvements to operating systems and better software engineering methods, attestation may become a trustworthy and reliable assurance mechanism for web services.</p>
spellingShingle Computer security
Software engineering
Lyle, J
Trustworthy services through attestation
title Trustworthy services through attestation
title_full Trustworthy services through attestation
title_fullStr Trustworthy services through attestation
title_full_unstemmed Trustworthy services through attestation
title_short Trustworthy services through attestation
title_sort trustworthy services through attestation
topic Computer security
Software engineering
work_keys_str_mv AT lylej trustworthyservicesthroughattestation