@conference {564676,
	title = {Cobweb: Practical Remote Attestation Using Contextual Graphs},
	booktitle = {SysTEX},
	year = {2017},
	address = {Shanghai, China},
	abstract = {
	In theory, remote attestation is a powerful primitive for building distributed systems atop untrusting peers. Unfortunately, the canonical attestation framework defined by the Trusted Computing Group is insufficient to express rich contextual relationships between client-side software components. Thus, attestors and verifiers must rely on ad-hoc mechanisms to handle real-world attestation challenges like attestors that load executables in nondeterministic orders, or verifiers that require attestors to track dynamic information flows between attestor-side components.



	In this paper, we survey these practical attestation challenges. We then describe a newattestation framework, named Cobweb, which handles these challenges. The key insight is that real-world attestation is a graph problem. An attestation message is a graph in which each vertex is a software component, and has one or more labels, e.g., the hash value of the component, or the raw file data, or a signature over that data. Each edge in an attestation graph is a contextual relationship, like the passage of time, or a parent/child fork() relationship, or a sender/receiver IPC relationship. Cobweb{\textquoteright}s verifier-side policies are graph predicates which analyze contextual relationships. Experiments with real, complex software stacks demonstrate that Cobweb{\textquoteright}s abstractions are generic and can support a variety of real-world policies.

},
	url = {https://mickens.seas.harvard.edu/files/mickens/files/cobweb.pdf},
	author = {Frank Wang and Yuna Joung and James Mickens}
}
