Türkiye’deki Mobil Bankacılık Uygulamalarının Güvenlik ve Gizlilik Analizi

Türkiye’deki mobil bankacılık uygulamaları, neredeyse dünyadaki en gelişmiş ve kullanışlı bankacılık uygulamalarının başında gelir. Bu uygulamaların sağladığı yararlar ve hizmetleri tartışmaya gerek yok. Bizim odak noktamız, Türkiye’de en çok kullanılan 8 mobil bankacılık uygulamasının akıllı telefonlarda kullandığı aşırı izinler (yetkiler) ve internette bağlandığı yerlerin incelenmesidir.

 

Türkiye’deki mobil bankacılık uygulamalarının pratikteki kullanıcı güvenliği ve gizliliği durumunu incelediğimiz bu analizde 8 banka tarafından sunulan resmi Android mobil uygulamalarını kullandık. Amacımız, mobil bankacılık uygulamalarının telefonlara kuruldukları andan itibaren hangi izinleri edindiklerinin ve çalıştıkları sırada internette hangi adresler ile iletişim kurduklarının tespitidir. Bankaların mobil uygumalarının farklı izinler kullanması, bazılarının gereğinden fazla izin edinmesi bu analizdeki en dikkat çeken hususlardan biriydi. Bu analizin en özet sonucuna göre bir bankanın uygulaması diğer bankaların uygulamalarına göre telefonlarda en fazla yetkiyi/izni alan uygulama olarak öne çıkıyor. Bunun yanında bir mobil uygulama olarak internette mobil bankacılık dışında alakasız farklı yerlerle en çok bağlantı kuran uygulamalarda iki bankanın mobil bankacılık uygulamaları başı çekiyor.

 

Mobil Bankacılık Uygulamalarının İnternet Trafiğini ve Kullandıkları İzinleri Nasıl Görebilirsiniz

Mobil uygulamaların internet trafiğini ve akıllı telefonlarda kullandığı izinleri canlı ortamda analiz edebilmek için bildiğimiz 4 farklı yöntem vardır:

  1. Mobil cihazın internet bağlantısını, bilgisayarınızın kablosuz paylaşımı (Wifi sharing) aracılığıyla, bilgisayarınızdan yönlendirip trafiğini çeşitli uygulamalarla (örneğin Wireshark) analiz etmek. Bu seçenekte sağlıklı bir analiz yapabilmek pek mümkün değil. Çünkü bağlantı sırasında telefondan sadece bir uygulama değil, birden çok uygulama ve mobil işletim sisteminden internete doğru trafik olacaktır. Tüm bunları düzgün bir şekilde ayırt edebilmek pek kolay ve olası değil. Son kullanıcılardan bunu yaparak uygulamalarını analiz etmelerini beklemek abestir. Ayrıca bu seçenekte uygulamaların telefonda kullandığı izinleri de göremezsiniz.
  2. Mobil cihazın internet bağlantısının, kontrolünüz altında bulunan bir proxy/vekil sunucu yani pratikteki adıyla bir Web security gateway üzerinden geçmesini sağlayarak trafiği analiz etmek. Bu seçenekte de sadece bir uygulamadan çıkan trafikleri değil, birçok uygulama ile mobil işletim sisteminden kaynaklanan toplu bir internet trafiğini görmeniz söz konusudur. Maalesef tüm bunları düzgün bir şekilde ayırt edebilmek pek kolay ve olası değil. Son kullanıcılardan bunu yaparak uygulamalarını analiz etmelerini beklemek abestir. Ayrıca bu seçenekte de uygulamaların telefonda kullandığı izinleri göremezsiniz.
  3. Mobil cihazdaki tüm internet trafiğini başka bir VPN/vekil sunucu üzerine yönlendirip, oradan Firewall yetkisi mantığı ile kontrollü bir şekilde çıkmasını sağlayan çeşitli mobil uygulamaları kullanmak. Bu tür trafik yönlendirici mobil uygulamalar oldukça sakıncalıdır ve güvenilir olanını bulmak neredeyse imkansızdır. Ayrıca mobil uygulamaların trafiğini analiz etmek için kullanacağınız böyle bir trafik yönlendirici uygulama, cihazdaki diğer mobil uygulamaların kullandığı izinleri de göstermeyecektir. Bu yüzden bu uygulamanın yanında aynı anda başka bir uygulama ile de mobil uygulamaların izinlerini kontrol etmeniz gerekir. Maalesef bu yöntem de pek pratik ve uygulabilir değildir. Karmaşıklığı dolayısıyla son kullanıcılardan bunları yaparak uygulamalarını analiz etmelerini beklemek abestir.
  4. Bahseceğimiz ve bu yazının konusu olan analizde yararlandığımız en pratik ve uygulanabilir yöntem ise daha önceden bir yazı ile tanıttığımız SRT AppGuard uygulamasıdır. SRT AppGuard uygulaması Android cihazlarda herhangi bir root yetkisine ihtiyaç duymadan bir sanal kafes gibi çalışarak mobil uygulamaların internet çıkış trafiklerini bir firewall mantığı ile kontrol edebilmeyi ve uygulamaların kullandığı gereksiz izinleri kolayca kaldırabilmeyi sağlıyor. Yani aynı anda bizim istediğimiz her iki işi de yapabiliyor. Bu özellikleri dolayısıyla SRT AppGuard, 8 bankaya ait mobil bankacılık uygulamasını incelememizi sağlamıştır. SRT AppGuard ile hem mobil uygulamaların izinlerini kontrol altına alabildik hem de internette bağlandıkları ilgisiz adresleri tespit edip engelleyebildik.

