android mobil platformunda kullanıcı kişisel veri güvenliği

43
Zana iLHAN Zana iLHAN Fen Bilimleri Enstitüsü Fen Bilimleri Enstitüsü Okan Üniversitesi Okan Üniversitesi

Upload: rossa

Post on 14-Feb-2016

53 views

Category:

Documents


5 download

DESCRIPTION

Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği. Zana iLHAN Fen Bilimleri Enstitüsü Okan Üniversitesi. Yol Haritası. Mobil Platformlar Güvenlik Açıkları Kullanıcı Verileri Android Mobil Platformu Problem Tanımı PIPSU Çözüm Önerisi PIPSU Bileşenleri PIPSU Mimarisi - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Zana iLHANZana iLHANFen Bilimleri EnstitüsüFen Bilimleri Enstitüsü

Okan ÜniversitesiOkan Üniversitesi

Page 2: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Mobil Platformlar ◦ Güvenlik Açıkları◦ Kullanıcı Verileri

Android Mobil Platformu Problem Tanımı PIPSU Çözüm Önerisi

◦ PIPSU Bileşenleri◦ PIPSU Mimarisi◦ PIPSU Katmanları

PIPSU’nun Gerçeklenmesi Tezin katkısı & Tartışma İleride Yapılabilecekler

Page 3: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PC Dizüstü Tablet PDA & Akıllı Telefon

Ultra Mobile PC

SubnotebookNetbook

Yeni Kategoriler

• Kişisel Bilgisayar Tayfının Evrimi• Eskinin berrak kategorizayonu:

•Sabit Hesaplama(PC) •Taşınabilir Hesaplama (Dizüstü)

• Yeni dönemin özellikleri•Taşınabilir hesaplama donanımı Çeşitlendi• Satılan donanımın çoğu taşınabilir donanımdan•Bunlar son kullanıcı tarafından beraberce kullanılıyor (tablet + ebook reader + Android cep telefonu)

•2008’de dünya genelinde dizüstü satışları PC satışlarını geçti.

Page 4: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Büyük pazar payına sahip 6 mobil platform bulunmaktadır.

Page 5: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

SMS, E-Posta istemcileri Wi/Fi, Bluetooth, Infra-red, USB Web tarayıcılar 3. Parti uygulamalar SDK tasarım yanlışlıkları Platform tasarım yanlışlıkları

Page 6: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIM(Personel Information Management) aracılığı ile yönetilen veriler: ◦ Kontaklar◦ Takvim verileri◦ Notlar◦ SMS verileri ve E-Posta verileri

Multi-Medya Verileri: ◦ Döküman◦ Resim◦ Müzik ve Video verileri

Page 7: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Android bir Linux dağıtımımıdır? Açık kaynak kodlu mudur? Mobil cihaz sağlayıcıları tarafından çıkan

Android tabanlı işletim sistemleri ile Google Android arasında bir fark varmıdır?

Page 9: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Diğer standart “Stack” tabanlı Sanal makinelerin tersine “Registry” tabanlıdır.

Sun JVM ve OpenJVM den farklı olarak Just-in-debugger a sahiptir.

Java bytecodelarını dx aracı ile .dex (dalvik executable) a dönüştürür.

Page 10: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği
Page 11: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

GPS lokasyon bilgisini edinebilme

IP adres, Wi/Fi vb internet erişim bilgilerine erişebilme

E-Mail, Kontak vb bilgilere erişebilme

SMS ve Telefon rehber bilgilerine erişebilme

Page 12: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Kurulu uygulama listesi, kullanılan izinler(application permission), kullanılan ortak UID ler ve versiyon bilgilerini edinebilme

RAM, CPU, bootloder ve kernel gibi çalışılan sisteme dair bilgiler uygulamalar tarafından edinilebilmektedir.

Page 13: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Uygulama

Android Framework

Uygulama Verisi

Dosya Sistemi

Uygulama Verisi

Uygulama Verisi

1 2

1

2

Android Veri Manipülasyonu API

Sistem İsteği

Page 14: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Kavramsal Konum:◦ Uygulamanın kendi veritabanı(SQLite DB) ◦ Android Shared Preference◦ PIM veritabanı(Telefon Rehberi, SMS, Takvim vb.)

Fiziksel Konum:◦ Dahili Veri Alanları

Flash Memory (SSD) EMMC Anakartın içsel ROM’u

◦ Harici Veri Alanları SD Card Ağ Bağlatısı Erişimli Veri Alanı(NAS: Network Attached

Storage)

Page 15: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Yanlış API kullanımı (Örnek: Shared Preref’in amaç dışı kritik bilgi için kullanılması)

ADB (Android Debug Bridge) erişim kanalı◦ PC üzerinden Linux Terminali benzeri bir kabuk

arayüzü açılıyor. İşletim sistemi hiyerarşisinin standart

olmaması: Dizin ve dosya erişim hakları iyi ayarlanmamış olması

Kötü niyetli ve/veya yanlış çalışan uygulamalardan kaynaklı veri hırsızlığı olmakta

