75

Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Embed Size (px)

DESCRIPTION

Siber Güvenlik Buluşmalarının 8. oturumda İbrahim Baliç'in gerçekleştirdiği sunum dosyası

Citation preview

Page 1: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Ajandabull Ben Kimimbull Android

bull Android Nedirbull Dalvik VM bull Data Saklama Alanlarıbull Rooted ve Unrooted Kavramıbull Android Mimarisibull Android APIs( PackageManager Telephony )bull Lab Ortamının Kurulumubull Android Debug Bridgebull Log Araccedilları ( Logcat Dumpsys )bull Uygulama Araccedilları ( Aapt Dexdump )

bull Android Adli-Bilişim ( Forensics )bull Manuelbull Agent-Based Adli Bilişim

bull SAFT (Yerli)bull Oxygenbull veya geliştirelim

bull Santoku Androidbull Android Uygulama Analizi

bull Manuelbull Android Sandboxlar

bull UNdroid (Yerli)bull Anubisbull veya geliştirelim

bull Sorular

Ben Kimimbull Security Researcher Balich ITbull SAFT Mobile Forensics SignalsSECbull Android Sandbox(androidsandboxnet) Balich ITbull Uygula Online Mobile App Builder Balich ITbull MalTrack ndash Malware Dedection Tool Balich ITbull Android RAT (Remote Access Tool) Balich ITbull Apple Facebook Opera Google Security Researcher

Androidbull Maliyet ve İşletim Sistemi tutarlılığı konusunda oldukccedila başarılı

olan Android Google Inc şirketi tarafından geliştirilmiş ve yaygın olarak kullanılan Linux kernel tabanlı bir İşletim sistemidir (Android OS ndash Android Operating System)

bull Android guumlnuumlmuumlzde bir ccedilok kaynakta Mobil İşletim Sistemi olarak anılsada bu tam olarak doğru değildir

bull Android İşletim Sistemi birccedilok farklı aygıt iccedilerisinde karşımıza ccedilıkabilir(oumlrnek olarak tabletler akıllı tvler vs) Fakat yaygın olarak kullanım alanı mobil cihazlardır

bull Gelecekte farklı enduumlstriel araccedillar iccedilerisindede goumlrebilmemiz kaccedilınılmazdır

Androidbull IDC şirketinin 2013 yılı araştırma raporunda Mobil kullanım iccedilin

belirtilen sonuccedillara goumlre 2013 yılında Akıllı Cihaz kullanımı 512 lik artışla yuumlkselişte ve Mobil Pazarrsquoda Akıllı Cihazların primekullanımları pazar payının yarınsından fazlasına hakim

bull Yine aynı araştırma firmasının 2013 yılında sunmuş olduğu 2012 pazar araştırması raporuna goumlrede Android işletim sisteminin pazardaki payı 688

Android Mimarisi

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 2: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Ben Kimimbull Security Researcher Balich ITbull SAFT Mobile Forensics SignalsSECbull Android Sandbox(androidsandboxnet) Balich ITbull Uygula Online Mobile App Builder Balich ITbull MalTrack ndash Malware Dedection Tool Balich ITbull Android RAT (Remote Access Tool) Balich ITbull Apple Facebook Opera Google Security Researcher

Androidbull Maliyet ve İşletim Sistemi tutarlılığı konusunda oldukccedila başarılı

olan Android Google Inc şirketi tarafından geliştirilmiş ve yaygın olarak kullanılan Linux kernel tabanlı bir İşletim sistemidir (Android OS ndash Android Operating System)

bull Android guumlnuumlmuumlzde bir ccedilok kaynakta Mobil İşletim Sistemi olarak anılsada bu tam olarak doğru değildir

bull Android İşletim Sistemi birccedilok farklı aygıt iccedilerisinde karşımıza ccedilıkabilir(oumlrnek olarak tabletler akıllı tvler vs) Fakat yaygın olarak kullanım alanı mobil cihazlardır

