ISA 673 Operating Systems Security Exploring the Android Platform.

Slides:



Advertisements
Similar presentations
© S.J. Coles 2006 Usability WS, NeSC Jan 06 Experiences in deploying a useable Grid-enabled service for the National Crystallography Service Simon J. Coles.
Advertisements

Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
LYU9903 QoS Schemes in Wireless Networks Ho Pun Mo & Ng Maggie Supervised by Prof. Lyu R.T. Michael 6 December, 1999.
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
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.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Measuring Performance Chapter 12 CSE807. Performance Measurement To assist in guaranteeing Service Level Agreements For capacity planning For troubleshooting.
Axis Intelligent Video Intelligence where you need it.
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.
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.
Web Development Process Description
Control Over WirelessHART Network S. Han, X. Zhu, Al Mok University of Texas at Austin M. Nixon, T. Blevins, D. Chen Emerson Process Management.
Reporting and Build Statistics Using Business Intelligence By Naga Sowjanya Karumuri Build Team, VMware, Cambridge Summer Internship 2008.
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.
Classroom Collaborator Brandon Reagen, Matthew Ng, Runfeng Chen, Robert Connelly Faculty Advisor: Prof. Tessier Department of Electrical and Computer Engineering.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 10: File-System Interface.
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.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 6 System Calls OS System.
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.
Android Security Auditing Slides and projects at samsclass.info.
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.
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,
ISA 673 Operating Systems Security Exploring the Android Platform.
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
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
Human-Operator Monitoring System
GWE Core Grid Wizard Enterprise (
Lecture 24 Virtual Machine Monitors
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.
How to Remotely View Kestrel Data using TeamViewer©
Chapter 2: Operating-System Structures
Presentation transcript:

ISA 673 Operating Systems Security Exploring the Android Platform

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 12/2/20152ISA673 - Operating Systems Security

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 12/2/2015ISA673 - Operating Systems Security3

System Approach 12/2/2015ISA673 - Operating Systems Security4 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

12/2/2015ISA673 - Operating Systems Security5 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

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 12/2/2015ISA673 - Operating Systems Security6

Development Process 12/2/20157ISA673 - Operating Systems Security Instrument Kernel Drivers Collect Battery Usage Data Analyze Data/Identify Trends Modify Kernel Scheduler

Desktop PCAndroid Phone System Architecture 12/2/2015ISA673 - 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 12/2/2015ISA673 - 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 12/2/2015ISA673 - 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) 12/2/2015ISA673 - 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); } 12/2/2015ISA673 - Operating Systems Security12

Statistical Analysis How much battery is used for each device? Collect device usage per process at a time interval Execute Multiple Regression 12/2/2015ISA673 - Operating Systems Security13

Raw Battery Data 12/2/2015ISA673 - Operating Systems Security14

Resource Usage Stats 12/2/2015ISA673 - Operating Systems Security15

Power Consumption Per Resource 12/2/2015ISA673 - Operating Systems Security16

Multiple Regression Y = a + b1*X1 + b2*X bn * Xn where Y : Battery Usage N: Number of devices bi: Coefficient of each device Xi: usage(process time) of device Xi 12/2/2015ISA673 - Operating Systems Security17

Output Coefficients Intercept Audio Wifi /2/2015ISA673 - Operating Systems Security18

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 12/2/2015ISA673 - Operating Systems Security20

Project Shortcomings 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 12/2/2015ISA673 - Operating Systems Security21

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 12/2/2015ISA673 - Operating Systems Security22