Bu yazıda anlatılanların tümünü Android telefonunuza SRT AppGuard uygulamasını kurarak kendiniz de görebilirsiniz.

turkiye-de-mobil-bankacilik

Resim: BankNXT

 

Mobil Bankacılık Uygulamalarının Android Telefonlarda Kullandığı İzinlerin Analizi

Eğer SRT AppGuard veya başka bir izin yönetim uygulaması ile uygulamaların izinlerini kontrol altında tutmazsanız, 8 bankanın mobil uygulaması Android telefonlarında alttaki kritik izinleri otomatik olarak alacaktır. Alttaki tabloda bankalar rastgele bir şekilde anonimleştirilmiştir (harfler bankaların tam adının karşılığı değildir):

A Bankası
B Bankası
C Bankası
D Bankası
E Bankası
F Bankası
G Bankası
H Bankası
Çalışan Uygulamaları Al
Resim ve Video Çek
Genel Konum (Ağ Tabanlı)
Hassas Konum (GPS)
SMS veya MMS’i Oku
SMS Gönder
Ses Kaydet
Wi-Fi Durumunu Değiştir
Tam İnternet Erişimi Var
Takvim Etkinliklerini ve Gizli Bilgileri Oku
Ev sahibinin Bilgisi Olmadan Takvim Olayları Ekleyin veya Değiştirin ve Konuklara E-Posta Gönderin
Telefon Numaralarını Doğrudan Ara
Telefon Durumu ve ID’sini Oku
Kişi Bilgilerini Oku
Kişi Bilgilerini Yazma
Genel Sistem Ayarlarını Değiştir
RİSK PUANI (100 üzerinden)
93,7556,2531,2556,252537,537,543,75

 

Mobil bankacılık uygulamalarını Android işletim sistemine sahip akıllı telefonlardaki 16 kritik izinde 100 puanlık bir skalaya göre değerlendirdiğimizde (her bir izin 6,25 puandır), kullandığı aşırı izinler itibarıyla en riskli mobil uygulamanın 93.75’lik puanıyla A Bankası‘in olduğu görülüyor. A Bankasının mobil uygulamasının kullanıcı mahremetini ihlal sınırlarını aşırı bir şekilde zorladığı kolayca görülebiliyor. Hemen ardından 56,25‘lik puanlarıyla B ve D Bankalarının mobil uygulamaları gelmektedir. Sonrasında sırasıyla 43,75’lik puanla F, 37,5’luk puanlarıyla F Bankası ve G Bankası, 31,25’lik puanla C Bankası ve en düşük ve en az riskli olan 25’lik puanıyla da E Bankasının mobil uygulaması gelmektedir.

