Please use this identifier to cite or link to this item:
Design of an Architecture Extension for Buffer Overflow Prevention
|Authors: ||Chi-Wei Luo|
|Contributors: ||NTOU:Department of Electrical Engineering|
software securtiy;buffer overflow;x86 architecture;return address;stack
|Issue Date: ||2011-07-04
|Abstract: ||摘要 隨著軟體的規模以及複雜度日益增加，軟體漏洞被發現的數目愈來愈多，所造成的電腦安全威脅也日益升高。近幾年來，對軟體安全危害最烈的就是緩衝區溢位問題。緩衝區溢位攻擊是利用軟體在宣告和使用某些區域變數時沒有做邊界檢查的漏洞進行攻擊，例如將記憶體堆疊內存放的回返位址覆寫，並注入攻擊程式，因而得以奪取執行權限，竊取資料，或重新格式化整個系統等。由於緩衝區溢位攻擊對電腦安全所造成的嚴重危害，已有不少相關的研究與防治措施被提出。本論文是以Intel x86的架構為基礎，設計一個緩衝區溢位的預防機制。我們針對處理器搬移指令作條件式檢查，以確保儲存回返位址的記憶體位置不會被覆寫，因而達到防堵緩衝區溢位之安全漏洞。 關鍵字：軟體安全，緩衝區溢位，x86架構，回返位址，記憶體堆疊。|
Abstract With the ever increasing size and complexity of software, the number of software vulnerabilities which are exposed continues to grow at a troublesome pace. As a consequence, software security has become a major concern of not only the IT professionals, but also of the general public. Among the many software security attacks the world has confronted in recent years, the notorious “buffer overflow” attack scheme is arguably the most vicious and damaging of all. The buffer overflow attack works primarily by exploiting the absence of boundary detection when programs declare and use local variables. A malicious attacker using the buffer overflow scheme is often able to overwrite the return addresses stored in the stack and inject a piece of code to obtain execution authorization, steal data, or reformat the entire file system, etc. Due to the extensive damages it has inflicted, many prevention measures designed to stop buffer overflow have been proposed with various levels of effectiveness. In this paper, an x86 architecture specific, new defensive mechanism is proposed to prevent the return addresses of functions from being overwritten. We propose an extension to the processor architecture in which conditional checks on the MOV instructions are performed to ensure that the return addresses in the memory are secure from been written over. Our verification shows that the proposed mechanism is effective in guarding a system against buffer overflow attacks. Keywords: Software Security, Buffer Overflow, x86 Architecture, Return Address, Stack.
|Appears in Collections:||[電機工程學系] 博碩士論文|
Files in This Item:
All items in NTOUR are protected by copyright, with all rights reserved.