INTEL İŞLEMCİLERE YÖNELİK BİR UNASSEMBLER TASARIMI
Öz
Yazılım tersine mühendisliği; yazılım kodlarının donanım bileşenleri üzerindeki etkilerini, işlevlerini, davranış ve belgelerini analiz ederek sistem soyutlarını ve tasarım bilgilerini oluşturan bir tersine mühendislik disiplinidir. Çevirici (assembler), tersine çevirici (unassembler), sanal simülatörler ve hata ayıklayıcılar (debugger) birer yazılım tersine mühendislik araçlarıdır. Bu çalışmada, Intel mikroişlemci komut kümesine ait farklı uzunluklardaki makine kodlarını sembolik dile dönüştüren bir tersine çevirici uygulaması geliştirilmiştir. Bu uygulama, 32-bitlik Intel işlemci mimarisinde kullanılan, aynı zamanda derleyicilere yönelik, sembolik dilden makine kodlarına çevrimde, güncellenebilen ve belli bir hiyerarşi sunan açık kaynak kodlu, tablo tabanlı satır-içi kod çevrimi yapabilen bir yazılımdır. Hem assembler hem de unassembler olarak çalışan bu yazılım, sadece belgelendirme ve açıklama mahiyetindeki mevcut tablo tabanlı unassembler uygulamalarına farklı bir bakış açısı ve derinlik getirmiştir.
Anahtar Kelimeler
Kaynakça
- Chikofsky, E.J. ve Cross J.H., “Reverse Engineering and Design Recovery: A Taxonomy”, IEEE Software, Cilt 7, No 1, 13-17, 1990.
- Younis, M.B, ve Tutunji T., “Reverse Engineering Course at Philadelphia University in Jordan”, European Journal of Engineering Education, Cilt 37, No 1, 83-95, 2012.
- Ali, M.R., “Why Teach Reverse Engineering”, ACM SIGSOFT Software Engineering Notes, Cilt 30, No 4, 1-4, 2005.
- Arbone, C., Ditu, B., Craciun, S. ve Badea, D., “Model-Driven Inline Assembler Generator for Retargetable Compilers”, Control Systems and Computer Science (CSCS), 2013 19th International Conference on Digital Object Identifier, Bucharest, Romania, 71-76, 2013.
- Golden, G. R., “A Highly Immersive Approach to Teaching Reverse Engineering”, Proceedings of the 2nd Conference on Cyber Security Experimentation and Test, Berkeley, CA, USA 1-1, 2009.
- Paleari, R., Martignoni, L.M., Roglia, G.F. ve Bruschi, D., “N-version Disassembly: Differential Testing of x86 Unassemblers”, Proceedings of the 19th International symposium on Software testing and analysis (ISSTA), Trento, Italy, 265-274, 2010.
- Jamthagen, C., Lantz, P. ve Hell, M., “A New Instruction Overlapping Technique for Anti-disassembly and Obfuscation of x86 Binaries”, Proceedings of the 2013 IEEE Workshop on Anti-malware Testing Research (WATER’13), Montreal, Canada, 25-33, 2013.
- Topaloğlu, N. ve Gürdal, O., “A Highly Interactive PC Based Simulator Tool for Teaching Microprocessor Architecture and Assembly Language Programming”, Journal of Elektronika ir Elektrotechnika, Cilt 98, No 2, 53-58, 2010.
Ayrıntılar
Birincil Dil
Türkçe
Konular
-
Bölüm
-
Yayımlanma Tarihi
31 Mart 2015
Gönderilme Tarihi
31 Mart 2015
Kabul Tarihi
-
Yayımlandığı Sayı
Yıl 2015 Cilt: 30 Sayı: 1