Title: Android Mobil Platformunda Kullanici Kisisel Veri G
1Android Mobil Platformunda Kullanici Kisisel Veri
Güvenligi
Zana iLHAN Fen Bilimleri Enstitüsü Okan
Üniversitesi
2Yol Haritasi
- Mobil Platformlar
- Güvenlik Açiklari
- Kullanici Verileri
- Android Mobil Platformu
- Problem Tanimi
- PIPSU Çözüm Önerisi
- PIPSU Bilesenleri
- PIPSU Mimarisi
- PIPSU Katmanlari
- PIPSUnun Gerçeklenmesi
- Tezin katkisi Tartisma
- Ileride Yapilabilecekler
3Tasinabilir Hesaplama
PC
Dizüstü
Tablet
PDA Akilli Telefon
- Kisisel Bilgisayar Tayfinin Evrimi
- Eskinin berrak kategorizayonu
- Sabit Hesaplama(PC)
- Tasinabilir Hesaplama (Dizüstü)
- Yeni dönemin özellikleri
- Tasinabilir hesaplama donanimi Çesitlendi
- Satilan donanimin çogu tasinabilir donanimdan
- Bunlar son kullanici tarafindan beraberce
kullaniliyor (tablet ebook reader Android cep
telefonu) - 2008de dünya genelinde dizüstü satislari PC
satislarini geçti.
Yeni Kategoriler
Ultra Mobile PC
Netbook
Subnotebook
4Ekim - 2011 Mobil Platform Pazar Paylari
- Büyük pazar payina sahip 6 mobil platform
bulunmaktadir.
5Güvenlik Açiklari
- SMS, E-Posta istemcileri
- Wi/Fi, Bluetooth, Infra-red, USB
- Web tarayicilar
- 3. Parti uygulamalar
- SDK tasarim yanlisliklari
- Platform tasarim yanlisliklari
6Kullanici Verileri
- PIM(Personel Information Management) araciligi
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
7Android Nedir?
- Android bir Linux dagitimimidir?
- Açik kaynak kodlu mudur?
- Mobil cihaz saglayicilari tarafindan çikan
Android tabanli isletim sistemleri ile Google
Android arasinda bir fark varmidir?
8Android Katmanli Mimari
9Dalvik Nedir?
- Diger standart Stack tabanli Sanal makinelerin
tersine Registry tabanlidir. - Sun JVM ve OpenJVM den farkli olarak
Just-in-debugger a sahiptir. - Java bytecodelarini dx araci ile .dex (dalvik
executable) a dönüstürür.
10Uçtan Uca Örnek Sistem Istek Hiyerarsisi
11Android Mobil Platformunda bir Uygulamanin
yapabildikleri -1
- GPS lokasyon bilgisini edinebilme
- IP adres, Wi/Fi vb internet erisim bilgilerine
erisebilme - E-Mail, Kontak vb bilgilere erisebilme
- SMS ve Telefon rehber bilgilerine erisebilme
12Android Mobil Platformunda bir Uygulamanin
yapabildikleri -2
- Kurulu uygulama listesi, kullanilan
izinler(application permission), kullanilan ortak
UID ler ve versiyon bilgilerini edinebilme - RAM, CPU, bootloder ve kernel gibi çalisilan
sisteme dair bilgiler uygulamalar tarafindan
edinilebilmektedir.
13Android Uygulama Veri Kullanim Modeli
Android Veri Manipülasyonu API
1
Uygulama
Sistem Istegi
2
2
1
Android Framework
Uygulama Verisi
Uygulama Verisi
Uygulama Verisi
Dosya Sistemi
14Android Uygulama Verileri için Aday Konumlar
- Kavramsal Konum
- Uygulamanin kendi veritabani(SQLite DB)
- Android Shared Preference
- PIM veritabani(Telefon Rehberi, SMS, Takvim vb.)
- Fiziksel Konum
- Dahili Veri Alanlari
- Flash Memory (SSD)
- EMMC
- Anakartin içsel ROMu
- Harici Veri Alanlari
- SD Card
- Ag Baglatisi Erisimli Veri Alani(NAS Network
Attached Storage)
15Uygulama Verilerinin Maruz Kaldigi Açiklar
- Yanlis API kullanimi (Örnek Shared Prerefin
amaç disi kritik bilgi için kullanilmasi) - ADB (Android Debug Bridge) erisim kanali
- PC üzerinden Linux Terminali benzeri bir kabuk
arayüzü açiliyor. - Isletim sistemi hiyerarsisinin standart olmamasi
Dizin ve dosya erisim haklari iyi ayarlanmamis
olmasi - Kötü niyetli ve/veya yanlis çalisan
uygulamalardan kaynakli veri hirsizligi olmakta
16Problem Tanimi
- Henüz yeterince olgunlasamamis ve
standartlasamamis olan mobil platformlar, is ve
gündelik hayatimizda ürettigimiz verilerin çoguna
sahiptirler. - Hayatimizda büyük yere sahip olan mobil
aygitlari, büyük oranda kullanici kisisel
verileri barindirmaktadir. - Mevcut kullanilmakta olan mobil platformlarin
kullanici kisisel verilerine dair bir çok
güvenlik açigina sahiptirler.
Yeni nesil mobil platformlarda kullanici kisisel
verilerinin güvenliginin saglanmasi
17Yapilan Akademik Çalismalar
Yetki Etiket Modeli
Kirin 15
Saint 17
Ag Tabanli
Virtualized In-Cloud Security Services for Mobile
Devices 18
18Önerilen Çözüm PIPSU
- Ingilizce Platform Isolated Private Security
for User. Anlamina gelmekte olup, Ingilizce anlam
cümlesinin kelimelerinin bas harflerinin
birlesiminden olusmaktadir. - Türkçe Kullanici Kisisel Verilerinde Platform
Bagimsiz Güvenlik
19PIPSU Özellikleri
- Kullanici kisisel verileri için güvenlik çözümü
- Mobil platform bagimsiz
- Bulut bilisim uyumlu(Cloud Computing Compatible)
- Sunum, servis ve depolama katmanlarini bir arada
barindiran çözüm. - SyncML protokol standarti ile farkli bulut
sistemleriyle çalisabilme. - Ayni hesap altinda çoklu cihaz destegi
20PIPSU Üst Düzey Mimari
SyncML Destekli Bulut Veri Servisi
Internet
PIPSU-C
Android Isletim Sistemi
PIPSU-L Uygulamasina Sahip Mobil Cihaz
21Android Platformunda PIPSU-L
PIPSU-L
Uygulama A
Uygulama B
Içsel Uygulama C
Içsel Uygulama D
Içsel Uygulama E
Android Framework(Uygulama Çatisi)
Dalvik PIPSU-L
Dalvik A
Dalvik B
Dalvik C
Dalvik D
Dalvik E
Android Çekirdek Katmani
22PIPSU-L Katmanli Mimari
Kullanici Tabanli Olay Tetiklenmesi
Launcher ve GUI Bilesenleri
Sunum
GUI Kontrol Bilesenleri
Iletisim ve Sistem Takip Bileseni
Kullanici Kisisel Veri Takip Modülleri
Kontrol
Kullanici Kisisel Veri Modülleri
Sapi
SyncML
Soyut
Istemci Iletisim Kütüphanesi
Depolama
Kullanici Kisisel Veri Depolama Modülü
Konfigurasyon Saklama Modülü
Platform Tabanli Olay Tetiklenmesi
23Launcher ve GUI Bilesenleri
Sunum
GUI Kontrol Bilesenleri
Iletisim ve Sistem Takip Bileseni
Kullanici Kisisel Veri Takip Modülleri
Kontrol
Kullanici Kisisel Veri Modülleri
Sapi
SyncML
Soyut
Istemci Iletisim Kütüphanesi
Depolama
Kullanici Kisisel Veri Depolama Modülü
Konfigurasyon Saklama Modülü
24PIPSU-L Soyutlama Katmani
- PIPSU bir kullanici bilgisini soyutlamak için iki
ana aktör ile anlamlilandirmaya çalisir.
Veri Yönetim
Veri Kaynagi(Source)
Veri Takipcisi(Tracker)
Soyut Veri
25PIPSU-L Soyutlama Veri Türleri
- PIPSU Mobil Platformda bulunan kullanici
verilerini 2 ana tipte soyutlar.
Kisisel Veri Yönetimi(PIM)
Multi Medya Verileri
PIPSU-L Kullanici Verileri
26Kisisel Veri Yönetimi(PIM- Personel Information
Management)
Kisisel Veri Yönetimi(PIM)
Rehber Verileri(Kontak, vCard vb.)
Takvim Verileri
SMS
Notlar(Text Veri)
27Multi Medya Tipi Kullanici Verileri
Multi Medya
Resimler
Muzikler
Videolar
Binary Veri(Dökümanlar)
28Launcher ve GUI Bilesenleri
Sunum
GUI Kontrol Bilesenleri
Iletisim ve Sistem Takip Bileseni
Kullanici Kisisel Veri Takip Modülleri
Kontrol
Kullanici Kisisel Veri Modülleri
Sapi
SyncML
Soyut
Istemci Iletisim Kütüphanesi
Depolama
Kullanici Kisisel Veri Depolama Modülü
Konfigurasyon Saklama Modülü
29PIPSU-L Depolama Modülü
Anahtar Deger (Key Value) Depolama Modülü
Indeks
Deger
Anahtar
Deger
Degisim
Anahtar hash(deger)
Anahtar
Deger
Degisim
Anahtar
Deger
Degisim
. . .
. . .
. . .
Tracker
Anahtarlar
Content//pipsu/pim/sms?anahtarXYGVG67X
30PIPSU-L Kullanici Kisisel Veri Depolama Modülü
Indeks
Deger
56HJ7987
PNG,364x26
345987866454354343
67KLHG8
MIMEText,ASDFGDFG, From, To
45678879865954
454HJK0
Deger
Degisim
. . .
. . .
. . .
31Launcher ve GUI Bilesenleri
Sunum
GUI Kontrol Bilesenleri
Iletisim ve Sistem Takip Bileseni
Kullanici Kisisel Veri Takip Modülleri
Kontrol
Kullanici Kisisel Veri Modülleri
Sapi
SyncML
Soyut
Istemci Iletisim Kütüphanesi
Depolama
Kullanici Kisisel Veri Depolama Modülü
Konfigurasyon Saklama Modülü
32PIPSU-L Launcher Bilesenleri
- Launcherlar Android platformu için özel
yetenekler ve göreve sahip Android
uygulamalaridir.
Launcher ve GUI Bilesenleri
Launcher Widget Bilesenleri
Activity Bilesenleri
33Launcher ve GUI Bilesenleri
Sunum
GUI Kontrol Bilesenleri
Iletisim ve Sistem Takip Bileseni
Kullanici Kisisel Veri Takip Modülleri
Kontrol
Kullanici Kisisel Veri Modülleri
Sapi
SyncML
Soyut
Istemci Iletisim Kütüphanesi
Depolama
Kullanici Kisisel Veri Depolama Modülü
Konfigurasyon Saklama Modülü
34PIPSU-L Kontrol Katmani
- Bu katman, PIPSU-Lnin çalistigi platformda
bulunan kullanici kisisel bilgilerinin, PIPSU
tarafindan saglanan güvenli depolama alanlarina
tasinmasini saglamaktadir.
35PIPSU-L nin Android Uygulama Modeli
- Kendi UIDsi ile is yapiyor. Kendi dizinlerine
sadece kendisi erisebiliyor. - Üç katmanli uçtan uca bir çözüm, verilerin
yaratilmasi, degistirilmesi, silinmesi,
yedeklenmesi hep ayni süreç (process) tarafindan
yönlendiriliyor. - Kullanici kisisel bilgilerini, sahip oldugu
dahili soyutlama kütüphanelerini kullanarak mobil
platform bagimsiz formlarda sakliyor/kullaniyor.
36PIPSU-L Uygulama Veri Güvenlik Modeli
Uygulama ve Sistem Arayüzleri
PIPSU API(Tek Yönlü)
PIPSU
Olay Degis tokusu (User Event
Exchange)
Android Framework
Dalvik
Tek sistem kullanicisi
PIPSU Uid
Dosya Sistemi (Linux Çekirdek)
Diger Uygulama Verileri
PIPSU Verileri
37PIPSU
Zararli Uygulama
Android Framework
Dalvik
Tek sistem kullanicisi
X
PIPSU Uid
Dosya Sistemi
Diger Uygulama Verileri
PIPSU Verileri
Öntanimli olarak tüm 3. parti uygulamalar ayni
Uidyi alir. Zararli uygulama sistemden PIPSUnun
UiDsini alamaz PIPSU verilerine ulasmasi
çekirdekçe engellenir Bu durum kurulum esnasinda
kullanicinin verecegi yetkilerin genisligi ile
degismez.
38PIPSU-C Üst Seviye Mimari
SyncML Destekli Bulut Servisleri
SyncML Destekli Bulut Servisleri
Yük Dagitimi
Lokasyon 2
Lokasyon 1
Internet
Yüksek Devamlilik (HA)
Yüksek Devamlilik (HA)
Servis Haberlesmesi
Servis Haberlesmesi
LB
39PIPSU-Cnin Gerçeklenmesi Funambol
Üst Düzey Bilesenler
Temel Servis Bilesenleri
Istek Yönetimi
DM
Veri Kaynak Yönetimi
H A
LB
IBB
Sapi
Servlet Container
EJB3
PUSH
SyncML
Iletisim Kütüphaneleri
HTTP/S
CTP
STP
TCP
UDP
Sunucu Modülleri
40PIPSU Mimarisinin Gerçeklenmesi
Launcher
PIPSU Mimari tasarim
Funambol
apk uzantili, yüklenebilir Android Uygulamasi
41Çalismanin Katkisi ve Tartisma -1
- Mobil platformlarda bulunan güvenlik probleminin
analizi - Kisisel veri güvenligi problem tanimi
- Platform seçimi ve Androidin güvenlik boyutuyla
mimarisel incelenmesi - Platform bagimsiz kisisel veri güvenligi çözüm
mimarisinin gelistirilmesi(PIPSU) - PIPSU implementasyonu için gerekli analiz
- Açik kaynak kodlu projelerin incelenmesi
- Lancher ve Funambol mimarilerinin detayli
incelenmesi - PIPSU Android platform uygulamasinin
gelistirilmesi.
42Çalismanin Katkisi ve Tartisma -2
- PIPSU,
- Kullanici kisisel verilerini, yabanci
uygulamalardan izole eder. - Kullanici kisisel veri devamliligini saglar.
- Linux çekirdek seviyesindeki güvenlik modelini
uygulama seviyesine tasir. - Kullanicinin günlük aliskanliklarini
degistirmeden veri güvenligi saglar.
43Ilerde Yapilabilecekler
- PIPSU uygulamasi mobil marketlere sunulmasi
- PIPSU projesine özel SyncML tabanli bulut
servislerinin gerçeklenmesi - PIPSU-L içerisinde yerel olarak tutulan PIM
kategorilerini arttirmak - PIPSU akranlari arasinda(P2P) DLNA veri paylasimi
- Literatür taramasi kisminin genisletilip Android
platformlarda kisisel veri güvenligi
yaklasimlari baslikli derleme(Survey) yayininin
olusturulmasi. - PIPSUnun diger önemli mobil platformlara
tasinmasi. - 3. parti uygulamalarin PIPSU altyapisini
kullanabilmesi