bull Gelecekte farklı enduumlstriel araccedillar iccedilerisindede goumlrebilmemiz kaccedilınılmazdır

Androidbull IDC şirketinin 2013 yılı araştırma raporunda Mobil kullanım iccedilin

belirtilen sonuccedillara goumlre 2013 yılında Akıllı Cihaz kullanımı 512 lik artışla yuumlkselişte ve Mobil Pazarrsquoda Akıllı Cihazların primekullanımları pazar payının yarınsından fazlasına hakim

bull Yine aynı araştırma firmasının 2013 yılında sunmuş olduğu 2012 pazar araştırması raporuna goumlrede Android işletim sisteminin pazardaki payı 688

Android Mimarisi

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 3: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Androidbull Maliyet ve İşletim Sistemi tutarlılığı konusunda oldukccedila başarılı

olan Android Google Inc şirketi tarafından geliştirilmiş ve yaygın olarak kullanılan Linux kernel tabanlı bir İşletim sistemidir (Android OS ndash Android Operating System)

bull Android guumlnuumlmuumlzde bir ccedilok kaynakta Mobil İşletim Sistemi olarak anılsada bu tam olarak doğru değildir

bull Android İşletim Sistemi birccedilok farklı aygıt iccedilerisinde karşımıza ccedilıkabilir(oumlrnek olarak tabletler akıllı tvler vs) Fakat yaygın olarak kullanım alanı mobil cihazlardır

bull Gelecekte farklı enduumlstriel araccedillar iccedilerisindede goumlrebilmemiz kaccedilınılmazdır

Androidbull IDC şirketinin 2013 yılı araştırma raporunda Mobil kullanım iccedilin

belirtilen sonuccedillara goumlre 2013 yılında Akıllı Cihaz kullanımı 512 lik artışla yuumlkselişte ve Mobil Pazarrsquoda Akıllı Cihazların primekullanımları pazar payının yarınsından fazlasına hakim

bull Yine aynı araştırma firmasının 2013 yılında sunmuş olduğu 2012 pazar araştırması raporuna goumlrede Android işletim sisteminin pazardaki payı 688

Android Mimarisi

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 4: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Androidbull IDC şirketinin 2013 yılı araştırma raporunda Mobil kullanım iccedilin

belirtilen sonuccedillara goumlre 2013 yılında Akıllı Cihaz kullanımı 512 lik artışla yuumlkselişte ve Mobil Pazarrsquoda Akıllı Cihazların primekullanımları pazar payının yarınsından fazlasına hakim

bull Yine aynı araştırma firmasının 2013 yılında sunmuş olduğu 2012 pazar araştırması raporuna goumlrede Android işletim sisteminin pazardaki payı 688

Android Mimarisi

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 5: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Mimarisi

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 6: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Mimarisibull Linux Kernel

ndash Process Youmlnetimindash Memory Youmlnetimi

bull Librariesndash Bionic libcndash Function kuumltuumlphanesindash Yerel servislerndash Hardware abstraction ( HAL )ndash

bull Android Runtimendash Dalvik VM (JIT ndash Just-in-Time) (libdvmso)ndash ART ( 44 KitKat ile geldi - AOT ndash Ahead-of-Time) (libartso)ndash Core Java Kuumltuumlphanesi

bull Application Frameworkndash Activity Managerndash Notification Managerndash

bull Applicationsndash Contactsndash Phone

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 7: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Dalvik VMbull Dalvik Virtual Machine Dan Bornstein tarafından Android iccedilin oumlzel

olarak geliştirilmiş bir sanal makinadır

bull Java olarak yazılan uygulama kodları (class) derleyiciler tarafından Dalvik VMrsquoin okuyabileceği op codelara ccedilevrilir ve dex uzantılı dosyaya doumlnuumlştuumlruumlluumlr

bull Dex dosyaları Dalvik VMrsquonin ccedilalıştırılabilir(executable) dosya uzantılarıdır

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 8: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

