Tamper-Tolerant Software: Modeling and Implementation

  • Authors:
  • Mariusz H. Jakubowski;Chit Wei Saw;Ramarathnam Venkatesan

  • Affiliations:
  • Microsoft Research, Redmond, USA 98052;Microsoft Research, Redmond, USA 98052;Microsoft Research, Redmond, USA 98052 and Microsoft Research India, Bangalore, India 560 080

  • Venue:
  • IWSEC '09 Proceedings of the 4th International Workshop on Security: Advances in Information and Computer Security
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Common software-protection systems attempt to detect malicious observation and modification of protected applications. Upon tamper detection, anti-hacking code may produce a crash or gradual failure, rendering the application unusable or troublesome. Such a response is designed to complicate attacks, but has also caused problems for developers and end users, particularly when bugs or other problems invoke anti-tampering measures accidentally. To address these issues, an alternative approach is to detect and fix malicious changes. This paper presents a scheme to transform programs into tamper-tolerant versions that use self-correcting operation as a response against attacks. Combining techniques from the fields of fault tolerance and software security, the approach transforms programs via code individualization and redundancy. We also describe security enhancements through error correction, delayed responses and checkpointing. For security analysis, we adapt a graph-based model of attacks and defenses in the context of software tamper-resistance. This helps to estimate the difficulty of breaking our scheme in practical scenarios.