The Case for Device Namespaces



Similar documents
CELLS A Virtual Mobile Smartphone Architecture

Architecture (SOSP 2011) 11/11/2011 Minsung Jang

OpenEdge and Mobile Applications

Cloud Computing. Chapter 8 Virtualization

Development. SriSeshaa Technologies. Table of Contents

Mark Bennett. Search and the Virtual Machine

Mobile App Testing Guide. Basics of Mobile App Testing

GHG Protocol Product Life Cycle Accounting and Reporting Standard ICT Sector Guidance. Chapter 7:

Introduction to Android

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Are free Android virus scanners any good?

GROUPTALK FOR ANDROID VERSION for Android

GadgetTrak Mobile Security Android & BlackBerry Installation & Operation Manual

COS 318: Operating Systems. Virtual Machine Monitors

ANDROID OPERATING SYSTEM

Introduction to Android

Running Head: AWARENESS OF BYOD SECURITY CONCERNS 1. Awareness of BYOD Security Concerns. Benjamin Tillett-Wakeley. East Carolina University

Virtualization. Dr. Yingwu Zhu

CSE597a - Cell Phone OS Security. Cellphone Hardware. William Enck Prof. Patrick McDaniel

Mobile Access Software Blade

RCN BUSINESS OFFICE MOBILITY FOR DESKTOP

Full and Para Virtualization

Solution Guide Parallels Virtualization for Linux

Lecture Embedded System Security A. R. Darmstadt, Introduction Mobile Security

AirWatch Solution Overview

Android Architecture. Alexandra Harrison & Jake Saxton

Berlin Institute of Technology FG Security in Telecommunications

BYOD: End-to-End Security

AppScope: Application Energy Metering Framework for Android Smartphones using Kernel Activity Monitoring

Security and Billing for Azure Pack. Presented by 5nine Software and Cloud Cruiser

Super Manager User Manual. English v /06/15 Copyright by GPC

Remote Desktop on Mobile

Tutorial on Smartphone Security

Tablets in Data Acquisition

This session was presented by Jim Stickley of TraceSecurity on Wednesday, October 23 rd at the Cyber Security Summit.

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

MOVEIRO BT-200 Technical Information for Application Developer

2015 MDRT Annual Meeting e Handout Material. What is Your Smartphone Leaking?

Android Virtualization from Sierraware. Simply Secure

Empowering Developers to Estimate App Energy Consumption. Radhika Mittal, UC Berkeley Aman Kansal & Ranveer Chandra, Microsoft Research

Mobile Phones Operating Systems

WIND RIVER SECURE ANDROID CAPABILITY

Android Commercial Spyware Disease and Medication

Is Virtualization Killing SSI Research?

The Art of Virtualization with Free Software

-Android 2.3 is the most used version of Android on the market today with almost 60% of all Android devices running 2.3 Gingerbread -Winner of

Module Title: Software Development A: Mobile Application Development

9/26/2011. What is Virtualization? What are the different types of virtualization.

CLOUD GAMING WITH NVIDIA GRID TECHNOLOGIES Franck DIARD, Ph.D., SW Chief Software Architect GDC 2014

Luxriot Broadcast Server Manual

Lua as a business logic language in high load application. Ilya Martynov ilya@iponweb.net CTO at IPONWEB

Why Choose VMware vsphere for Desktop Virtualization? WHITE PAPER

Performance Analysis Of Policy Based Mobile Virtualization in Smartphones Using MOSES Algorithm

Sophos Mobile Control User guide for Apple ios. Product version: 2 Document date: December 2011

ipecs Communicator Installation and Operation Guide Please read this manual carefully before operating your set. Retain it for future reference.

Analysis of advanced issues in mobile security in android operating system

Kaspersky Security for Mobile

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,

ForeScout MDM Enterprise

Virtualization. Pradipta De

The ForeScout Difference

Systems Manager Cloud Based Mobile Device Management

big.little Technology Moves Towards Fully Heterogeneous Global Task Scheduling Improving Energy Efficiency and Performance in Mobile Devices

BBM467 Data Intensive ApplicaAons

Performance Measuring in Smartphones Using MOSES Algorithm

Firefox OS Features Guide

Knut Omang Ifi/Oracle 19 Oct, 2015