ARTbull Google firmasının Android iccedilin uumlretmeye başladığı ve Android 44

Kitkat ile tanıttığı yeni nesil Android Runtime rsquodir

bull Gelecekte Dalvik VMrsquoin yerini alması beklenmektedir

bull Dalvik VM Just-in-Time ndash JIT olarak ccedilalıştığı iccedilin az hafıza ccedilok işlemci tuumlketir ART ise Ahead-of-Time ndash AOT olarak ccedilalışarak ccedilok hafıza az işlemci ile Android lsquoin daha hızlı ccedilalışmasını sağlar

bull Dalvik VM ile JIT ndash Uygulamalar kurulduktan sonra ccedilalıştırılabilir dosyaları(dex) ccedilalıştırılacağı zaman kendi iccedilerisinde işlemcinin anlayacağı dile ccedilevirerek derler

bull ART ile AOT - Uygulamalar kurulurken ccedilalıştırılabilir dosyaları(dex) kurulum aşamasında işlemcinin anlayacağı dile ccedilevirir ve ccedilalışma sırasında ccedilevirdiği dosyaları kullanır ve zaman kaybetmez

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 9: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

APK Dosyalarıbull Android uygulamaların paketlenmiş

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 10: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

APK Dosyaları

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 11: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

DEX Dosyaları

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 12: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Data Saklama AlanlarıAndroid işletim sistemi uumlzerinde 5 farklı şekilde data tutma youmlntemi bulunmaktadır

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 13: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Data Saklama Alanlarıbull Internal Storage ndash datadata klasoumlruuml iccedilerisinde ilgili uygulamanın paket adıyla

oluşturulmuş ve uygulama alanıyla erişim sağlanabilinen alanıdır Normal şartlarda bu alana sadece uygulamanın erişim hakkı verilir ilgili erişim root yetkisiyle yapılmadıysa goumlruumlntuumllenemez

bull External Storage ndash İlgili cihazın diğer depolama alanlarında guumlvenlik ilke ve politikaları yuumlksek seviyede uygulanırken external storage alanında kısıtlamalar daha duumlşuumlk seviyededir cihaz uumlzerine dahil edilmiş bir sdcard uumlzerinde yazma ve okuma işlemlerini rahatlıkla yapabilmekteyiz

bull Shared Preferences - İlgili uygulama alanında bulunan ve XML formatı ile ilgili uygulamaya ait isteğe bağlı dataların saklanmasına olanak tanır bu alanda genelde uygulama ile ilgili basit ayar bilgileri bulunur

bull Network Android Network uumlzerinden data saklama imkanıda sağlamaktadır

bull SQLite SQLite dosyaları kısıtlama olmaksızın uygulamalar tarafından oluşturulabilir tablo mantiği ile veri saklama imkanı sağlarken genellikle datadatapaketadidatabases dizininde bulunurlar bu zorunlu değildir dilendiği takdirde harici dizinlerde barındırılabilinir

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 14: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Rooted amp Unrootedbull Android işletim sistemi erişim ve yetki konusunda bazı sınırlar

barındırmaktadır Bu sınırlar işletim sistemi uumlzerindeki bazı zafiyetler sayesinde soumlmuumlruumllerek (exploit) işletim sistemi uumlzerinde root yetkisi kazanılması işlemi piyasada rootlamak olarak adlandırılmaktadır

bull Data Saklama Alanlarında internal storage(datadatapackage) alanına normal şartlarda root dışında uygulama haricinde erişemeyiz fakat root yetkisi kazandıysanız internal storage alanınıda goumlruumlntuumlleyebilmeniz muumlmkuumlnduumlr

bull Root yetkisi kazanılmış cihazlara Rootlanmış cihaz

bull Root yetkisi bulunmayan cihazlara ise Unrooted cihaz diyebiliriz

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 15: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Rooted amp Unrooted

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 16: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android APIsbull Android işletim sistemi mimarisinden hatırlayacağınız uumlzere

