17
Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security for Smart-Devices

Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Slide title

In CAPITALS

50 pt

Slide subtitle

32 pt

Muhammad Rizwan Asghar

March 12, 2020

OVERVIEW OF ANDROID

Lecture 6

COMPSCI 702

Security for Smart-Devices

Page 2: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

2

WHAT IS ANDROID?

Android is an Operating System (OS) for smartphones

Initially developed by Android Inc.

– Which Google acquired in 2005

Later developed by Google

Open-source

Based on the Linux kernel

SDK was released in November 2007

– For Java

NDK was released in June 2009

– For C and C++

Page 3: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

3

KEY PLAYERS IN THE MOBILE OS MARKET

Source: Global Stats February 2019

Page 4: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

4

ANDROID HISTORY

The Open Handset Alliance (OHA) is for

developing open standards for mobile devices

OHA is a consortium of 84 firms– Google, HTC, Sony, Dell, Motorola, Qualcomm, Samsung,

LG, T-Mobile, Nvidia, and many others

– Link: http://www.openhandsetalliance.com/oha_faq.html

Announced on November 5, 2007

The first Android device was sold in 2008

Page 5: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

5

ANDROID DEVICES

Phone

WearTablet

AutoTV

Page 6: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

6

ANDROID VERSIONS

Source: youtube.com

Pie

2018

2019

Pie

2018

Page 7: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

7

CURRENT ANDROID DISTRIBUTION

Source: android.com

(Data collected on May 7, 2019)

Any versions with less than 0.1%

distribution are not shown

Version Codename API Distribution

2.3.3 -

2.3.7Gingerbread 10 0.3%

4.0.3 -

4.0.4

Ice Cream

Sandwich15 0.3%

4.1.x

Jelly Bean

16 1.2%

4.2.x 17 1.5%

4.3 18 0.5%

4.4 KitKat 19 6.9%

5.0Lollipop

21 3.0%

5.1 22 11.5%

6.0 Marshmallow 23 16.9%

7.0Nougat

24 11.4%

7.1 25 7.8%

8.0Oreo

26 12.9%

8.1 27 15.4%

9 Pie 28 10.4%

Page 8: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

8

ANDROID APPS

The Android development kits are available for

FREE– SDK

– NDK

One can develop and distribute apps

App markets– As of March 10, 2020, the Google Play store has reached

over 2.875 million apps

– 84.3 billion downloads in 2019 (release January 2020)

– Support for regional and third party markets

Page 9: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

9

ANDROID IS FOR FREE

Vendors can download Android for FREE from Google

Download link: http://source.android.com

Vendors range from large enterprises (e.g., Samsung)

to small ones (e.g., small Chinese/Russian firms)

Page 10: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

10

ANDROID FRAGMENTATION

Vendors customise the OS for their devices

– Typically, vendors include their apps

– Some of apps could compromise security/privacy

– E.g., the Samsung app compromises on privileges

– Link: http://randomthoughts.greyhats.it/2013/03/owning-samsung-

phones-for-fun-but-with.html

However, a vendor does not push updates frequently

– Some devices could be some versions behind

– Some vendors stop supporting their devices afterwards

– Link: http://theunderstatement.com/post/11982112928/android-

orphans-visualizing-a-sad-history-of-support

Page 11: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

11

The lack of support can lead to vulnerabilities

Often vendors just ignore vulnerabilities in their

software

Apple does a much better job– One single piece of hardware

– One single software image

ANDROID FRAGMENTATION

PROBLEM

Page 12: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

12

Android is actually a middleware

It sits between a Linux kernel and a set of APIs

Android apps are mainly written in Java– Only Android apps can run on Android

Through Android APIs, apps can access all the

device components– It provides apps a rich set of information

WHAT IS UNDER THE HOOD?

Page 13: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

13

ANDROID ANATOMY

Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver

Shared Memory Driver Binder (IPC) Driver

Power ManagementUSB Driver Keypad Driver WiFi Driver

Audio Drivers

Appl icat ionsHome Dialer

Contacts

SMS/MMS

Email Calendar Media Player Albums

Appl icat ion Framework

IM Browser Camera

Clock

Calculator

…Voice Dial

Alarm

Android RuntimeCore Libraries

Dalvik Virtual Machine

View SystemContent Providers

Resource Manager …

Activity Manager

Package Manager

Libc

Window Manager

Telephony Manager

LibrariesMedia

Framework

Notification Manager

Location Manager

FreeType

SGL SSL

SQLite

WebKit

Surface Manager

OpenGL|ES

Source: Android Anatomy and Physiology, Patrick Brady

Andr o id RuntimeCore Libraries

DalvikVirtual Machine

Page 14: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

14

LINUX KERNEL

Android is built on the Linux kernel– But it is not Linux

No glibc support

Does not include the full set of standard Linux

utilities

Kernel enhancements

Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver

Shared Memory Driver Binder (IPC) Driver

Power ManagementUSB Driver Keypad Driver WiFi Driver

Audio Drivers

Page 15: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

15

WHY LINUX KERNEL?

Great memory and process management

Permissions-based security model

Proven driver model

Support for shared libraries

It is already open-source!

Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver

Shared Memory Driver Binder (IPC) Driver

Power ManagementUSB Driver Keypad Driver WiFi Driver

Audio Drivers

Page 16: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

16

TO BE CONTINUED

See the next lecture

Page 17: Overview of Android - Computer Science€¦ · Slide title In CAPITALS 50 pt Slide subtitle 32 pt Muhammad Rizwan Asghar March 12, 2020 OVERVIEW OF ANDROID Lecture 6 COMPSCI 702 Security

Top right

corner for

field

customer or

partner logotypes.

See Best practice

for example.

Slide title

pt

Slide subtitle

pt

Text

pt

5

pt

17

Questions?

Thanks for your attention!