Logo Eventkampus
Perpustakaan judul masih dalam tahap pengembangan, admin siap menampung kritik dan saran
Analisis Self Modifying Code Menggunakan Dynamic Binary Instrumentation
Teguh Prima Alko NIM. (2016) | Skripsi | Teknik Informatika
Bagikan
Ringkasan
Self-Modifying Code merupakan sebuah teknik pemograman yang sering digunakan untuk perangkat lunak komersil dalam melindungi lisensi dari pembajakan serta malicious software dalam menyembunyikan eksistensinya. Hal tersebut menjadi tantangan pada dunia reverse engineering karena sulit dianalisis secara statis. Adapun masalah utama dari Self-Modifying Code adalah subtitusi fungsi yang hanya dapat diketahui ketika eksekusi. Aplikasi debugger umumnya hanya dapat mengontrol arus data yang tidak berbeda sikap instruksi pada saat setiap kali program mendapatkan eksepsi debug. Proses debugging secara manual juga memakan waktu lama karena terpaku pada panjang kode instruksi. Hal ini dapat diatasi dengan menanamkan kode monitoring secara dinamis pada program atau dikenal sebagai Dynamic Binary Instrumentation. Sistem DBI dibangun menggunakan framework dari DynamoRIO yang memenuhi kebetuhan untuk Self-Modifying Code seperti menganalisis tingkah lakunya, analisis keluaran yang mudah dimengerti berupa representasi atau bahasa pemograman tingkat menengah dan analisis akurasi yang tepat atau jauh dari false positive. Berdasarkan hasil analisis dan implementasi yang telah dilakukan, maka dihasilkan plugin untuk DynamoRIO. Setelah plugin tersebut dibangun, maka dilakukan pengujian terhadap program Self-Modifying Code. Adapun hasil yang didapat, plugin ini dapat mempermudah reverse engineer untuk menghadapi kasus program Self-Modifying Code karena menyediakan keluaran yang sederhana.
Ringkasan Alternatif
Self-Modifying Code is a form of programming technique which is mainly used by commercial software for protecting their license and malicious software to hide their presence. It makes a challenge for reverse engineering world because hard to analyze statically. The main problem is Self-Modifying Code create subtitution function where can be found in runtime only. Debugger applications these days only control data flow which instructions can not be changed every time while program get debug exception. Manual Debugging process take longer as well depended on instruction path length. This case can be solved with injecting monitoring code dynamically to program or the terminology known as Dynamic Binary Instrumentation. DBI system developed using DynamoRIO framework which fills requirement for Self-Modifying Code such as behavior analysis, simple output analysis by intermediate representation or programming language and accuracy analysis to avoid false positives. Based on analysis and implementation which has been done, it produces a plugin for DynamoRIO. After plugin has been built, it continues with an examination test for Self-Modifying Program. The result can give reverse engineer easy to understand and deal with Self-Modifying Program because it uses human readable output.
Sumber