Application Framework katmanında bazı kuumltuumlphaneler barındırmaktadır Bu kuumltuumlphanelere uygulama geliştirirken ilgili servisin yetki gereksinimine goumlre erişerek uygulamamız iccedilerisinde kullanabilir veya youmlnetebiliriz

ndash Power Managerndash Activity Managerndash Package Managerndash Alarm Managerndash Window Managerndash Bluetooth Servicendash Location Managerndash

bull Bunlardan bazılarıdır

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 17: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Package Managerbull Package Manager Android uumlzerinde kurulu paket(uygulamalar)ler

den sorumlu olan servistir Bu servisi kullanılarak bir paket kaldırabilir veya bu paket hakkında bilgi alabiliriz

bull Package Manager uygulamalar hakkında bilgi alınacağı zaman herhangi bir yetki gerektirmez Paket hakkında bilgi alabileceğiniz gibi uygulamanın kaynağınada erişebilmenize imkan tanır Anti-Viruumlsler ve benzeri bir ccedilok uygulama bu sayede paketlere erişim sağlar veya onları kopyalar

bull Package Manager paketleri kaldırmak(silmek) iccedilin yetkiizin gerektirir Bu izni DELETE_PACKAGES ile kazanır

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 18: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Package Manager

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 19: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Package ManagerPackageManager pm = getPackageManager() ListltApplicationInfogt paketler = pmgetInstalledApplications(PackageManagerGET_META_DATA) for (ApplicationInfo paketbilgileri paketler) if(paketbilgileripackageNametoString() = null) Logd(SiberGuvenlik Yuumlkluuml paket + paketbilgileripackageName)

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 20: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Telephony Managerbull TelephonyManager Androidrsquoin kurulu olduğu cihazdan sorumlu

olan servistir Bu servisi kullanılarak cihaz hakkında farklı alanda bilgi alabiliriz

ndash CALL_STATE_IDLE Device call state No activityndash CALL_STATE_OFFHOOK Device call state Off-hookndash CALL_STATE_RINGING Device call state Ringingndash DATA_ACTIVITY_DORMAN Data connection is active but physical link is downndash DATA_ACTIVITY_IN Data connection activity Currently receiving IP PPP

trafficndash DATA_ACTIVITY_NONE Data connection activity No trafficndash DATA_ACTIVITY_OUT Data connection activity Currently sending IP PPP trafficndash DATA_CONNECTED Data connection state Connected

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 21: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Telephony Manager

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 22: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Telephony Manager

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 23: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 24: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumubull JDK Kurulumu

bull SDK Kurulumu (Candroidsdk iccedilerisine taşıyalım)

bull Intellij IDEA Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 25: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 26: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 27: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 28: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 29: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 30: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumubull Emulatoumlr oluşturma ve kontrolleri

ndash Yuumlkluuml platformları tespitkontrol android list targets

ndash Oluşturulmuş emulatoumlrleri tespitkontrol android list avd

ndash Emulatoumlrleri oluşturma android create avd -n siberguvenlik -t 28 --skin QVGA

ndash Emulatoumlrler iccedilin sdcard oluşturma mksdcard -l sdcardSiberguvenlik 1024M ldquocandroidsdcardSiberguvenlikimgrdquo

ndash Emulatoumlrler başlatma emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik

bull Emulatoumlruumln doğrulunu sağla bağlanbull adb devicesbull adb shell

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 31: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 32: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Lab Ortamının Kurulumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 33: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Debug Bridgebull Android cihazlar ile bilgisayar arasında koumlpruuml vazifesi

goumlren bir araccediltır adb iccedilin Tuumlrkccedile Android hata ayıklama koumlpruumlsuuml desek sanırım hata etmiş olmayız Android cihazlar uumlzerindeki hata ayıklama modu aktif hale getirildikten sonra cihazımız ile farklı cihazlar arasında ADB uumlzerinde iletişim kurabilmekktedir