Bankalar mobil cihazlardaki izinleri müşterilerine farklı hizmetler vermek için kullanıyor olabilir. Ayrıca mobil uygulamaları telefonlarda kullandıkları izinleri göre değerlendirmek bir parça subjektiftir denilebilir. Ama diğer mobil uygulamaların hiç kullanmadığı izinleri aynı anda bazılarının kullanmak zorunda olması doğal olarak bazı soru işaretlerine neden olmaktadır. Daha da ötesi, yukarıdaki izinlerden sadece “tam internet erişimi var“ın olması bile mobil uygulamayı kullanmanız için yeterli olmakta, yani diğer geri kalan izinler olmasa dahi uygulamayı kullanmaya devam edebilmektesiniz. Bu bağlamda, telefonlarda alınan izin tiplerine göre oluşan sorular ve dikkat çeken ayrıntılar şu şekillerde olmaktadır:

  • Bir mobil bankacılık uygulamasının telefondaki “kişi bilgilerini oku” iznini kullanmasının ne gibi bir zorunluluğu olabilir veya bankacılık faaliyeti açısından bu izni kullanmanın ne tip bir faydası veya gerekliliği olabilir? Bir de A Bankasının bunun da ötesine geçip “kişi bilgilerini yazma” yetkisine ihtiyaç duymasının gerekçesi ne olabilir?
  • G Bankasını mobil uygulamasının telefonun “genel sistem ayarlarını değiştir” iznine niçin ihtiyacı olabilir? Bu izin, uygulamaya telefondaki sistem ayarlarını değiştirme yetkisi vermektedir. G’nin hangi mobil bankacılık hizmeti bu izne ihtiyaç duyar? Eğer bu mobil uygulamanın üzerinde çalıştığı kaynaklardan birine bir malware/trojan bulaşır ve G’nin bu aşırı yetkisini kullanarak kullanıcının telefonuna ve bilgilerine zarar verirse sorumluluk kimdedir?
  • Sadece A Bankası tarafından kullanılan “takvim etkinliklerini ve gizli bilgileri oku” ve “ev sahibinin bilgisi olmadan takvim olayları ekleyin veya değiştirin ve konuklara e-posta gönderin” izinleri ne gibi bir ulvi bankacılık hizmeti için gerekli olabilir?
  • A Bankası ve D Bankası mobil uygulamaları niçin “ses kaydet” ile telefonlardan ses kaydı yapmak ister?
  • A Bankası ve D Bankası mobil uygulamaları neden “SMS veya MMS’i Oku” yetkisine ihtiyaç duyar? Normalde bir takım bankacılık doğrulama ve işlemleri için telefonun mesaj gönderip, gelen cevaba göre otomatik olarak işlem yapabilmesi için SMS/MMS okuma yetkisine ihtiyacı söz konusu olabilir.
  • Niçin bütün mobil bankacılık uygulamaları telefonlardaki “hassas konum (GPS)” ve “genel konum (ağ tabanlı)” bilgilerine ihtiyaç duyar? Eğer müşteriye en yakın ATM’yi göstermek için bu bilgileri kullanacaklarsa da buna aslında hiç gerek yoktur. Çünkü bunun için kullanıcıya uygulama içinde bir harita üzerinden il/ilçe/mahalle şeklinde bir sorgulama yaptırmaları fazlasıyla yeterli olacaktır.
  • A Bankası ve B Bankası’ın mobil uygulamaları “çalışan uygulamaları al” izni ile telefondaki diğer çalışan uygulamaları tespit edip ne yapmaktadırlar?

Yukarıdaki sorunların en büyük kaynağı, bu tip mobil uygulamaların genelde dış kaynak kullanımı ile 3. parti firmalara ihale edilerek yapılmasıdır. Bu 3. parti firmaların mobil uygulama yazarken kullandığı platformların bu tip izinleri otomatik ayarlama ve/veya 3. parti geliştiricilerin uygulamanın sürekli geliştirme safhasında müdahil olmaları dolayısıyla bir takım kullanıcı bilgilerini uygulama üzerinden internette başka yerlere taşıma ihtimalleri her zaman söz konusudur. Yani her iki durumda da müşterinin bilgisi gereğinden fazla abartlı bir biçimde kullanılmakta ve mahremiyet ihlal edilmektedir. BDDK’nın düzenlemeleri içinde mobil bankacılık uygulamaları için kriterlerin ne olacağı veya kullanıcıların mahremiyetinin ne ölçüde olacağına dair çok da belirgin ifadeler yok gibi. Bir de normalde bir banka şubesinde yapabileceğiniz bir işlem için hiç istenmeyen bilgilerin, bankaların bu mobil uygulamaları üzerinden otomatik olarak alınması bile başlı başına bir tartışma konusudur.

 

Mobil Bankacılık Uygulamalarının Farklı Yerlere Olan İnternet Trafiğinin Analizi

8 bankaya ait mobil bankacılık uygulamalarının internette bağlandığı yerleri tespit edebilmek için yine SRT AppGuard uygulamasından yararlanıyoruz. Mobil uygulamaların oluşturduğu trafiği ve gittiği adresleri tespit edebilmek için her uygulamayı açıp çeşitli basit işlemler ve hareketler yapmamız yeterli oluyor:

Bütün uygulamaların trafiğini tek tek incelediğimizde de alttaki durum karşımıza çıkıyor:

