Java programlama çevrelerinde süreç gözetleme ve bir saldırı tespit sisteminin gerçeklenmesi
Process tracing with java programming language and develop an intrusion detection system with java
Yazar: MEHMET EMİN TENEKECİ
Danışman: YRD. DOÇ. DR. HÜSEYİN PEHLİVAN
Karadeniz Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Yazılım Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2008
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
UNIX ve türevi işletim sistemlerinde bulunan süreç izleme mekanizmaları sistemsaldırılarının tespiti ve programların davranışının modellenmesi gibi çok çeşitli amaçlariçin yaygın olarak kullanılırlar. Birçok bilimsel çalışmada süreç eylemlerinin belirlenmesiizleme mekanizmaları yardımıyla yakalanan sistem çağrıları üzerine dayandırılır.Gerçekten sistem çağrıları dizisi ve onların verileri analiz edilerek izlenen sürecingerçekleştireceği eylemlerin ortaya çıkarılması mümkündür. Süreçlerin yönetimi doğrudanişletim sistemleri tarafından yapıldığı için bir süreç izleme faaliyeti işletim sistemi ileişbirliğine ihtiyaç duyar. Bununla birlikte, günümüz UNIX sistemleri bu işbirliğinin sadeceC/C++ programlama çevrelerinden yapılmasını desteklemektedirler.Bu çalışmanın amacı süreç izleme işleminin Java programlama çevresi ilegerçekleştirilebilmesidir. UNIX işletim sistemlerinde süreç izleme gereksinimleri içinkullanılan /proc dosya sisteminin Java programlama çevresine entegrasyonunu sağlayan birçatı geliştirilmiştir. Bir sürecin izlenebilmesi, işletim sistemiyle etkileşimini, yani yerelsistem fonksiyonlarının kullanımını kapsadığı için süreç izleyen programların yazımı ileridüzeyde sistem programlama deneyimi gerektirmektedir. Diğer yandan, modern UNIXsistemlerinde süreç izleme gereksinimleri sadece C/C++ programlama çevrelerindenkarşılanabilmektedir. Geliştirilen çatıda Java tarafından tedarik edilen JNI yardımıylaC/C++ çevrelerine erişim sağlanarak süreç izleme mekanizmasının kolay bir kullanımıgerçekleştirilmiştir. Bunun sonucu olarak, her bir programcı kendi ihtiyacına göre UNIXsistem süreçlerinin farklı denetimlerini icra eden programları Java dilindekodlayabilecektir.Sistem çağrılarının kullanıldığı en önemli alanlardan birisi saldırı tespit sistemleridir.Geliştirilen çatıyı kullanarak basit bir saldırı tespit sistemi Java ortamındagerçekleştirilmiştir.

Abstract:
Process tracing mechanisms which are provided by UNIX and its derivative operatingsystems are extensively used for many various purposes such as attack&intrusion detectionand model behavior of programs. In many academic researches, the determination ofprocess activities are based on system calls which can be catched through the tracingmechanisms. Indeed, it is possible that the activities the traced process is to carry out isdetermined by analyzing system calls sequences and their data. Since the processes executeunder the control of the operating system, a process monitoring task requires collaborationwith the operating system. However, modern UNIX operating systems support thiscollaboration only through C/C++ programming environments.The aim of this study is to ensure that process tracing tasks can be accomplishedthrough Java programming environment. A framework is developed, in order to integratethe /proc file system used for process tracing requirements in UNIX operating systems intoJava programming environment. The task of process tracing involves the experience ofadvanced system programming because it needs an interaction with the operating system,that is, the usage of the local system primitives. On the other hand, in modern UNIXsystems, the process tracing requirements are provided only through C/C++ environments.In the developed framework, an easy use of the process tracing mechanism is made byaccessing C/C++ environments via the JNI provided by Java language. Thus, eachprogrammer will be able to code programs in Java language, which evaluate the activitiesof UNIX processes from different perspectives.One of the most important study fields in which system calls are traced and evaluatedis intrusion detection systems. Using the developed framework, a simple intrusiondetection system is implemented in Java environment.