Virtualization Strategy with Oracle VM and Oracle Linux. Bjorn Naessens

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Boost your VDI Confidence with Monitoring and Load Testing

Getting Started with Tizen SDK : How to develop a Web app. Hong Gyungpyo 洪 競 杓 Samsung Electronics Co., Ltd

Mobile Application Development

Norton Mobile Privacy Notice

Multi-core Programming System Overview

nanohub.org An Overview of Virtualization Techniques

Kaspersky Security 10 for Mobile Implementation Guide

Premium Design Phone with Smartphone Connect

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

Workshop on Android and Applications Development

V3 Storage Architecture Overview and Implications for VDI. May 2016

A Review OnEmployee Monitoring Application Using Android Smartphone s Neha S. Mankar 1, Sweeti M. Shambharkar 2 and Asst. Prof. Priti P.

GUEST OPERATING SYSTEM BASED PERFORMANCE COMPARISON OF VMWARE AND XEN HYPERVISOR

Discovering Computers

Android Basics. Xin Yang

, ACTIVITY AND, SLEEP TRACKING SMARTWATCH

Intermedia Cloud Softphone. User Guide

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

Ways to Use USB in Embedded Systems

Introduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University

MOBILE APPS. QA Testing for mobile applications

Programming the Internet of Things

Guideline on Safe BYOD Management

Kaspersky Security for Business

Introduction to the NI Real-Time Hypervisor

KASPERSKY SECURITY FOR BUSINESS

Transcription:

The Case for Device Namespaces Oren Laadan September 18, 2013 www.cellrox.com aprilzosia

Device Namespaces Roots Based on research at Columbia University: Cells: A Virtual Mobile Smartphone Architecture Authors: Jeremy Andrus, Christoffer Dall, Alex Van t Hof, Oren Laadan, Jason Nieh. Proceedings of the 23 rd Symposium on Operating Systems Principles (SOSP 2011). Cascais, Portugal. October, 2011. 2

Mobile devices have multiple uses - 3

Mobile devices have multiple uses - - the device needs to reflect that. 4

Security Use Case Personal Phone Business Phone 5

Do People Remember? Only download apps from trusted sources, such as reputable app markets. Remember to look at the developer name, reviews, and star ratings. Always check the permissions an app requests. Use common sense to ensure that the permissions an app requests match the features the app provides. Be alert for unusual behavior on your phone. Suspicious behavior could be a sign that your phone is infected. These behaviors may include unusual SMS or network activity. Install a mobile security app for your phone that scans every app you download to ensure it s safe. 6

No, They Don t! Only download apps from trusted sources, such as reputable app markets. Remember to look at the developer name, reviews, and star ratings. Always check the permissions an app requests. Use common sense to ensure that the permissions an app requests match the features the app provides. Be alert for unusual behavior on your phone. Suspicious behavior could be a sign that your phone is infected. These behaviors may include unusual SMS or network activity. Install a mobile security app for your phone that scans every app you download to ensure it s safe. 7

No, They Don t! Only download apps from trusted sources, such as reputable app markets. Remember to look at the developer name, reviews, and star ratings. Always check the permissions an app requests. Use common sense to ensure that the permissions an app requests match the features the app provides. Be alert for unusual behavior on your phone. Suspicious behavior could be a sign that your phone is infected. These behaviors may include unusual SMS or network activity. Install a mobile security app for your phone that scans every app you download to ensure it s safe. 8

User Behavior is the #1 Security Risk Lack of user awareness about security policies Insecure web browsing Insecure Wi-Fi connectivity Lost or stolen mobile devices with corporate data Corrupt app downloaded to mobile devices Lack of security patches from service providers High rate of users changing/upgrading devices 9

More Use Cases Personal Phone Business Phone Children Phone Privacy Phone Secure Phone 10

Mobile Wallets 11

Even More Use Cases Personal Phone Business Phone Children Phone Privacy Phone Secure Phone Social Phone Guest Phone Dev Phone 12

Multi-Persona for Mobile Devices 13

The Usual Suspect Virtualization Every problem in computer science can be solved using another layer of abstraction. 14

Mobile Device Virtualization Typical device Linux kernel Device hardware 15

Nobody Will Notice? Performance Transparent Application Transparent Platform Transparent User Transparent 16

