11.4.1. Statik Analiz Yaklaşımı
Statik analiz yöntemi, uygulama çalıştırılmadan kötücül kodların
tespit edilebilmesinde kullanılan tersine mühendislik yöntemidir.
Bu yöntemde; çalıştırılabilir modüllere ait büyük veriler (örneğin,
M O B İ L C İ H A Z L A R D A S İ B E R G Ü V E N L İ K
327
Windows işletim sistemi için taşınabilir çalıştırılabilir içerikler), ma-
kine kod komutları, binary veriler (görüntüler, ikonlar, karakter di-
zinleri vb.) gibi veriler kullanılarak bir analiz gerçekleştirilir [31]. Bu
işlem yapılırken kötücül uygulama içerisinde bazı bilgiler çıkarıla-
rak analiz, bu bilgiler üzerinde yapılmaktadır. Uygulamanın süreç-
leri arasında kullanılan API istekleri bu bilgilere örnek olarak veri-
lebilir [32]. Mevcut statik analiz yöntemleri faklı tiplerdeki kötücül
yazılımların tespit edilmesine ve sınıflandırılmasına odaklanmıştır.
Literatürde statik analiz yöntemini kullanarak kötücül yazılım tes-
piti yapılan birçok çalışma bulunmaktadır [33, 34, 35, 36].
Kötücül yazılım tespiti uygulamalarında, çok hızlı bir yöntem ol-
ması ve analiz için düşük sistem gereksinimlerine ihtiyaç duyması
statik analiz yöntemini araştırmacılar arasında popüler yapmıştır
[31]. Çalışma süresi olarak dinamik analiz ile karşılaştırıldığında,
statik analiz ile çok daha hızlı sonuçlar elde edilebilmektedir. An-
cak, karıştırma yöntemlerinin kullanılması kötücül kodların tespit
edilmesi veya sınıflandırılması için tek başına yeterli olmamaktadır
[37].
Statik Analiz Türleri;
- İmza tabanlı analiz (signature based analysis): İmza tabanlı ana-
lizde analiz edilen uygulamalardan elde edilen analizler, imza
veri tabanında saklanarak öğrenme sürekli hale getirilmiş olur.
Bu analiz yönteminde genelde merkezi bir sunucu ve imza
veri tabanı kullanılır. Merkezi sunucu analiz ve koruma süreç-
lerinde görev alırken, imza veri tabanı elde edilen analizlerin
depolanmasını ve sonraki analizlerde tekrar kullanılmasını sağ-
lamaktadır [38].
- İzin tabanlı analiz (permission based analysis): Android uygu-
lamalarının analizinde, uygulama yükleme öncesi ve sonrasında
istenen izinler önemli rol oynamaktadır. Uygulamaların yüklen-
mesi esnasında istenen izinler, AndroidManifest.xml dosyasında
gösterilmektedir. İstenen bu izinlere erişim verilip verilmemesi
kullanıcıya bağlıdır. Ancak bazı uygulamalar bu izinler verilme-
diğinde işlevini yerine getiremeyeceği için yükleme sürecini son-
landırabilmektedir [39].
MUSTAFA ALKAN - İ. ALPER DOĞRU - MURAT DÖRTERLER - RAMİ URFALIOĞLU - ÇAĞRI SÜMER
328
Dostları ilə paylaş: |