bull Adb iccedilerisinde birccedilok farklı alan iccedilin komut satırı barındırılmaktadır Bunların ayrıntılı listesi ve kullanımı iccedilin adb help komutu veya direkt olarak bu sayfayı ziyaret edebilirsiniz

bull httpdeveloperandroidcomtoolshelpadbhtml

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 34: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Log Araccedilları ( LogcatDumpsys )bull Logcat

ndash logcat android debug youmlntemlerinden biridir System ve Uygulamalara ait debug mesajları barındırır Bu uygulamaların başlatılmasından sonlandırılmasına kadar geccedilen suumlrede bir sistem mesajını ve uygulamayı oluşturan kişinin belirlediği mesajların dan oluşmaktadır Bu mesajlar arasında bir ccedilok bilgiye rastlamak muumlmkuumlnduumlr

ndash İlgili uygulamaların verbose debug information warning error başlıkları arasında herhangi bir konualanda bilgi barındırabilirler

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 35: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Log Araccedilları ( LogcatDumpsys )bull Logcat

bull httpdeveloperandroidcomtoolshelplogcathtml

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 36: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Log Araccedilları ( LogcatDumpsys )bull Dumpsys

ndash Dumsys sistem dump olarak accedilıklanabilinir Bu komut bize servislerin memory ve diğer sistem detaylarını verir ve yine en guumlzel kısmı root hakkı gerektirmemektedir ve iyi bir analiz ile faydalı bilgiler elde edilebilinir

ndash httpssourceandroidcomdevicestechinputdumpsyshtml

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 37: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Android paketleme aracı olarak soumlz edebileceğimiz aapt android uygulamaların derlenmesi aşamasında kaynaklar(resources) iccedilin kullandığı derleme araccedilı

ndash SDK iccedilerisinde gelen aapt build-tools klasoumlruuml iccedilerisinde bulunmaktadır

ndash Bu araccedil sayesinde derlenmiş bir uygulama (apk) dosyası hakkındada bilgi alınabilinir

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 38: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Oumlrnek vermem gerekirse bir uygulamanın iccedilerisindeki değerlere aapt ile goumlzatalım

bull aapt d --values resources candroidsiberguvenlikapk

Package Groups (1)Package Group 0 id=127 packageCount=1 name=siberguvenlikbalichit Package 0 id=127 name=siberguvenlikbalichit typeCount=4 type 0 configCount=0 entryCount=0 type 1 configCount=4 entryCount=1 spec resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher flags=0x00000100 config ldpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000001 (s=0x0008 r=0x00) (string16) resdrawable-ldpiic_launcherpng config mdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000002 (s=0x0008 r=0x00) (string16) resdrawable-mdpiic_launcherpng config hdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000003 (s=0x0008 r=0x00) (string16) resdrawable-hdpiic_launcherpng config xhdpi-v4 resource 0x7f020000 siberguvenlikbalichitdrawableic_launcher t=0x03 d=0x00000004 (s=0x0008 r=0x00) (string16) resdrawable-xhdpiic_launcherpng type 2 configCount=1 entryCount=1 spec resource 0x7f030000 siberguvenlikbalichitlayoutmain flags=0x00000000 config (default) resource 0x7f030000 siberguvenlikbalichitlayoutmain t=0x03 d=0x00000000 (s=0x0008 r=0x00) (string16) reslayoutmainxml type 3 configCount=1 entryCount=1 spec resource 0x7f040000 siberguvenlikbalichitstringapp_name flags=0x00000000 config (default) resource 0x7f040000 siberguvenlikbalichitstringapp_name t=0x03 d=0x00000005 (s=0x0008 r=0x00) (string16) PackageManagerOrnegi

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 39: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide aynı uygulama iccedilerisindeki dosya listesine goumlz atalımbull aapt list candroidsiberguvenlikapk

