Androıd uygulama kurulum süreci için verimli bir evrimsel tabanlı fuzz testi
An efficient evolutionary-based fuzzing for android application installation process
Yazar: VEYSEL HATAŞ
Danışman: DOÇ. DR. SEVİL ŞEN AKAGÜNDÜZ
Hacettepe Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2018
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Uygulama güvenliğini sağlamak için uygulama geliştirme ve test aşamalarında kullanılan kaynak kod analizi temelli otomatik araçlar yetersiz kalmaktadır. Bu nedenle araştırmacılar,  uygulamalar üzerinde zafiyet analizi yapmak ve yazılım hatalarını  ortaya çıkarmak için fuzz testi yöntemlerine başvurmaktadırlar. İyi konfigüre edilmiş fuzz testi güvenlik araçları ile yapılan açık kutu ve/veya kapalı kutu fuzz testleri ve tersine mühendislik analizleri sayesinde birçok ciddi güvenlik açığı ortaya çıkartılıp, gerekli yamalar zamanında yapılabilmektedir. 
Son yıllarda, mobil platformun gelişmesi ile mobil uygulamalar ve Android işletim sistemi üzerinde fuzz testleri yapılmaya başlanmıştır.  Şu ana kadar yapılmış olan fuzz testi çalışmalarının çoğu uygulama seviyesinde ve Android uygulamalarının grafik arayüzleri hedef alınarak gerçekleştirilmişlerdir. Daha geniş kullanıcı kitlesini etkileyen ve kritik olan işletim sistemi seviyesindeki kütüphanelerdeki zafiyetlerin tespiti için yapılan çalışmalar çok yenidir. 
Bu tez çalışmasında, Android işletim sistemindeki güvenlik zafiyetleri bulmak için yeni bir fuzz testi yöntemi önerilmiştir. Önerilen genetik algoritma tabanlı kapalı kutu fuzz testi yöntemi ile Android sistemindeki zafiyetleri otomatik olarak bulmak için bir platform sunulmuş ve benzer çalışmalar ile karşılaştırılmıştır. Önerilen yöntem ile yeni güvenlik zafiyetlerinin, diğer çalışmalardan çok daha kısa sürede bulunabildiği gösterilmiştir.

Abstract:
Automated tools based on source code analysis used in application development and test phases are insufficient to ensure application security. For this reason, researchers also resort to fuzz testing methods to analyze vulnerability in applications and to reveal software faults. With a well-configured fuzz test security tools and white-box and/or black-box fuzz tests and reverse engineering analysis, many serious security vulnerabilities can be uncovered and the required patches made in a timely manner.
In recent years, with the development of mobile platform, fuzz tests have been started on mobile applications and Android operating system. Much of the fuzz testing work that has been done so far is implemented at the application level and GUI based. The work done to determine vulnerabilities in operating system level libraries that affect and critical the wider user base is very new. 
In this thesis, a new fuzzy test method is proposed to find the security vulnerabilities in the Android operating system. A proposed genetic algorithm-based black-box fuzz test method is presented as a platform for automatically detecting vulnerabilities in the Android system and compared with similar studies. The proposed method has shown that new security vulnerabilities can be found in a much shorter time than other studies.