A Bankası Mobil Uygulaması

  • app.adjust.io (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • adjust.com
  • ve bankanın kendi servisleri

B Bankası Mobil Uygulaması

  • graph.facebook.com (Facebook’taki graph özelliği ile müşteri eşletirmesi yapılıyor). Kullanıcılardan izin alınmadan asla yapılmaması gereken bir bağlantıdır.
  • ve bankanın kendi servisleri

C Bankası Mobil Uygulaması

  • app.adjust.com (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • play.google.com (Google Play store hizmeti)
  • ve bankanın kendi servisleri

D Bankası Mobil Uygulaması

  • app.adjust.com ve app.adjust.io (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • def.webrootmobile.com (antivirüs ürünü Webroot’un servisi)
  • e.crashlytics.com (uygulama çökme raporlarını kullanıcı telefonundan meta veriler çekerek toplar)
  • en az 12 tane farklı amazonaws.com bulut hizmetine sürekli yapılan bağlantı
  • *.2o7.net (Adobe’nin online reklam ve pazarlama platformu)
  • graph.facebook.com (Facebook’taki graph özelliği ile müşteri eşletirmesi yapılıyor). Kullanıcılardan izin alınmadan asla yapılmaması gereken bir bağlantıdır.
  • www.googleadservices.com (Google’ın online reklam hizmetleri servisidir)
  • ve bankanın kendi servisleri

E Bankası Mobil Uygulaması

  • assets.adobedtm.com (Adobe’nin online reklam ve pazarlama platformu)
  • e.crashlytics.com ve settings.crashlytics.com (uygulama çökme raporlarını kullanıcı telefonundan meta veriler çekerek toplar)
  • *.omtrdc.net (Adobe’nin online reklam ve pazarlama platformu)
  • *.xtify.com (IBM’in mobil bildirim servisi)
  • ve bankanın kendi servisleri

F Bankası Mobil Uygulaması

  • 213.162.149.172 (Almanya kökenli ve ne olduğu tam olarak belli olmayan bir adres)
  • app.adjust.com ve app.adjust.io (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • *.amazonaws.com ve cloudfront.net bulut hizmetlerine giden bağlantılar
  • *.trusteer.com (IBM’in bir gelişmiş malware ve fraud engelleme hizmeti)
  • ve bankanın kendi servisleri

G Bankası Mobil Uygulaması

  • app.adjust.com ve app.adjust.io (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • *.mobileapptracking.com (pazarlama ve reklam amaçlı kullanıcı/müşteri takip etme servisi)
  • e.crashlytics.com ve settings.crashlytics.com (uygulama çökme raporlarını kullanıcı telefonundan meta veriler çekerek toplar)
  • *.amazonaws.com bulut hizmetlerine sürekli yapılan bağlantılar
  • ve bankanın kendi servisleri

H Bankası Mobil Uygulaması

  • app.adjust.com (kullanıcı analitiği için kullanılır ve genelde reklam için davranışsal profil çıkarır)
  • e.crashlytics.com ve settings.crashlytics.com (uygulama çökme raporlarını kullanıcı telefonundan meta veriler çekerek toplar)
  • ve bankanın kendi servisleri

 

Mobil bankacılık uygulamalarının internette farklı noktalara bankacılık hizmetleri dışında pazarlama, reklam veya analiz hizmetleri için dahi olsa müşteri bilgisi veya meta verisini taşıma gibi amaçları olmamalı. Ya da eğer bu tür işlemler için önceden müşterinden izin alınacaksa da, bunda varsa eğer bir BDDK engeli dışında herhangi bir sorun olduğunu söyleyemeyiz. Ama graph.facebook.com gibi en başta bu yazının yazarının hiç hazzetmediği bir platforma bilgi eşleştirmesi için kişisel meta bilgilerinin (ad-soyad, e-posta adresi vs) gönderiliyor olabileceğini düşünmek bile çok rahatsız edici bir durum. Bu yüzden ya SRT AppGuard benzeri uygulamalarla cihazlarınızdaki mobil uygulamaların internet bağlantılarını ve izinlerini kısıtlayacaksınız ya da yetkili merciler nezdinde gerçek bankacılık faaliyetleri dışındaki analitik, analiz, pazarlama ve reklam işlerinin engellenmesi için teşebbüste bulunmanız gerekecektir. Tabii bu noktada müşteri mahremiyeti ve bilgi güvenliği adına BDDK tarzı yapıların çıkaracağı çeşitli düzenlemeler oldukça önemli olacaktır…

M. MEKİN PESEN

YAZAR:

Özel bir kurumda kıdemli bilgi güvenliği uzmanı olarak çalışan M. Mekin Pesen, Elektrik-Elektronik Mühendisliği lisans ve Bilgi Güvenliği Mühendisliği yüksek lisans diplomaları ile CISSP, ECSA, CEH ve CCSA sertifikalarına sahiptir. Kendisi siber güvenlik ve bilgi güvenliği genel başlıkları altında çeşitli konularda uzmanlaşmaktadır.
    

E-Bültene Kaydolun, Makaleler Posta Kutunuza Gelsin

Bu yazıyı başka hiçbir yerde ve şekilde yayınlayamazsınız ve/veya kullanamazsınız. Bu yazıyı kullanmanız, başka herhangi bir uyarıya gerek kalmadan her türlü hukuki sonucu daha en baştan kabul ettiğiniz manasına gelir.