reslayoutmainxmlAndroidManifestxmlresourcesarscresdrawable-hdpiic_launcherpngresdrawable-ldpiic_launcherpngresdrawable-mdpiic_launcherpngresdrawable-xhdpiic_launcherpngclassesdexMETA-INFMANIFESTMFMETA-INFCERTSFMETA-INFCERTRSA

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 40: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Aapt (Android Asset Packaging Tool)

ndash Şimdide farklı bir uygulama iccedilerisindeki permissionlara goumlz atalımbull aapt d permissions candroidsiberguvenlik2apk

package siberguvenlikbalichituses-permission androidpermissionREAD_PHONE_STATE

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 41: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 42: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Uygulama Araccedilları (Aapt Dexdump)bull Dexdump

ndash Android SDK ile birlikte gelen dex dosyalarının disassembler araccedilıdır Belirtilen dosyarsquonın dalvik VM bytecodelarını verir bull dexdump -d candroidclassesdex

Processing candroidclassesdexOpened candroidclassesdex DEX version 035Class 0 - Class descriptor LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle Access flags 0x0000 () Superclass LandroidtelephonyPhoneStateListener Interfaces - Static fields - Instance fields - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name this$0 type LsiberguvenlikbalichitMyActivity access 0x1010 (FINAL SYNTHETIC) Direct methods - 0 (in LsiberguvenlikbalichitMyActivity$TelefonDurumuDinle) name ltinitgt type (LsiberguvenlikbalichitMyActivity)V access 0x10000 (CONSTRUCTOR) code - registers 2 ins 2 outs 1 insns size 6 16-bit code units Class 1

Dalvik VM Bytecode iccedilin daha fazla bilgi

httpsourceandroidcomdevicestechdalvikdalvik-bytecodehtmlhttppallergaboruwhuandroidblogdalvik_opcodeshtml

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 43: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Bir durumda Android bir cihaz uumlzerinde adli bir konun

araştırılması icelenmesini delil toplanması vs gibi durumlar Android Adli Bilişimi konu almaktadır

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 44: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

bull Sqlite amp App databaseleribull Resimler Tarihler Accountlar History Cookieler Uygulama

shared preferences alanı vs

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 45: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb shellndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 46: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatandash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 47: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cd datadatacombalichITAndroidSandboxndash Ls

ndash Cd datadatacombalichITAndroidSandboxdatabasesndash ls

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 48: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

ndash adb pull ltnerdenalinacakgt ltnereyekoyapalanacakgt ( cihazdan bilgisayara )ndash adb push ltneredenalinacakgt ltnereyekopyalanacakgt ( bilgisayardan cihaza )

ndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewCachedbndash adb pull datadatacombalichITAndroidSandboxdatabaseswebviewdb

ndash Sqlite browser ile inceleyelim

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 49: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 50: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 51: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Manuel

ndash Cihazdaki tuumlm dosyaların doumlkuumlmuumlnuuml alıp bakalımbull adb shell ls ndashl ndashR gt tumdokumtxt

ndash Cihazdaki tuumlm logların doumlkuumlmuumlnuuml alıp bakalımbull adb logcat -d gt loglardokumtxt

ndash Cihazdaki servislerin durum doumlkuumlmuumlnuuml alalımbull adb dumsys gt sistemdokumtxt

bull Vs vs

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 52: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT Mobil Forensics iccedilin geliştirilmiş ve community versiyonu uumlcretsiz olarak dağıtılan yerli bir yazılımdır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 53: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull SAFT

ndash SAFT community versiyonu agent-based olarak ccedilalışmaktadır

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 54: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 55: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull SAFT community versiyonu ile cihaz uumlzerinden şu

bilgiler alınabilinmektedir

httpwwwsignalseccomportfoliosaft-mobile-forensics

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 56: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen Forensicreg Suite forensics iccedilin geliştirilmiş bir yazılımdır

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 57: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Oxygen

ndash Oxygen android lsquode Saft gibi agent-based olarak ccedilalışmaktadır