Page 16: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Henüz yeterince olgunlaşamamış ve standartlaşamamış olan mobil platformlar, iş ve gündelik hayatımızda ürettiğimiz verilerin çoğuna sahiptirler.

Hayatımızda büyük yere sahip olan mobil aygıtları, büyük oranda kullanıcı kişisel verileri barındırmaktadır.

Mevcut kullanılmakta olan mobil platformların kullanıcı kişisel verilerine dair bir çok güvenlik açığına sahiptirler.

Yeni nesil mobil platformlarda kullanıcı kişisel verilerinin güvenliğinin sağlanması

Page 17: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Kirin [15]

Saint [17]

Virtualized In-Cloud Security Services for Mobile Devices

[18]

Yetki Etiket Modeli

Language based security on Android[13]

SCanDroid [14]

Çalışma Zamanı Uygulama Takibi

Ağ Tabanlı

Page 18: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

İngilizce : Platform Isolated Private Security for User. Anlamına gelmekte olup, İngilizce anlam cümlesinin kelimelerinin baş harflerinin birleşiminden oluşmaktadır.

Türkçe : Kullanıcı Kişisel Verilerinde Platform Bağımsız Güvenlik

Page 19: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Kullanıcı kişisel verileri için güvenlik çözümü Mobil platform bağımsız Bulut bilişim uyumlu(Cloud Computing

Compatible) Sunum, servis ve depolama katmanlarını bir

arada barındıran çözüm. SyncML protokol standart’ı ile farklı bulut

sistemleriyle çalışabilme. Aynı hesap altında çoklu cihaz desteği

Page 20: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Android İşletim Sistemi

InternetPIPSU-C

PIPSU-L Uygulamasına Sahip Mobil Cihaz

SyncML Destekli Bulut Veri Servisi

Page 21: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU-L Uygulama A Uygulama B

İçsel Uygulama C

İçsel Uygulama D

İçsel Uygulama E

Android Framework(Uygulama Çatısı)

Dalvik PIPSU-L Dalvik A Dalvik BDalvik C Dalvik D Dalvik E

Android Çekirdek Katmanı

Page 22: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Soyut

Launcher ve GUI Bileşenleri

GUI Kontrol Bileşenleri

İletişim ve Sistem Takip Bileşeni

Kullanıcı Kişisel Veri Takip Modülleri

İstemci İletişim Kütüphanesi

Kullanıcı Kişisel Veri Modülleri SapiSyncML

Kullanıcı Kişisel Veri Depolama Modülü Konfigurasyon Saklama Modülü

SunumDepolam

aKontrol

Platform Tabanlı Olay Tetiklenmesi

Kullanıcı Tabanlı Olay Tetiklenmesi

Page 23: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Soyut

Launcher ve GUI Bileşenleri

GUI Kontrol Bileşenleri

İletişim ve Sistem Takip Bileşeni

Kullanıcı Kişisel Veri Takip Modülleri

İstemci İletişim Kütüphanesi

Kullanıcı Kişisel Veri Modülleri SapiSyncML

Kullanıcı Kişisel Veri Depolama Modülü Konfigurasyon Saklama Modülü

SunumDepolam

aKontrol

Page 24: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU bir kullanıcı bilgisini soyutlamak için iki ana aktör ile anlamlılandırmaya çalışır.

Veri Kaynağı(Source

)Veri

Takipcisi(Tracker)

Veri Yönetim

Soyut Veri

Page 25: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU Mobil Platformda bulunan kullanıcı verilerini 2 ana tipte soyutlar.

Kişisel Veri Yönetimi(PIM)

Multi Medya Verileri

PIPSU-L Kullanıcı Verileri

Page 26: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Rehber Verileri(Kontak,

vCard vb.)Takvim Verileri SMS Notlar(Text

Veri)

Kişisel Veri Yönetimi(PIM)

Page 27: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Resimler

Multi Medya

Muzikler Videolar Binary Veri(Dökümanlar)

Page 28: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Soyut

Launcher ve GUI Bileşenleri

GUI Kontrol Bileşenleri

İletişim ve Sistem Takip Bileşeni

Kullanıcı Kişisel Veri Takip Modülleri

İstemci İletişim Kütüphanesi

Kullanıcı Kişisel Veri Modülleri SapiSyncML

Kullanıcı Kişisel Veri Depolama Modülü Konfigurasyon Saklama Modülü

SunumDepolam

aKontrol

Page 29: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Anahtar Değer Değişim

Anahtar Değer Değişim

Anahtar Değer Değişim...

.

.

.

.

.

.

Content://pipsu/pim/sms?anahtar=XYGVG67X

Anahtar – Deger (Key Value) Depolama Modülüİndeks Değer

Anahtar = hash(değer)

Tracker

Anahtarlar

Page 30: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

56HJ7987 PNG,364x26 345987866454354343

67KLHG8MIME:Text,ASDFGDFG, From,

To4567887986

5954

454HJK0 Değer Değişim...

.

.

.

.

.

.

İndeks Değer

Page 31: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Soyut

Launcher ve GUI Bileşenleri

GUI Kontrol Bileşenleri

İletişim ve Sistem Takip Bileşeni

Kullanıcı Kişisel Veri Takip Modülleri

