Master'sOpen Access

İkili yürütülebilirlerin dönüşe dayalı programlamaya karşı bağışıklandırılması

2010
0 views
0 downloads
Advisor: Yrd. Doç. Dr. Ali Aydın Selçuk

Abstract (EN)

Despite the numerous prevention and protection mechanisms that have been introducedinto modern operating systems, the exploitation of memory corruption vulnerabilitiesstill represents a serious threat to the security of software systems and networks. Arecent exploitation technique, called Return-Oriented Programming (ROP), has latelyattracted a considerable attention from academia.ROP attacks utilize short code sequences each ending with a free-branch instruction,i.e. an instruction that allows the attacker to control the execution flow. Identifyingsuch sequences, or gadgets, available in binary executables and chaining themtogether, it is possible to perform arbitrary computations. Past research on the topichas mostly focused on refining the original attack technique, or on proposing partialsolutions that target only particular variants of the attack.In this work, we present a compiler-based approach that represents the first practicalsolution against any possible form of ROP. Our solution is able to protect thealigned free-branch instructions to prevent them from being misused by an attacker,and to eliminate all unaligned free-branch instructions inside a binary executable. Wedeveloped a prototype based on our approach for the x86 architecture, and evaluatedit by compiling GNU libc and a number of real-world applications. The results ofthe experiments demonstrate that our solution is able to prevent any form of return-orientedprogramming attack.

Author

Dr. Kaan Onarlıoğlu

How to Cite

Kaan Onarlıoğlu (Master Thesis). İkili yürütülebilirlerin dönüşe dayalı programlamaya karşı bağışıklandırılması, 2010, Bilkent University.

Keywords

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from Bilkent University