ndash Oxygen ile sadece android tabanlı değil ios nokia vs gibi diğer mobil cihazlar iccedilinde kullanılabilinir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 58: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )bull Oxygen ile cihaz uumlzerinden şu bilgiler alınabilinmektedir

httpwwwoxygen-forensiccomen

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 59: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash EVET androidpermissionREAD_CONTACTSndash SMS listesi ndash EVET androidpermissionREAD_SMSndash Arama listesi ndash EVET androidpermissionREAD_CALL_LOGndash Neden duruyoruz peki

Hadi Kendimiz geliştirelim

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 60: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )

ndash Kişi listesi ndash androidpermissionREAD_CONTACTS

Cursor kisiler = thisgetContentResolver()query(ContactsContractCommonDataKindsPhoneCONTENT_URI nullnullnull null)

while (kisilermoveToNext()) String adi

=kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneDISPLAY_NAME))

String telefonNO = kisilergetString(kisilergetColumnIndex(ContactsContractCommonDataKindsPhoneNUMBER))

Logd(SiberGuvenlik Adi + adi + Numarasi + telefonNO) kisilerclose()

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 61: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )

ndash SMS listesi ndash androidpermissionREAD_SMS

Cursor smsler= thisgetContentResolver()query(Uriparse(contentsms) nullnull null null) while (smslermoveToNext()) String adres = smslergetString(smslergetColumnIndex(address)) String body = smslergetString(smslergetColumnIndex( body )) String tarih= smslergetString(smslergetColumnIndex( date ))

Logd(SiberGuvenlik adres + adres + body + body + tarih + tarih)

smslerclose()

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 62: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Adli-Bilişim ( Forensics )

ndash Arama listesi ndash androidpermissionREAD_CALL_LOG

Ev oumldevi

kopya google= androidpermissionREAD_CALL_LOG uriparse

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 63: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizindash İhtiyaccedillarımız

bull Uygulamanın bağlantı kurduğu dış kaynaklarbull Uygulamanın kullandığı izinlerbull Uygulamanın disasambler kodları veya source kodları

ndash Yapabileceklerimizbull Hepsi

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 64: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 1 alternatifimiz emulatoumlrrsquouumln http-proxy seccedileneği ile emulatoumlruuml bir proxy serverrsquoa youmlnlendirerek dinlemek bu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak

ndashhttp-proxy httpproxyserverproxyserverport

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik ndashhttp-proxy http

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 65: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 2 alternatifimiz emulatoumlrrsquouumln tcpdump seccedileneği ile başlatılıp emulatoumlruumln network akışını pcap formatında dışa almak ve daha sonra pcaprsquoten manuel incelemekbu seccedilenek iccedilin emulatoumlr başlangıccedil parametresi olarak -tcpdump siberguvenlikapkpcap

emulator -sdcard candroidsdcardSiberguvenlikimg -avd siberguvenlik -tcpdump siberguvenlikapkpcap

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 66: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın bağlantı kurduğu dış kaynaklar

ndash 3alternatifimiz emuumllatoumlruumln ccedilalıştırılacağı computerrsquoı (sanal makinada olabilir) bir proxyrsquoe youmlnlendirmek veya alternatif bir network dinleme aracı ile dinlemek

Bkz wireshark

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 67: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 1alternatifimiz aapt aracını hatırlıyalım

aapt d permissions candroidsiberguvenlik2apk

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 68: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın kullandığı izinler

ndash 2alternatifimiz apktool ile apk dosyasını decoding ederek manifest dosyasını dışarı ccedilıkartabiliriz

apktool d Candroidsiberguvenlik2apk ampamp cat siberguvenlik2AndroidManifestxml

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 69: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Uygulamanın Disassembler kodları

ndash 1alternatifimiz dexdump lsquoı hatırlayalım Apk dosyasının iccedilerisinden classessdex dosyasını ccedilıkartıp dexdump ile inceyelim

dexdump -d candroidclassesdex

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 70: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Sandboxlar