İstemci İletişim Kütüphanesi

Kullanıcı Kişisel Veri Modülleri SapiSyncML

Kullanıcı Kişisel Veri Depolama Modülü Konfigurasyon Saklama Modülü

SunumDepolam

aKontrol

Page 32: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Launcher ve GUI BileşenleriLauncher Widget

BileşenleriActivity

Bileşenleri

Launcherlar Android platformu için özel yetenekler ve göreve sahip Android uygulamalarıdır.

Page 33: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Soyut

Launcher ve GUI Bileşenleri

GUI Kontrol Bileşenleri

İletişim ve Sistem Takip Bileşeni

Kullanıcı Kişisel Veri Takip Modülleri

İstemci İletişim Kütüphanesi

Kullanıcı Kişisel Veri Modülleri SapiSyncML

Kullanıcı Kişisel Veri Depolama Modülü Konfigurasyon Saklama Modülü

SunumDepolam

aKontrol

Page 34: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Bu katman, PIPSU-L’nin çalıştığı platformda bulunan kullanıcı kişisel bilgilerinin, PIPSU tarafından sağlanan güvenli depolama alanlarına taşınmasını sağlamaktadır.

Page 35: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Kendi UID’si ile iş yapıyor. Kendi dizinlerine sadece kendisi erişebiliyor.

Üç katmanlı uçtan uca bir çözüm, verilerin yaratılması, değiştirilmesi, silinmesi, yedeklenmesi hep aynı süreç (process) tarafından yönlendiriliyor.

Kullanıcı kişisel bilgilerini, sahip olduğu dahili soyutlama kütüphanelerini kullanarak mobil platform bağımsız formlarda saklıyor/kullanıyor.

Page 36: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Android Framework

PIPSU Olay Değiş tokuşu (User Event Exchange)

Dosya Sistemi (Linux Çekirdek)

Dalvik

Diğer Uygulama VerileriPIPSU Verileri

Tek sistem kullanıcısıPIPSU Uid

Uygulama ve Sistem Arayüzleri

PIPSU API(Tek Yönlü)

Page 37: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Android Framework

PIPSU

Dosya Sistemi

Dalvik

Diğer Uygulama VerileriPIPSU Verileri

Tek sistem kullanıcısıPIPSU Uid

Zararlı Uygulama

Öntanımlı olarak tüm 3. parti uygulamalar aynı Uid’yi alır.Zararlı uygulama sistemden PIPSU’nun UiD’sini alamazPIPSU verilerine ulaşması çekirdekçe engellenirBu durum kurulum esnasında kullanıcının vereceği yetkilerin genişliği ile değişmez.

X

Page 38: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Lokasyon 2

SyncML Destekli Bulut Servisleri

InternetYüksek Devamlılık (HA)

LBPIPSU-L

PIPSU-L

Yük Dağıtımı

Servis HaberleşmesiServis Haberleşmesi

Yüksek Devamlılık (HA)

SyncML Destekli Bulut Servisleri

Lokasyon 1

Page 39: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

DM Veri Kaynak Yönetimi

Servlet Container EJB3

Sunucu Modülleri

Üst Düzey Bileşenler

HA L

BSyncML

IBBİstek Yönetimi

PUSH

HTTP/S CTP STPTCP UDP

Sapi

İletişim Kütüphaneleri

Temel Servis Bileşenleri

Page 40: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU Mimari tasarım

Launcher +

Funambol

apk uzantılı, yüklenebilir Android Uygulaması

Page 41: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

Mobil platformlarda bulunan güvenlik probleminin analizi

“Kişisel veri güvenliği” problem tanımı Platform seçimi ve Android’in güvenlik boyutuyla

mimarisel incelenmesi Platform bağımsız kişisel veri güvenliği çözüm

mimarisinin geliştirilmesi(PIPSU) PIPSU implementasyonu için gerekli analiz

◦ Açık kaynak kodlu projelerin incelenmesi ◦ Lancher+ ve Funambol mimarilerinin detaylı incelenmesi

PIPSU Android platform uygulamasının geliştirilmesi.

Page 42: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU,◦ Kullanıcı kişisel verilerini, yabancı uygulamalardan

izole eder.◦ Kullanıcı kişisel veri devamlılığını sağlar.◦ Linux çekirdek seviyesindeki güvenlik modelini

uygulama seviyesine taşır.◦ Kullanıcının günlük alışkanlıklarını değiştirmeden

veri güvenliği sağlar.

Page 43: Android Mobil Platformunda Kullanıcı Kişisel Veri Güvenliği

PIPSU uygulaması mobil marketlere sunulması PIPSU projesine özel SyncML tabanlı bulut

servislerinin gerçeklenmesi PIPSU-L içerisinde yerel olarak tutulan PIM

kategorilerini arttırmak PIPSU akranları arasında(P2P) DLNA veri paylaşımı Literatür taraması kısmının genişletilip “Android

platformlarda kişisel veri güvenliği yaklaşımları” başlıklı derleme(Survey) yayınının oluşturulması.

PIPSUnun diğer önemli mobil platformlara taşınması.

3. parti uygulamaların PIPSU altyapısını kullanabilmesi