Download PDF

IEEE European Symposium on Security and Privacy, Date: 2016/03/21 - 2016/03/24, Location: Saarbruecken, Germany

Publication date: 2016-01-01
Pages: 147 - 162
ISSN: 978-1-5090-1752-2
Publisher: IEEE

Proceedings - 2016 IEEE European Symposium on Security and Privacy, EURO S and P 2016

Author:

Devriese, D
Birkedal, L ; Piessens, F

Keywords:

Science & Technology, Technology, Computer Science, Theory & Methods, Engineering, Electrical & Electronic, Computer Science, Engineering, RECURSIVE TYPES, SEMANTICS, object capabilities, logical relations, effect parametricity, capability-safety, C16/15/058#53326573

Abstract:

© 2016 IEEE. Object capabilities are a technique for fine-grained privilegeseparation in programming languages and systems, with importantapplications in security. However, current formal characterisations donot fully capture capability-safety of a programming language and arenot sufficient for verifying typical applications. Usingstate-of-the-art techniques from programming languages research, wedefine a logical relation for a core calculus of JavaScript thatbetter characterises capability-safety. The relation is powerfulenough to reason about typical capability patterns and supportsevolvable invariants on shared data structures, capabilities withrestricted authority over them and isolated components with restrictedcommunication channels. We use a novel notion of effect parametricityfor deriving properties about effects. Our results imply memory accessbounds that have previously been used to characterisecapability-safety.