ndash 1alternatifimiz Tabiki Android Sandbox (yerlidir)

ndash 2alternatifimiz Anubis ( yerli değildir P )

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 71: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 72: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 73: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Sandboxlar

ndash Anubis

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)
Page 74: Siber Güvenlik Buluşmaları 8. Oturum Sunumu

Android Uygulama Analizibull Sandboxlar

ndash Android Sandbox

  • Slide 1
  • Slide 2
  • Ben Kimim
  • Android
  • Android (2)
  • Android Mimarisi
  • Android Mimarisi (2)
  • Dalvik VM
  • ART
  • APK Dosyaları
  • APK Dosyaları (2)
  • DEX Dosyaları
  • Data Saklama Alanları
  • Data Saklama Alanları (2)
  • Rooted amp Unrooted
  • Rooted amp Unrooted (2)
  • Android APIs
  • Package Manager
  • Package Manager (2)
  • Package Manager (3)
  • Telephony Manager
  • Telephony Manager (2)
  • Telephony Manager (3)
  • Lab Ortamının Kurulumu
  • Lab Ortamının Kurulumu (2)
  • Lab Ortamının Kurulumu (3)
  • Lab Ortamının Kurulumu (4)
  • Lab Ortamının Kurulumu (5)
  • Lab Ortamının Kurulumu (6)
  • Lab Ortamının Kurulumu (7)
  • Lab Ortamının Kurulumu (8)
  • Lab Ortamının Kurulumu (9)
  • Lab Ortamının Kurulumu (10)
  • Android Debug Bridge
  • Log Araccedilları ( LogcatDumpsys )
  • Log Araccedilları ( LogcatDumpsys ) (2)
  • Log Araccedilları ( LogcatDumpsys ) (3)
  • Uygulama Araccedilları (Aapt Dexdump)
  • Uygulama Araccedilları (Aapt Dexdump) (2)
  • Uygulama Araccedilları (Aapt Dexdump) (3)
  • Uygulama Araccedilları (Aapt Dexdump) (4)
  • Uygulama Araccedilları (Aapt Dexdump) (5)
  • Uygulama Araccedilları (Aapt Dexdump) (6)
  • Android Adli-Bilişim ( Forensics )
  • Android Adli-Bilişim ( Forensics ) (2)
  • Android Adli-Bilişim ( Forensics ) (3)
  • Android Adli-Bilişim ( Forensics ) (4)
  • Android Adli-Bilişim ( Forensics ) (5)
  • Android Adli-Bilişim ( Forensics ) (6)
  • Android Adli-Bilişim ( Forensics ) (7)
  • Android Adli-Bilişim ( Forensics ) (8)
  • Android Adli-Bilişim ( Forensics ) (9)
  • Android Adli-Bilişim ( Forensics ) (10)
  • Android Adli-Bilişim ( Forensics ) (11)
  • Android Adli-Bilişim ( Forensics ) (12)
  • Android Adli-Bilişim ( Forensics ) (13)
  • Android Adli-Bilişim ( Forensics ) (14)
  • Android Adli-Bilişim ( Forensics ) (15)
  • Android Adli-Bilişim ( Forensics ) (16)
  • Android Adli-Bilişim ( Forensics ) (17)
  • Android Adli-Bilişim ( Forensics ) (18)
  • Android Adli-Bilişim ( Forensics ) (19)
  • Android Adli-Bilişim ( Forensics ) (20)
  • Android Uygulama Analizi
  • Android Uygulama Analizi (2)
  • Android Uygulama Analizi (3)
  • Android Uygulama Analizi (4)
  • Android Uygulama Analizi (5)
  • Android Uygulama Analizi (6)
  • Android Uygulama Analizi (7)
  • Android Uygulama Analizi (8)
  • Android Uygulama Analizi (9)
  • Android Uygulama Analizi (10)
  • Android Uygulama Analizi (11)
  • Android Uygulama Analizi (12)