![]() |
以作者查詢圖書館館藏 、以作者查詢臺灣博碩士 、以作者查詢全國書目 、勘誤回報 、線上人數:8 、訪客IP:18.191.120.131
姓名 曾俊翰(Chun-han Tseng) 查詢紙本館藏 畢業系所 資訊工程學系 論文名稱 入侵偵測系統:使用以函數為基礎的系統呼叫序列
(Intrusion Detection Using Function-based Sequences of System Calls)相關論文 檔案 [Endnote RIS 格式]
[Bibtex 格式]
[相關文章]
[文章引用]
[完整記錄]
[館藏目錄]
[檢視]
[下載]
- 本電子論文使用權限為同意立即開放。
- 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
- 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
摘要(中) 網路安全問題每年造成的達數十億美元損失。隨著網際網路的興起,我們所使用的電腦軟體也充斥著安全漏洞,電腦系統的安全議題也在此環境中變的越來越重要。儘管『緩衝區溢位』(Buffer Overflows)的軟體漏洞已經被發現多年,現今的電腦系統仍然持續的受到這類型的攻擊。
本篇論文提出一個改良過的入侵偵測系統(Intrusion Detection System),利用以函數為基礎的系統呼叫序列(Function-based Sequences of System Call)來偵測程式的異常行為(Abnormal Behavior)。這個方法尤其對『緩衝區溢位攻擊』特別有效。除此之外,我們還使用了一種名為『字尾樹』(Suffix Tree)的資料結構來改善偵測的效率。實驗結果顯示我們的方法不管是在攻擊的阻擋率或者是效能上都比改善前的方法好。摘要(英) Computer and network security problems cause billions in damage every year. As the use of Internet, modern computer systems are plagued from security vulnerabilities. Security issues have become more and more important in such environment. Although the concept of buffer overflows had been known for years, modern computer systems suffered from these kinds of security weaknesses constantly.
This article presents an improved method for intrusion detection, which detect abnormal behaviors of a process using function-based sequences of system calls. The method is especially effective in detecting Buffer Overflow Attacks. Our method also stored these sequences through a data structure called Suffix Tree, which improved our system performance a lot. Experiments show that our method has better effectiveness and performance than previous methods.關鍵字(中) ★ 以函數為基礎的系統呼叫序列
★ 入侵偵測
★ 緩衝區溢位
★ 異常行為
★ 字尾樹關鍵字(英) ★ Suffix Tree
★ Abnormal Behavior
★ Function-based Sequences of System Calls
★ Intrusion Detection
★ Buffer Overflows論文目次 Table of Contents
Chinese Abstract••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• i
English Abstract••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• ii
Table of Contents••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• iii
List of Figures•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• v
Chapter 1 Introduction
1.1 Motivation: Software Vulnerability••••••••••••••••••••••••••••••••••••••••••••• 1
1.2 An Overview to our Approach•••••••••••••••••••••••••••••••••••••••••••••••••••• 1
1.3 Paper Organization•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 2
Chapter 2 Background and Related Work
2.1 An Overview of Buffer Overflow Attack•••••••••••••••••••••••••••••••••••• 3
2.2 Some Bases for 80x86 Architecture and Assembly Language•••• 3
2.2.1 Stack Segment •••••••••••••••••••••••••••••••••••••••••••••••••••••••• 3
2.2.2 EBP register••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 6
2.2.3 The Local Variables in the Function•••••••••••••••••••••••• 8
2.3 The Concept of Buffer Overflow Attack••••••••••••••••••••••••••••••••••••• 10
2.4 Various Defense Methods•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 13
2.5 Intrusion Detection System•••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 13
2.6 A Review to Forrest et al.’s Approach••••••••••••••••••••••••••••••••••••••••• 15
2.7 Other IDS Models•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 16
2.8 Suffix Tree••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 17
Chapter 3 Methodology
3.1 System Architecture••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 19
3.2 Pattern Extraction•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 20
3.3 Pattern Matching••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 22
3.3.1 Construction of Pattern Trees•••••••••••••••••••••••••••••••••• 22
3.3.2 Expression of Patterns••••••••••••••••••••••••••••••••••••••••••••• 26
3.3.3 Metric••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 28
Chapter 4 Effectiveness and Performance
4.1 Experimental Design•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 37
4.2 Effectiveness•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 37
4.3 Performance••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 38
4.3.1 Time of Tree Construction••••••••••••••••••••••••••••••••••••••• 38
4.3.2 Time of Pattern Matching•••••••••••••••••••••••••••••••••••••••• 39
Chapter 5 Implementation Issues
5.1 Getting System Call Information from a Running Program••••••• • 40
5.2 Function Instrumentation••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 41
Chapter 6 Conclusions••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 44
References•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 45參考文獻 References
[1] W. Lee and S. Stolfo, “Data Mining Approaches for Intrusion Detection”, 7th USENIX Security Symposium, San Antonio, TX, 1998.
[2] S. Forrest, S.A. Hofmeyr and A. Somayaji, “A Sense of Self for UNIX Processes”, in: Proceedings of the 1996 IEEE Symposium on Research in Security and Privacy, Los Alamitos, CA, IEEE Computer Society Press, 1996.
[3] S.A. Hofmeyr, A. Somayaji, and S. Forrest, “Intrusion Detection System Using Sequences of System Calls”, Journal of Computer Security, 6(3), pp. 151-180, 1998.
[4] Mudge, “How to Write Buffer Overflows” http://reactor-core.org/overflow-howto.html, 1995
[5] Nathan Smith, “Stack Smashing Vulnerabilities in the UNIX Operating System” http://www.weycrest.co.uk/information/infosec/info/security/buffer-alt.pdf, 1997.
[6] Tzi-Cker Chiveh and Fu-Hau Hsu. “RAD: A compile-time solution to Buffer Overflow Attacks”. Proceeding of 21st International conference on Distributed Computing system, 2001
[7] A. Wespi, M. Dacier and H. Debar, “Intrusion Detection Using Variable-Length Audit Trail Patterns”, 3rd International Workshop on the Recent Advances in Intrusion Detection, LNCS 1907, Springer, pp. 110-129, 2000.
[8] D. Wagner and D. Dean, “Intrusion Detection via Static Analysis”, IEEE Symposium on Security and Privacy, Oakland, CA, 2001.
[9] Richard Jones, “Backwards-compatible bounds checking for arrays and pointers in C programs”. Proceedings of the Third International Workshop on Automated Debugging, 1997.
[10] Crispin Cowan et.al, “Stack Guard: Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks”, Proceedings of the 7th USENIX Security Symposium, 1998.
[11] Sandeep Bhatkar et.al, “Address Obfuscation: an Efficient Approach to Combat a Broad Range of Memory Error Exploits”, Proceedings of the 12th conference on USENIX Security Symposium, 2003.
[12] Wenke Lee et. al, “Anomaly Detection Using Call Stack Information”, Proceedings of the IEEE Symposium on Security and Privacy, 2003.
[13] P. Weiner, “Linear Pattern Matching Algorithm”, In Proceedings of 14th Annual IEEE Symposium on Switching and Automata Theory, 1973.
[14] Edward M. McCreight, “A Space-Economical Suffix Tree Construction Algorithm”, In Proceedings of Journal of ACM 23, 1976.指導教授 蔡孟峰(Meng-feng Tsai) 審核日期 2008-7-20 推文 plurk
funp
live
udn
HD
myshare
netvibes
friend
youpush
delicious
baidu
網路書籤 Google bookmarks
del.icio.us
hemidemi
myshare