ISA 673 Operating Systems Security Exploring the Android Platform.

Slides:



Advertisements
Similar presentations
Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
Advertisements

Test Case Management and Results Tracking System October 2008 D E L I V E R I N G Q U A L I T Y (Short Version)
Guard4Life Advanced GPS
1 SOFTWARE TESTING Przygotował: Marcin Lubawski. 2 Testing Process AnalyseDesignMaintainBuildTestInstal Software testing strategies Verification Validation.
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
CS 345 Computer System Overview
Experience, Technology and Focus in Mid Market CRM Soffront Asset management: An Overview.
Operating System (O.S.) Objectives & Functions
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
I/O Devices and Drivers
Measuring Performance Chapter 12 CSE807. Performance Measurement To assist in guaranteeing Service Level Agreements For capacity planning For troubleshooting.
Remote Surveillance System Presented by: Robarin Holdings Limited Telephone: Facsimile:
Energy Model for Multiprocess Applications Texas Tech University.
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
Windows Server 2008 Chapter 11 Last Update
Logitrac Advanced GPS THE FUTURE OF GPS TECHNOLOGY.
Mobile Inspections Rebecca Wenner Kansas DHE Guy Outred Windsor Solutions.
MD-EXPERT Designed with doctors for doctors. One solution for multiple platforms
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
Control Over WirelessHART Network S. Han, X. Zhu, Al Mok University of Texas at Austin M. Nixon, T. Blevins, D. Chen Emerson Process Management.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: System Structures.
1 Operating System Overview Chapter 2 Advanced Operating System.
University of Maryland parseThat: A Robust Arbitrary-Binary Tester for Dyninst Ray Chen.
The Future of gps technology
Classroom Collaborator Brandon Reagen, Matthew Ng, Runfeng Chen, Robert Connelly Faculty Advisor: Prof. Tessier Department of Electrical and Computer Engineering.
Virtualization Concepts Presented by: Mariano Diaz.
CASE STUDY 1: Linux and Android Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Xen I/O Overview. Xen is a popular open-source x86 virtual machine monitor – full-virtualization – para-virtualization para-virtualization as a more efficient.
Architecture Support for OS CSCI 444/544 Operating Systems Fall 2008.
Presented by: Sanketh Beerabbi University of Central Florida COP Cloud Computing.
GEOREMINDERS ANDROID APPLICATION BY: ADRIENNE KECK.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Android Security Application Sean Austin, Diana Mazzola and James Kolb.
Rider/Drive r Major Modules Cloud Personal Data Routing Data Phone Interfaces Browser Interface.
April 2000Dr Milan Simic1 Network Operating Systems Windows NT.
QuikTrac 5.5, a validated Motorola Software Solution, allows you to take your Host ERP screens and extend them out to fixed or mobile devices including.
Ihr Logo Operating Systems Internals & Design Principles Fifth Edition William Stallings Chapter 2 (Part II) Operating System Overview.
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
Processes and Process Control 1. Processes and Process Control 2. Definitions of a Process 3. Systems state vs. Process State 4. A 2 State Process Model.
Midterm Meeting Pete Bohman, Adam Kunk, Erik Shaw.
ISA 673 Operating Systems Security Exploring the Android Platform.
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.
Mantid Stakeholder Review Nick Draper 01/11/2007.
Discount Tracking Solutions THE FUTURE OF GPS TRACKING IS HERE!
Full and Para Virtualization
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
It consists of two parts: collection of files – stores related data directory structure – organizes & provides information Some file systems may have.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Class Presentation Pete Bohman, Adam Kunk, Erik Shaw (ONL)
VMM Based Rootkit Detection on Android
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
LabSpeed ™ Data Management software LabSpeed ™ Data Management Software.
Lecture 7: Media Player Topics: Media Player, Async prepare Date: Mar 3, 2016.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
CT101: Computing Systems Introduction to Operating Systems.
California BAR-OIS I/M Solutions 2013 Schaumburg, IL May, 2013.
Current Research Projects
WELCOME Mobile Applications Testing
GWE Core Grid Wizard Enterprise (
Lecture 24 Virtual Machine Monitors
Operating System Structure
CompSci 725 Presentation by Siu Cho Jun, William.
Fastdroid Produced by : Firas Abdalhaq Mohammad Amour Supervised by : Dr. Raed Alqadi.
B.Ramamurthy Chapter 2 : Appendix
Level 3 Extended Diploma Unit 13 Computer Systems Architecture
Chapter 2: Operating-System Structures
Yooba File Sync: A Microsoft Office 365 Add-In That Syncs Sales Content in SharePoint Online to Yooba’s Sales Performance Management Solution OFFICE 365.
Chapter 2: Operating-System Structures
Presentation transcript:

ISA 673 Operating Systems Security Exploring the Android Platform

The Problem Resource monitoring mostly done in user- mode – Relies on system services and system calls for data – Kernel-mode malware can easily subvert it Malware power usage largely unstudied – Studies limited – Full system instrumentation not available 1/9/2016ISA673 - Operating Systems Security2

Battery Utilization Monitoring Project Goals – Track usage by resource and process – Modify resource scheduling to ensure fairness Approach – Low-level (kernel level) – High enough to associate processes to resource requests 1/9/20163ISA673 - Operating Systems Security

Development Process 1/9/20164ISA673 - Operating Systems Security Instrument Kernel Drivers Collect Battery Usage Data Analyze Data/Identify Trends Modify Kernel Scheduler

System Approach 1/9/2016ISA673 - Operating Systems Security5 Kernel Instrumentation Services Table Hooking Wake Lock Monitoring Driver Modification Other (Undiscovered ) Data Collection Kernel-mode Collection Module Procfs Bridge to User-mode Upload to PC for Analysis Data Analysis Statistical Analysis Charts & Graphs Identify Trends Modify Scheduler Real-time Power Monitor Process Queuing Changes Security vs. Battery Life Trade-offs

Design Philosophy System changes are dangerous without data Iterative approach allows for intelligent refinement Modular design for flexibility Analysis built into the design – Demonstrates success/failure of system changes 1/9/2016ISA673 - Operating Systems Security6

1/9/2016ISA673 - Operating Systems Security7 Progress to Date Kernel Instrumentation Services Table Hooking Wake Lock Monitoring Driver Modification Other (Undiscovered) Data Collection Kernel-mode Collection Module Procfs Bridge to User-mode Upload to PC for Analysis Data Analysis Statistical Analysis Charts & Graphs Identify Trends Modify Scheduler Real-time Power Monitor Process Queuing Changes Security vs. Battery Life Trade-offs

Desktop PCAndroid Phone System Architecture 1/9/2016ISA673 - Operating Systems Security8 User Mode Kernel Mode Batterymine Audio Video WiFi Bluetooth 3G Batterymine Daemon proc_fs Data Collection Analysis Engine Scheduling Data

Kernel Module Records per-process usage of resources Records per-interval usage of battery Writes tab-separated data to proc_fs Interface allows easy instrumentation of kernel Supports multiple instrumentation strategies 1/9/2016ISA673 - Operating Systems Security9

Instrumentation Strategy Build Batterymine into Android kernel Modify code for most-used drivers Attribute device usage to process where possible Attribute to “Idle” otherwise. Pros: Simple, allows for iterative development Cons: – Requires intimate knowledge of driver code – Hardware dependent – Process ID not always available 1/9/2016ISA673 - Operating Systems Security10

Module Interface enum power_consumer_type { idle = 0, wifi, bluetooth, audio, threeG, video }; void bm_logDeviceUsage(enum power_consumer_type devType, struct timespec usageTime); void bm_logProcDeviceUsage(enum power_consumer_type devType, pid_t processID, struct timespec usageTime); #define BM_GET_START_TIME struct timespec ts = current_kernel_time() #define BM_GET_DIFF_TIME timespec_sub(current_kernel_time(), ts) 1/9/2016ISA673 - Operating Systems Security11

Sample Instrumentation void myAudioDeviceFunc(char *szPointer) { BM_GET_START_TIME(); if(NULL != szPointer) { bm_logDeviceUsage(audio, BM_GET_DIFF_TIME); return; } //...driver code... bm_logDeviceUsage(audio, BM_GET_DIFF_TIME); } 1/9/2016ISA673 - Operating Systems Security12

Statistical Analysis Problem Approach Multiple Regression Output 1/9/2016ISA673 - Operating Systems Security13

Problem We need to figure it out how much battery is used for each device. 1/9/2016ISA673 - Operating Systems Security14

Approach Collect the device usage data for each process for every time interval. For each time interval, device usage is collected with battery reduction. Execute Multiple Regression 1/9/2016ISA673 - Operating Systems Security15

Multiple Regression Y = a + b 1 *X 1 + b 2 *X b n * X n where Y : Battery Usage N: Number of devices b i : Coefficient of each device X i : usage(process time) of device X i 1/9/2016ISA673 - Operating Systems Security16

Output 1/9/2016ISA673 - Operating Systems Security17 Coefficients Intercept Audio Wifi

Wifi Output

Project Successes Wins – Complete data collection and analysis engine Supports any instrumentation strategy Capable of comparing/contrasting instrumentation techniques – Partial instrumentation of kernel drivers Real-time data collection Minimal driver code change – Gained knowledge of kernel architecture 1/9/2016ISA673 - Operating Systems Security19

Project Failures Picked infeasible approach to kernel instrumentation – Requires too many driver changes – Requires intimate knowledge of each driver – Hardware dependent Cannot validate analysis – Did not collect enough data Have not approached scheduler changes – Last step in process 1/9/2016ISA673 - Operating Systems Security20

How to Find More Info. Project hosted on Google Code – Code – Subversion support – Full source of modified kernel Wiki – Build and Install instructions – Culmination of research Downloads – Latest build of binaries – Slides 1/9/2016ISA673 - Operating Systems Security21