Bare-Metal Virtualization Typical device Virtual Phone Virtual Phone Linux kernel Device hardware Linux kernel Hypervisor Type I Device hardware Linux kernel 17

Bare-Metal (Type-I) Virtualization Suitable for servers standard hardware slow server replace rate strong security model Sub-optimal for mobile devices burden to support devices reduced performance / battery-life sub-optimal use of resources 18

Host-Based Virtualization Typical device Virtual Phone Virtual Phone Linux kernel Linux kernel Linux kernel Hypervisor Type II Device hardware Device hardware 19

Host-Based (Type-II) Virtualization Suitable for desktops rely on host for hardware rely on host for resources rely on host for security Sub-optimal for mobile devices weak security model (can trust host?) reduced performance / battery-life sub-optimal use of resources 20

Operating System Virtualization Typical device Virtual Phone Virtual Phone Linux kernel Namespaces Linux kernel Device hardware Device hardware 23

Operating System Virtualization Namespaces provide a group of processes with the illusion that they are the only processes on the system (LWN article) 24

Operating System Virtualization Challenge 1: hardware diversity plethora of peripherals not virtualized key logical devices not virtualized Challenge 2: interactive usage users interact with one app at a time foreground vs. background apps 25

Hardware Diversity A typical collection of peripherals available on a modern smartphone or tablet: Headset Microphone Speakers (Touch) Screen Power Buttons Telephony Bluetooth GPS WiFi Framebuffer GPU Compass Camera(s) Accelerometer RTC/Alarms 26

Device Namespaces Two roles: Virtualize physical and logical devices, to address hardware diversity Multiplex access to devices and switch contexts to allow interactive usage 27

Device Namespaces HW diversity: traditional virtualization create the illusion that processes interact exclusively with a set of devices hide the fact that other processes interact with the same set of devices Device major/minor (e.g. loop, dm), and device setup and internal state 28

Device Namespaces Interactivity: context-aware virtualization concept of an active namespace, with which the user actually interacts ability to switch namespaces, to allow interacting with multi-namespaces users really interact with one namespace at a time 29

Device Namespaces Namespaces Linux kernel GPU Framebuf Touch Camera(s) Headset Buttons GPS Device hardware 30

Framebuffer: single assignment? VP VP VP Framebuffer Linux kernel 31

Framebuffer: emulated hardware? VP VP VP Emulated Framebuffer Framebuffer Virtual State Linux kernel 32

Framebuffer: device namespaces Foreground Background Background Virtualized Framebuffer Framebuffer RAM Linux kernel 33

Framebuffer: device namespaces Foreground Background Background Virtualized Framebuffer Framebuffer RAM Linux kernel 34

Framebuffer: device namespaces Background Foreground Background Virtualized Framebuffer Framebuffer RAM Linux kernel 35

Experimental Benchmarks CPU (Linpack) Graphics (Neocore) Storage (Quadrant) Web browsing (SunSpider) Networking (custom) 36

Runtime Overhead (Idle) 1.40 1.20 Baseline 1-VP 2-VP 3-VP 4-VP 5-VP 1.00 0.80 0.60 0.40 0.20 0.00 Linpack NeoCore Quadrant I/O Sun Spider Network 37

Runtime Overhead (load) 1.40 1.20 Baseline 1-VP 2-VP 3-VP 4-VP 5-VP 1.00 0.80 0.60 0.40 0.20 0.00 Linpack NeoCore Quadrant I/O Sun Spider Network 38

Power Consumption Overhead 1.40 1.20 1.00 0.80 0.60 0.40 0.20 0.00 Baseline 2-VP 4-VP After 4hrs Music 1-VP 3-VP 5-VP After 12hrs Idle 39

Device Namespaces Patches RFC patch-set posted in containers and lxc-devel mailing lists Includes 8 patches for: input, backlight, LED, framebuffer, some Demo of dual-namespaces and switch between them on Topic at containers mini-conf at LPC tomorrow 40

Summary https://www.github.com/cellrox/devns-patches/wiki Device namespaces bring virtualization to end-user devices. Active vs. non-active namespaces based on natural usage model Native performance (up to ~1% overhead in Vellamo benchmark) RFC patch-set posted in containers list, to be discussed in LPC 41