Abstract

In this work we investigate the security of security-critical applications, i.e. applications in which a failure may produce consequences that are unacceptable. We consider three areas: mobile devices, virtualization platforms, and domain name systems.The Java Micro Edition platform defines the Mobile Information Device Profile (MIDP) to facilitate the development of applications for mobile devices, like cell phones and PDAs. We first study and compare formally several variants of the security model specified by MIDP to access sensitive resources of a mobile device.Hypervisors allow multiple guest operating systems to run on shared hardware, and offer a compelling means of improving the security and the flexibility of software systems. In this work we present a formalization of an idealized model of a hypervisor. We establish (formally) that the hypervisor ensures strong isolation properties between the different operating systems, and guarantees that requests from guest operating systems are eventually attended. We show also that virtualized platforms are transparent, i.e. a guest operating system cannot distinguish whether it executes alone or together with other guest operating systems on the platform.The Domain Name System Security Extensions (DNSSEC) is a suite of specifications that provides origin authentication and integrity assurance services for DNS data. We finally introduce a minimalistic specification of a DNSSEC model which provides the grounds needed to formally state and verify security properties concerning the chain of trust of the DNSSEC tree.We develop all our formalizations in the Calculus of Inductive Constructions —formal language that combines a higher-order logic and a richly-typed functional programming language— using the Coq proof assistant.

Highlights

  • There are multiple definitions of the term safety-critical system

  • In this paper we provide a detailed account of the work presented in [1], where we have investigated the security of three areas of safety-critical applications: 1. mobile devices: with increasing capabilities in mobile devices and posterior consumer adoption, these devices have become an integral part of how people perform tasks in their works and personal lives

  • There are significant hurdles with this approach, especially if one focuses on proving security properties rather than functional correctness

Read more

Summary

Introduction

Virtualization is a prominent technology that allows high-integrity, safety-critical, systems and untrusted, non-critical, systems to coexist securely on the same platform and efficiently share its resources. To achieve the strong security guarantees requested by these application scenarios, virtualization platforms impose a strict control on the interactions between their guest systems. While this control theoretically guarantees isolation between guest systems, implementation errors and side-channels often lead to breaches of confidentiality. The most prominent efforts in this direction are within the Hyper-V [15, 16] and L4.verified [17] projects, which aim to derive strong guarantees for concrete implementations: Murray et al [33] recently presented a machine-checked information flow security proof for the seL4 microkernel. The technology for verifying 2-safety properties is not fully mature, making their formal verification on large and complex programs exceedingly challenging

Security policies
Security models
Reasoning about implementations and models
Mobile devices
Virtualization platforms
Domain name systems
Formal language used
Document outline
Formal analysis of security models for mobile devices
MIDP security model
Security at the platform level
Security at the application level
Applications
Device state
Events
One-step execution
Sessions
Verification of security properties
Executable specification
A framework for defining and comparing access control policies
Related work
Summary and future work
A primer on virtualization
Contents of the rest of the section
The model
Informal overview of the memory model
Formalizing states
Actions and executions
Isolation properties
Read isolation
Write Isolation
OS Isolation
Availability
Extension of the model with cache and TLB
Verified implementation
Isolation and transparency in the extended model
DNS and DNSSEC
A primer on the vulnerabilities of DNS
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.