植基於虛擬化技術之網路安全縱深防禦架構
全文
(2) 植基於虛擬化技術之網路安全縱深防禦架構 Network Security Defense-in-Depth Architecture based on Virtualization Technology. 研 究 生:李長霖 指導教授:蔡文能. Student:Chang-Lin Lee Advisor:Wen-Nung Tsai. 國 立 交 通 大 學 資訊學院 資訊學程 碩 士 論 文. A Thesis Submitted to College of Computer Science National Chiao Tung University in partial Fulfillment of the Requirements for the Degree of Master of Science in Computer Science June 2011. Hsinchu, Taiwan, Republic of China. 中華民國一百年六月. ii.
(3) 植. 基. 於. 虛. 擬. 化. 技. 術. 之. 網. 路. 安. 學生:李長霖. 國 立 交 通 大 學. 全. 縱. 深. 防. 禦. 架. 構. 指導教授:蔡文能教授. 資 訊 學 院 摘. 資 訊 學 程 碩 士 班. 要. IBM 公司在 1960 年發展主機虛擬化技術以來,虛擬化技術已經變成愈 來愈流行。之後不少的學術或是商業研究紛紛提出不少虛擬化技術之產品 及應用,像是 VMWare 公司所推出的 ESX Server 以及 Microsoft 公司所推 出的 Hyper-V 技術等,當愈來愈多虛擬化技術的應用被提出後,我們開始 思考如何將其運用在網路安全防護架構部署上。 本篇論文所提出的一個植基於虛擬化技術之網路安全縱深防禦架構解 決方案,可以有效的降低企業在部署縱深防禦架構上之成本並且提高電腦 資源之使用率。另外本篇論文也將針對傳統縱深防禦架構、整合威脅管理 系統及本研究所提之虛擬化縱深防禦架構做一綜合性的深入研究,並比較 其優缺點,另外也針對上述架構進行網路效能測試之分析探討。冀望本篇 論文能對虛擬化網路安全相關研究以及企業內部的縱深防禦建置提供貢 獻。. 關鍵字:縱深防禦、虛擬化、效能測試、網路安全。. iii.
(4) Network Security Defense-in-Depth Architecture based on Virtualization Technology. Student:Chang-Lin Lee. Advisor:Prof. Wen-Nung Tsai. Degree Program of Computer Science National Chiao Tung University ABSTRACT In 1960, IBM mainframe Virtualization Technology has been developed, it has become more popular. Many academic or commercial research have developed many virtualization products and applications, such as VMWare corporation has released VMWare ESX Server and Microsoft Corporation has released a Hyper-V technology.When more Virtualization Technology is released, we started thinking about how to use the network security architecture deployment. In this paper, we propose a solution “Network Security Defense-in-Depth Architecture based on Virtualization Technology” that can effectively reduce cost of the deployment of defense in depth and increase the usage of computer resources. Further, this paper will also compare their advantages and disadvantages for the traditional defense in depth architecture, Unified threat management and our solution. While also analysis their network performance. We hope this paper can provide a contribution in virtualization network security research and the defense in depth research.. Keywords:Defense-in-Depth,Virtualization,Performance Benchmark, Network Security.. iv.
(5) 誌. 謝. 經過了交通大學資訊學院資訊組碩士班二年的努力,克服了種種困難, 終於完成了我的碩士論文。這篇論文之所以能順利的完成,首先要感謝我 的指導教授 ─ 蔡文能教授。由於他不辭辛勞地在我論文寫作及口試期 間,給予我知識上的啟發以及論文撰寫上的指導,我才能夠順利的拿到碩 士學位。還有學長及宣佑、嬿竹、彥皓及學弟兆民的熱心討論與幫忙,這 篇論文才能順利的完成,還要感謝資策會的長官同事的幫忙,很多硬體資 源都是和公司借來實測的,如果沒有這些資源在手,相信我的實驗是無法 做到完善的,最後感謝我的家人及未婚妻辰妘在背後的默默支持,使我無 後顧之憂能夠順利完成學業。. v.
(6) 目. 錄. 中文提要 ............................................................................................................................... iii 英文提要 ............................................................................................................................... iv 誌謝 ................................................................................................................................ v 目錄 ............................................................................................................................... vi 表目錄 ............................................................................................................................. viii 圖目錄 ............................................................................................................................... ix 第一章 緒論(Introduction) .................................................................................................. 1 1.1. 研究動機與目的 .................................................................................................... 2 1.2. 研究範圍 ................................................................................................................ 2 1.3. 研究架構 ................................................................................................................ 3 第二章 背景知識(Background) .......................................................................................... 4 2.1. 常見網路安全攻擊手法 ........................................................................................ 4 2.2. 網路安全防護機制 ................................................................................................ 8 2.2.1. 防火牆系統(Firewall System) ................................................................... 8 2.2.2. 入侵偵測/防禦系統(Intrusion Detection/Prevention System) ................ 11 2.2.3. 防毒牆系統(Viruswall System) ............................................................... 13 2.2.4. 整合式威脅管理系統(Unified Threat Management) .............................. 14 2.3. 縱深防禦機制 ...................................................................................................... 15 2.4. 虛擬化技術 .......................................................................................................... 16 第三章 相關研究(Related Researches) ............................................................................ 19 3.1. 網路安全縱深防禦架構之相關研究 .................................................................. 19 3.2. 虛擬化技術之相關研究 ...................................................................................... 24 3.3. 第四章 . 網路效能分析之相關研究 .................................................................................. 29 植基於虛擬化技術之網路安全縱深防禦架構設計(Network Security. Defense-in-Depth Architecture Design based on Virtualization Technology) ......................... 33 4.1. 虛擬化網路安全縱深防禦架構概述 .................................................................. 33 4.2. 虛擬化網路安全縱深防禦架構功能模組 .......................................................... 35 4.3. 虛擬化網路安全縱深防禦架構建置說明 .......................................................... 41 4.4. 虛擬化網路安全縱深防禦架構功能測試 .......................................................... 53 第五章 網路安全防禦機制之效能測試分析 .................................................................. 59 5.1. 網路效能測試環境說明 ...................................................................................... 59 5.2. Iperf 效能測試分析 ............................................................................................. 61 5.3. Httperf 效能測試分析.......................................................................................... 66 5.4. 網路安全防禦機制之比較 .................................................................................. 74 第六章 結論 (Conclusion) ............................................................................................... 77 . vi.
(7) 6.1. 6.2. 參考文獻 附錄一 附錄二 附錄三. 對企業資訊基礎建設之效益說明 ...................................................................... 77 未來工作 .............................................................................................................. 78 .............................................................................................................................. 79 .............................................................................................................................. 82 .............................................................................................................................. 88 .............................................................................................................................. 96 . . vii.
(8) 表. 目. 錄. 表 1 RFC1918 定義之私人網址空間列表.............................................................................. 11 表 2 虛擬交換器用途一覽表 .................................................................................................. 36 表 3 硬體設備與作業系統規格表 .......................................................................................... 42 表 4 硬體設備與作業系統規格表 .......................................................................................... 60 表 5 網路安全防禦機制之比較 .............................................................................................. 76 表 6 iperf 網路效能測試數據-無防禦設備 ............................................................................ 88 表 7 iperf 網路效能測試數據-整合威脅管理系統 ................................................................ 89 表 8 iperf 網路效能測試數據-虛擬化縱深防禦(無 IPS) ....................................................... 90 表 9 iperf 網路效能測試數據-虛擬化縱深防禦(有 IPS) ....................................................... 92 表 10 iperf 網路效能測試數據-傳統縱深防禦(無 IPS) ......................................................... 93 表 11 iperf 網路效能測試數據-傳統縱深防禦(有 IPS) ......................................................... 94 表 12 httperf 網路效能測試數據-無防禦設備 ....................................................................... 96 表 13 httperf 網路效能測試數據-整合威脅管理系統 ........................................................... 97 表 14 httperf 網路效能測試數據-虛擬化縱深防禦(無 IPS) .................................................. 98 表 15 httperf 網路效能測試數據-虛擬化縱深防禦(有 IPS) .................................................. 99 表 16 httperf 網路效能測試數據-傳統縱深防禦(無 IPS) ...................................................... 99 表 17 httperf 網路效能測試數據-傳統縱深防禦(有 IPS) .................................................... 100 . viii.
(9) 圖. 目. 錄. 圖 1 企業防火牆架構示意圖 .................................................................................................... 9 圖 2 網路型入侵偵測系統架構示意圖 .................................................................................. 12 圖 3 網路安全縱深防禦系統架構 .......................................................................................... 15 圖 4 虛擬化平台架構示意圖 .................................................................................................. 17 圖 5 縱深防禦架構示意圖 ...................................................................................................... 20 圖 6 縱深防禦層數及攻擊執行成功所花費之時間比較圖 .................................................. 21 圖 7 深度防禦 vs 廣度防禦................................................................................................... 22 圖 8 虛網路主動防禦系統體系結構示意圖 .......................................................................... 23 圖 9 Privilege Level 示意圖..................................................................................................... 25 圖 10 Intel Vitrualization Technology 虚擬化架構示意圖 .................................................. 26 圖 11 Intel Direct I/O 虚擬化架構示意圖 .............................................................................. 28 圖 12 Linsock 委託機制 .......................................................................................................... 30 圖 13 Iperf 最大網路吞吐量比較圖 ....................................................................................... 30 圖 14 Inter-VM 網路吞吐量效能測試比較圖 ........................................................................ 31 圖 15 Httperf 回應時間比較圖................................................................................................ 32 圖 16 虛擬化網路安全縱深防禦架構 .................................................................................... 34 圖 17 虛擬化網路安全縱深防禦架構模組圖 ........................................................................ 35 圖 18 虛擬化縱深防禦網路封包流程示意圖 ........................................................................ 37 圖 19 防火牆內部運作流程圖 ................................................................................................ 38 圖 20 入侵防禦系統內部運作流程圖 .................................................................................... 39 圖 21 防毒牆內部運作流程圖 ................................................................................................ 40 圖 22 實驗環境配置圖 ............................................................................................................ 41 圖 23 虛擬化網路安全縱深防禦網路架構示意圖 ................................................................ 44 圖 24 虛擬交換器上 vlan 之設置 ........................................................................................... 45 圖 25 在虛擬交換器中的 vlan 開啟雜亂模式 ....................................................................... 46 圖 26 在 VMWare ESX Server 中的 3 台虛擬機器 ............................................................... 47 圖 27 測試網頁伺服器之連線 ................................................................................................ 54 圖 28 利用 Putty 連線網頁伺服器的 Telnet 服務 .................................................................. 54 圖 29 Iptables 防火牆日誌 ...................................................................................................... 55 圖 30 N-Stalker 執行畫面 ........................................................................................................ 56 圖 31 Snort 入侵防禦系統日誌 .............................................................................................. 57 圖 32 攻擊者電腦之惡意程式網站 ........................................................................................ 57 圖 33 HAVP 回應用戶病毒被阻擋之訊息頁面 ..................................................................... 58 圖 34 網路效能測試環境示意圖 ............................................................................................ 59 圖 35 網路效能吞吐量之比較圖 ............................................................................................ 64 . ix.
(10) 圖 36 網路效能每秒封包數之比較圖 .................................................................................... 65 圖 37 網路效能封包遺失率之比較圖 .................................................................................... 66 圖 38 網路效能每秒封包數之比較圖(15K)........................................................................... 69 圖 39 網路效能每秒封包數之比較圖(45K)........................................................................... 70 圖 40 網路效能封包回應時間之比較圖(15K)....................................................................... 71 圖 41 網路效能封包回應時間之比較圖(45K)....................................................................... 72 圖 42 網路效能 Request 封包回應之錯誤率比較圖(15K) .................................................... 72 圖 43 網路效能 Request 封包回應之錯誤率比較圖(45K) .................................................... 73 . x.
(11) 第一章 緒論(Introduction) 近幾年來,隨著軟硬體技術快速進步,且電腦網路之應用也愈趨成 熟,使得人們可隨時隨地利用電腦進行網路購物、即時查詢電子地圖、 電子信件及視訊交談等。但隨之而來的問題即是安全性問題,駭客能 夠運用各式各樣的攻擊手法竊取個人資料或是進行遠端遙控,傳統的 網路闡道式防火牆已無法有效阻擋這類型的攻擊,因此有各式各樣的 防護手法如雨後春筍般一一出現,像是入侵偵測系統、防毒牆等,目 的皆是為了降低企業用戶洩漏機密資料的風險,但是皆有其防護限 制,因此為了達到符合資訊安全三項基本特性:機密性 (Confidentiality)、完整性(Integrety)及可用性(Availability),縱深防禦 的觀念開始被運用在網路安全的防護上,其特性在於利用一層一層的 防護過濾技術,有效的將防禦線拉大,每個防護設備各司其職進行阻 擋過濾的工作,因此更能有效的阻擋攻擊事件的發生。 由於軟硬體爆炸性的成長,虛擬化技術近年來被不斷拿出來討論, 虛擬化技術能夠使資源更有效的被運用,通常網路安全防護設備常常 資源僅用到其最大資源的 20~30%,且升級擴充也不容易,如果遇到 突如其來的大量封包癱瘓攻擊,往往因單一失效點(Single Point of Failure)的問題造成企業嚴重損失,因此本論文將提出一種作法,利用 虛擬化技術建構縱深防禦架構,其優點有三,一是可有效運用資源, 二是能節省成本,包含機架空間、電力成本等,三是可符合網路安全 基本三項特性。. 1.
(12) 1.1.. 研究動機與目的. 在一個大型企業當中,通常部署著非常多的網路安全防護設備,像 是防火牆、入侵偵測系統以及防毒牆等,而本研究動機主要是因為在 管理這樣的網路常會遇到一個問題,就是機架空間不足,且電力成本 相當可觀,在現今注重綠化的世界,如果能將這些防護設備運行於同 一硬體平台架構,資源可以共享,就可以節省實體機架空間的不足、 降低電力成本及節省能源使用,且也能夠達到與實體防護同樣等級的 安全防護效果,因此本研究的目的旨在「比較實體縱深防護架構與虛 擬化的縱深防禦架構之網路效能分析」。如果分析的結果不會相差太 大,而外顯的成本及能源使用量卻能因此降低,相信對於企業來說是 非常具有吸引力的。. 1.2.. 研究範圍. 本研究將以 Vmware ESX Server 4.1 為此一虛擬化網路安全縱深 防禦架構之系統平台,並在其上搭配 Linux 作業系統以及其他開放原 始碼軟體(OpenSource)架設防火牆、入侵防禦系統及防毒牆來建構虛 擬化的縱深防禦網路安全防護架構,最後利用 Httperf 及 Iperf 網路效 能測試工具對此虛擬化網路安全縱深防禦架構、傳統網路安全縱深防 禦架構以及整合威脅管理系統進行效能分析之結果比較。. 2.
(13) 1.3.. 研究架構. 本論文共分六個章節,架構分別說明如下: 第一章 緒論 說明研究背景、動機、目的、研究範圍及方法。 第二章 背景知識 本章將介紹目前常見的網路安全攻擊手法、網路安全防護手 法、縱深防禦機制的概念、虛擬化技術之種類說明以及網路效能測 試的方法。 第三章 相關研究 本章將介紹一些目前在網路安全防護應用、縱深防禦機制應用 以及虛擬化技術應用中較具代表性的研究成果。 第四章 植基於虛擬化技術之網路安全縱深防禦架構 本章將介紹運用虛擬化技術之網路安全縱深防禦架構,說明其 系統概述、系統運作流程、系統內部組成模組及建置說明。 第五章 網路安全防禦機制之效能測試分析 本章針對第四章的內容與實體縱深防禦機制及整合式威脅管 理設備進行效能測試分析。 第六章 結論 對本論文所達成的功能及效用做一結論,並探討未來可繼續進 行的研究方向,供未來學者參考。. 3.
(14) 第二章 背景知識(Background) 當前駭客攻擊手法伴隨著科技發展日新月異,加上政府部門、企業 及個人不時傳出遭到駭客侵擾或竊取個人資料等資安事件,嚴重影響 組織的網路安全,因此本章將於 2.1 節介紹常見的網路安全攻擊手法, 並於 2.2 節介紹有那些網路安全防護機制在保護我們的組織,接著在 2.3 節將對縱深防禦這個專有名詞進行說明,最後於 2.4 節介紹目前最 熱門的虛擬化技術種類及說明。. 2.1.. 常見網路安全攻擊手法. 所謂"知己知彼,百戰百勝"。若要了解如何防禦網路上駭客的攻 擊,就必須要先了解駭客的攻擊是透過什麼技術、弱點來達成他們的 目的。藉由瞭解駭客的入侵攻擊手法,有助於提昇企業在網路安全的 應變能力,保障系統資源安全,底下將說明目前常見的網路安全攻擊 手法。 1、IP偽冒攻擊(IP Spoofing): IP 偽冒攻擊簡單來說就是偽造網路封包的 Header,讓路由器 (Router)或者是防火牆(Firewall),以為是來自安全可信任的 網域,而被允許進入內部網路,直接攻擊網路主機。 2、連接埠掃描(Port Scan) 網路通訊埠掃描常是駭客攻擊前的資料蒐集手段。主機在提供 連結網路服務的時候,像是網頁服務(Port 80),都要經過連接 埠的連接,才能使用主機所提供的服務。駭客通常都會掃描目標主 機的網路通訊埠(Port)來檢視主機提供那些服務,如果提供服務的 程式有漏洞未經修補,駭客就能利用該服務的漏洞進行攻擊。 4.
(15) 3、阻絶服務攻擊(Denial of Service Attack,DoS Attack): 阻絶服務攻擊是藉由大量的封包或 TCP/IP 協定的漏洞,消耗 網路的頻寛或耗竭系統資源,例如:CPU、Memory 等,阻撓系統 或網路運作。常見的 DoS 攻擊分為: (1).網路層攻擊: 駭客利用 TCP/IP 網路層(Network Layer)的封包,例如: IP、ICMP、IGMP 等封包攻擊目標主機,包括:Smurf Attack、Ping of Death Attack 等。 (2).傳輸層攻擊: 駭客利用 TCP/IP 傳輸層(Transport Layer)的封包,例 如:TCP、UDP 等封包攻擊目標主機,包括:TCP SYN Flood Attack、UDP Flood Attack(Fraggle Attack)。 (3).應用層攻擊: 駭客利用 TCP/IP 應用層(Application Layer)的封包,例 如:HTTP Request 封包攻擊目標主機,例如像 HTTP Request Flooding Attack。 4、分散式阻絶服務攻擊(Distributed DoS Attack,DDoS Attack): 分散式阻絶服務攻擊指駭客能夠從遠端遙控僵屍網路(Botnet) 中的僵屍電腦(Zombie),並同時對所有僵屍電腦下達攻擊指令,每 台僵屍電腦僅提供少量的攻擊封包,因此不易察覺自身電腦已被控 制,且只要僵屍網路的僵屍電腦數量夠龐大,即可利用超量的攻擊 封包癱瘓目標主機,導致系統無法提供正常服務。 5、惡意程式攻擊(Malware Attack): 早期有非常多的攻擊手法,如電腦病毒、蠕蟲攻擊、木馬程式 5.
(16) 等,依其攻擊目的而有不同的名稱,現今因不能清楚劃分其攻擊手 法,因而將所有惡意的攻擊程式統稱為惡意程式(Malware),底下 將介紹目前主流之惡意程式。 (1).電腦病毒(Virus) 電腦病毒是指故意設計來干擾電腦的作業、紀錄、毀損或 刪除資料,或散佈至其他電腦與網際網路上流竄的軟體程 式,這類的軟體程式通常會減緩電腦的運作速度,並在過 程中造成其他問題。電腦病毒會將本身複製到其他乾淨的 檔案或是開機磁區,當電腦使用者沒注意的情況下,執行 到已受到病毒感染的檔案或程式,病毒就會以相同的方式 散佈或共用出去。 (2).電腦蠕蟲(Worm) 電腦蠕蟲和電腦病毒相似,是一種能夠自我複製的電腦程 序。蠕蟲程序常駐於一台或多台電腦中,本身會複製許多 分身,像蠕蟲般在電腦網路中感染多台電腦。電腦蠕蟲通 常會掃描其他機器是否感染同樣的蠕蟲病毒,如果沒有被 感染,就會透過內建的傳播手段進行感染,以達到使電腦 癱瘓的目的。 (3).木馬程式(Trojan Horse)/後門程式(Backdoor) 木馬程式是一種由遠端操控被攻擊主機的軟體。當被攻擊 主機被安裝後門程式之後,駭客就可以從遠端控制這台電 腦,例如上傳/下載檔案、竊取密碼、更改視窗系統中的 Registry 或是將螢幕畫面傳回等。後門程式甚至可以與正 常的執行檔結合,使不慎執行該程式的使用者在不知不覺 6.
(17) 中被植入後門程式。 6、緩衝區溢位(Buffer Overflow) 緩衝區溢位是由於程式撰寫的疏忽,使得駭客利用作業系統或 應用程式之程式設計上的缺失而進行攻擊,造成緩衝區容量的不 足,導致系統執行駭客欲執行的攻擊程式。例如:處理一個長度為 80 字元的字串,程式設計師設定字串變數長度為 100,如果駭客 將一個長度超過 100 的字串送入程式中處理,這樣超出的變數就 可能會覆蓋其他程式的片段,造成程式執行無效。 7、重送攻擊(Replay Attack) 由於區域網路是採用廣播式(Broadcast)的網路,駭客可利用此 特點竊聽同一個網路裡面的封包,即使是加密的通訊協定,若認證 過程設計不良,或是所使用的加密演算法複雜度不夠高,也還是有 可能會被破解。例如:早期當使用者以微軟的網路芳鄰通訊協定傳 送檔案時,駭客可先截取封包,以獲得封包上的認證資訊,並在接 下來的十幾分鐘內繼續使用這個認證通過網路芳鄰服務提供者的 認證程序。 8、中間人攻擊(Man-in-the-Middle Attack) 已經存在的網路連線也有可能被第三者中途劫走(Session Hijacking)。例如 TCP 通訊協定的 3-way handshaking 就存有 Sequence Number 容易被猜測的弱點,或是像是 ARP Spoofing Attack 及 SSL Strip Attack 也是中間人攻擊的手法。 9、Web 網頁技術相關攻擊 網頁設計上的漏洞也會造成許多安全問題。許多動態網頁的技 7.
(18) 術如 ASP、PHP 及 Javascript 等可以將網站由靜態網頁變成動態 的、且可即時產生回應的模式。當網站程式設計不良時,很可能就 造 成 駭 客 的 可 乘 之 機 。 駭 客 可 以 利 用 像 是 SQL Injection 、 Cross-Site Scripting 等網頁攻擊技術從遠端直接閱讀網站主機上 的任何資料或是執行任何遠端程式。. 2.2.. 網路安全防護機制. 在網路安全防護機制中網路闡道端存取控管機制是一個重要的環 節。內部網路和外部網路之間需建立起一道屏障,以防護網路邊界上 的存取行為,將駭客阻絕於門外。網路所有存取行為都應被檢查或授 權,才能夠進入企業網路。底下將介紹一般企業在部署網路安全防護 機制時所使用到的防禦措施。 2.2.1. 防火牆系統(Firewall System) 防火牆[18]其主要定義為用以阻擋非法的連線,允許合法的連線進 入企業內部的安全防護系統,其最基本的功能就是控制在電腦網路 中,不同信任程度區域間傳送的資料流。例如網際網路是不可信任的 區域,而內部網路是高度信任的區域。用以避免安全策略中所禁止的 通訊服務。它能控制在不同信任區域之間的資料流。常見的區域包括 網際網路(不信任的區域) 、內部網路(一個高度信任的區域)及非軍事管 制區(Demilitarized Zone,DMZ),如圖 1 所示。其最終目的是透過安 全政策的執行提供不同信任區域之連通性以符合最小權限原則(Least Privilege)。. 8.
(19) 圖 1 企業防火牆架構示意圖 防火牆的類型: 1、個人防火牆 通常是在一部電腦上具有封包過濾功能的軟體,如 ZoneAlarm 及 Windows XP SP2 後內建的防火牆程式即稱之,可阻擋非法的 連線直接連接到本機,屬於用戶端的防護措施。 2、網路層防火牆 網路層防火牆可視為一種 IP 封包過濾器,運作在底層的 TCP/IP 協定堆疊上。我們可以以列舉的方式,只允許符合特定規 則的封包通過,其餘的一概禁止穿越防火牆。這些規則通常可以經 由管理員定義或修改,而此種類型的防火牆通常都會做成硬體式的 網路設備或是也能利用擁有 2 張以上網路卡的電腦自行建置,常見 的網路層防火牆軟體為 Linux 中的 Iptables 或是 FreeBSD 中的 IPFilter。較新式的防火牆能利用封包的多樣屬性來進行過濾,例 如:來源 IP 位址、來源網路通訊埠、目的 IP 位址或網路通訊埠、 服務類型(如 WWW 或是 FTP)。也能經由通訊協定、TTL 值、來 9.
(20) 源的網域名稱或網段等屬性進行過濾。 3、應用層防火牆 應用層防火牆是在 TCP/IP 堆疊的「應用層」上運作,使用瀏 覽器時所產生的資料流或是使用 FTP 時的資料流都是屬於這一 層。應用層防火牆可以攔截進出某應用程式的所有封包,並且封鎖 其他的封包(通常是直接將封包丟棄)。理論上,這一類的防火牆可 以完全阻絕外部的資料流進到受保護的主機裡。此類防火牆藉由監 測所有的封包並找出不符規則的內容,可以防範電腦蠕蟲或是木馬 程式的快速蔓延。不過這個方法較不易實作,因軟體種類極其繁 多,所以大部份的應用層防火牆通常都只會實作某種功能的過濾機 制,例如:Linux 的 Iptables 防火牆只要外掛特定應用程式的模組 就能夠變成應用層防火牆。 4、代理伺服器(Proxy) 代理伺服器(Proxy)也能像應用程式一樣回應輸入封包(例如 連線要求),同時封鎖其他的封包,達到類似於防火牆的效果。代 理伺服器能夠增加駭客從外部網路竄改一個內部系統之困難度,且 只要對於代理伺服器有良好的設定,即使內部系統出現漏洞也不一 定會馬上造成安全上的問題。 防火牆經常搭配網路網址轉換(NAT) 的功能,其主要是將主機放 置於防火牆之後,並且使用 RFC1918[17]所定義的「私人網址空間」, 如表 1 所示,這樣可以避免駭客輕易取得企業整體網路拓撲架構,增加 其攻擊的困難度。. 10.
(21) 表 1 RFC1918 定義之私人網址空間列表. Begin Address. End Address. Prefix. 10.0.0.0. 10.255.255.255. 10.0.0.0/8. 172.16.0.0. 172.31.255.255. 172.16.0.0/12. 192.168.0.0. 192.168.255.255. 192.168.0.0/16. 2.2.2. 入侵偵測/防禦系統(Intrusion Detection/Prevention System) 如 2.1 節所介紹之網路攻擊的手法越來越多,有的充分利用防火牆 放行許可,有的則使防毒軟體失效,例如:有一些作業系統的弱點已 被發現但尚無解決之道,駭客利用這種全新的弱點攻擊企業的主機, 這就是所謂零時差攻擊(Zero Day Attack)。 防火牆可以根據 IP 位址或網路通訊埠過濾封包。但是它對於利用 合法的連線進行非法的行為並沒有阻擋能力。因為防火牆並不會深入 封包包內檢查內容(Payload)。 防衛機制最好應該是在危害形成之前初期就起作用。因此發展出入 侵偵測系統(Intrusion Detection System,IDS)這樣的防護措施,但僅 能被動的通知被入侵往往無法即時阻擋災害的發生,因此後來延伸出 結 合 防 火 牆 系 統 進 行 阻 擋 , 變 成 所 謂 入 侵 防 禦 系 統 (Intrusion Prevention System,IPS),入侵防禦系統能夠對合法連線但是屬於非 法行為的封包進行過濾及阻擋,其深入檢查網路封包並尋找它所認識 的攻擊特徵代碼,過濾並丟棄有害的網路封包,最後進行記錄以便事 後分析。 入侵偵測/防禦系統[15]依部署方式的不同主要可以分成兩大類: 1、網路型入侵偵測系統(NETWORK-BASED Intrusion Detection System,NIDS) 11.
(22) 網路型的入侵偵測系統如圖 2 所示,主要是擷取每一個經過的 網路封包作為資料來源,通常將網路卡設定為雜亂模式 (Promiscuous Mode),來偵測分析流經網路層(Network Layer) 的封包資訊。如果所偵測的封包資料與系統內置的安全規則吻合, 入侵偵測系統就會發出警報。. 圖 2 網路型入侵偵測系統架構示意圖 2 、 主 機 型 入 侵 偵 測 系 統 ( HOST-BASED Intrusion Dection System,HIDS) 這種系統的軟體必須要直接載入主機並加以監控。主要偵測該 主機的網路即時連接及系統檔案、程序與日誌檔中是否有可疑的活 動。可以與網路型偵測結合使用,達成完整的入侵偵測。 入侵偵測系統依偵測方式的不同分為兩類: 1、誤用偵測系統(Misuse Detection System) 誤 用 偵 測 系 統 又 稱 為 特 徵 型 偵 測 ( Signature-based Detection),檢測的方法類似電腦病毒的檢測方式,對已知的網 12.
(23) 路攻擊手法及入侵行為,包含系統的缺陷,經由分析整理成入侵特 徵(Signature)模式庫。入侵偵測系統藉由比對從主機或是網路 中所蒐集到的資料特徵,是否在所收集到的入侵特徵模式庫中出 現,如果有符合攻擊者入侵行為的特徵時,即發出警告(Alert)。 透過入侵偵測模式庫,誤用入侵偵測系統可以詳細且準確的對已知 的入侵行為發出警告訊息,因此有較低的誤判率(False Alert),但 對於未知的攻擊特徵則無法準確的偵測出來。 2、異常行為偵測系統(Anomaly Detection System) 異常行為入侵偵測系統主要在於先建立電腦或網路正常活動 的統計記錄,將正常活動的統計記錄與現行的網路活動進行比較, 如果現行網路活動有違反正常正常活動規律時,該活動即被認為是 可能入侵行為。 此種偵測方式的優點在於可以檢測到未知或是較複雜的入侵 行為,但誤報率(False Alert)也高。例如用戶行為的突然改變,極 有可能被視為入侵行為。 2.2.3. 防毒牆系統(Viruswall System) 傳統的網際網路閘道安全解決方案通常是在區域網路出入網際網 路的閘道端防火牆、入侵防禦系統的方式架構。而惡意程式攻擊這一 部份主要依靠主機端安裝防毒軟體加以阻擋,但現今的惡意程式攻擊 手法日新月異,常常利用一些巧妙的手法或系統漏洞就能夠從作業系 統核心層將主機式防毒軟體關閉,造成企業的嚴重損失,因此就有了 闡道式防毒牆的防護措施。 防毒牆主要是檢查封包所帶的應用程式內容之防護措施,而各式應 用程式包羅萬象,因此目前常見的防毒牆僅針對較受歡迎的服務進行 13.
(24) 檢測,例如可以針對下載的檔案在防毒牆重組後進行掃描的動作,如 果沒有符合病毒碼即放行,因此利用防毒牆進行過濾,可減少使用者 端電腦主機被感染的機率。市面上常見的防毒牆在七個主要的通訊協 定中利用透通模式代理(Transparent Mode Proxy)線上掃描所有進來 的封包,包括:網頁(HTTP)、郵件(SMTP、IMAP、POP3)、下載(FTP), 新聞(News)和立即訊息(Socks)等,可以提升企業內部網路安全防護等 級。 2.2.4. 整合式威脅管理系統(Unified Threat Management) 整合式威脅管理系統是一個全面的解決方案,自 2004 年出現在網 路安全行業以來,已成為企業首要的網路防禦系統。從理論上講,它 是由傳統防火牆演變而來的一個多功能網路防禦設備,它能夠執行多 種安全功能如:防火牆、入侵防禦、網路闡道端防毒、網路闡道端防 垃圾郵件、內容過濾、VPN 及負載平衡等。 整合式威脅管理其優點在於管理多個防護系統,而不是只單獨處理 像是防毒、內容過濾、入侵防禦和垃圾郵件過濾功能,企業可以靈活 地部署單一 UTM 設備,所有的功能只要一個單機式網路設備即完成。 而吸引中小企業之主要優點除了安裝佈署快速、管理方便、成本低廉 外,還有就是封包只需要解開一次,傳統的縱深防禦架構每經過一層 防禦系統就要重新解開一次封包,這是非常沒有效率的,但 UTM 的瓶 頸在於其多合一的特性,該特性引發效能不佳的批評。甚至有企業在 佈署 UTM 設備後發現網路效能嚴重下降,最後將 UTM 設備上特定的 功能關掉,導致失去“多合一”的初衷。另外在發生阻斷服務攻擊時,系 統處理大量的攻擊封包容易丟失部份封包,造成攻擊滲透的問題, UTM 設備強調整合性防禦多種安全機制於一點,卻反而因此缺少了縱 14.
(25) 深防禦的特性。. 2.3.. 縱深防禦機制. 構築縱深防禦的網路防護架構,是網路防護方案的核心原則。縱深 防禦(Defense-in-Depth)原意是一種軍事戰略,有時也稱作彈性防禦或 是深層防禦,是以全面深入的防禦去延遲前進中的敵人,透過放棄空 間來換取時間與給予敵人額外的傷亡。當縱深防禦被運用在網路安全 上時則意味著以多層網路安全技術減輕企業資訊安全風險。 舉例來說,網路防火牆、入侵防禦系統及個人電腦防毒軟體即形成 了階層化(Layered Approach)的防護架構,層層阻擋網路惡意程式之攻 擊。即便企業因資訊作業與與系統發展的需求,改變了網路防火牆原 先規範的安全設定,進而影響網路邊界防護的有效性,縱深防禦架構 中的其他機制仍可能發揮功效而達成防護效果。. 圖 3 網路安全縱深防禦系統架構 15.
(26) 我們再以企業的邊界安全角度來考量,一般來說防火牆必須根據一 套設定好的規則來過濾可疑的網路存取行為,但無法主動判斷是否有 合法連線中的非法行為。因此為了彌補防火牆本身的限制,必須加入 其他的網路安全防護機制進行防護,如圖 3 所示[13],須在防火牆其前 或後建置入侵防禦系統、內容過濾器及防毒牆等網路安全設備,以提 升邊界網路的安全性。可降低因不當使用網路所造成的損害,避免因 一種網路安全機制被駭客攻破,而使其能長驅直入,提高攻擊的困難 度,進而提升企業網路安全的整體防護能力。. 2.4.. 虛擬化技術. 在計算機科學中,虛擬化(Virtualization)是一個表現邏輯群組或 電腦資源子集的行程(Process),用戶可以用比原本的組態更好的方式 來存取這些行程。這些資源的新虛擬部份是不受現有資源的架設方 式、地域或物理組態所限制。一般所指的虛擬化資源包括計算能力和 資料儲存。 虛擬化技術[19](Virtualization Technology)可以讓一部電腦主機 ( host computer ) 建 立 與 執 行 一 至 多 個 虛 擬 化 環 境 ( Virtual Environment),該技術多半使用實效模擬(Emulate)來模擬出一部 完整的電腦系統(Computer System),之後再將作業系統(Operating System)安裝在這部虛擬化的電腦系統上,就作業系統角度而言此一 虛擬化環境與真正實體電腦並無太大差異,可以按照傳統的操作方式 來維護作業系統,而我們稱這樣的作業系統為子作業系統(Guest Operating System,Guest OS)。 虛擬化技術[5]有的是在既有作業系統上執行(如 QEMU、VMware Workstation、Virtual PC),有的則比作業系統更先安裝至電腦中(比 16.
(27) 作業系統更具主體性,即在硬體與作業系統核心中再插入一 Hypervisor 層,如 Xen Server、VMware ESX Server 及 Microsoft Hyper-V Server),其主要是利用一部電腦主機模擬多個虛擬化環境, 然而更先進者也能將多部電腦以虛擬化技術融合成單一的虛擬化環 境,如 VMware vSphere Server,可同時管理多台 VMware ESX Server,且資源可以共享。 此外還有另一種並非以模擬出完整硬體以供子作業系統運作的虛 擬化技術,其主要是模擬出一個相容於之前所發展出來的應用程式及 驅動程式之虛擬化環境,此也屬虛擬化技術的範疇,如.NET 的 CLR、 JAVA 的 JVM/JRE 皆屬於此類。例如用 Java 所寫的程式可以透過對 JAVA 執行環境(JRE)軟體發送命令以獲得服務,取得期望的結果。透 過提供這種服務,JAVA 軟體起到了虛擬機器的作用。程式不必為特定 的作業系統或硬體撰寫,提高程式可攜性。. 圖 4 虛擬化平台架構示意圖 17.
(28) 虛擬機器根據它們的運用和與實體機器的相關性分為兩大類。系統 虛擬機器提供一個可以執行完整作業系統的完整系統平台。相反,程 式虛擬機器為執行單個電腦程式設計,這意味它支援單個行程。虛擬 機器的一個本質特點是執行在虛擬機器上的軟體被局限在虛擬機器提 供的資源裡——它不能超出虛擬世界。圖 4 為 VMWare 公司所推出之 虛擬化技術的架構示意圖。. 18.
(29) 第三章 相關研究(Related Researches) 本研究主要是從各種不同領域之學術研究中所發展出來的一種全 新網路安全防禦架構。因此將於底下各節介紹這些不同領域之相關學 術研究,於 3.1 節介紹網路安全縱深防禦架構之相關研究,於 3.2 節介 紹虛擬化技術之相關研究,最後於 3.3 節介紹網路效能分析之相關研 究。. 3.1.. 網路安全縱深防禦架構之相關研究. 在 2000 年時,中央大學曾宇瑞[14]提出一個網路安全縱深防禦架 構,該篇論文最大的特點除了保留傳統防火牆機制外,尚引入入侵偵 測系統(IDS)與陷阱機制,利用入侵偵測系統即時偵測入侵行為之功 能,彌補陷阱系統被動呆版之缺點,亦利用陷阱系統隔離觀察之概念, 彌補以往入侵偵測系統誤報率高之缺失,兩者取長補短並搭配防火牆 形成一完美組合,使任何連線都要通過多層檢測,才能成功連上伺服 器,其中,若連線之檢測被確認有入侵嫌疑,則嫌疑者會被導入陷阱 系統(Deception system),進行隔離觀察,而被導入觀察之連線,若經 觀察一段時間發現沒問題,仍會被導回原正常服務,否則將予以斷線 或作其他處置(例如 E-mail 警告來源主機)。整個縱深安全防護的概 念如圖 5 所示,有四道防線,分述如下:. 19.
(30) 圖 5 縱深防禦架構示意圖 圖中各英文字的說明如下: A 未經許可或未開放之通訊協定(服務)可直接由防火牆擋掉。 B 當 Network-Based IDS 確認攻擊行為發生後,除作成紀錄備查 外,並指示防火牆將該連線中斷。 C 入侵嫌疑者被 Network-Based IDS 導入陷阱系統進行嚴密監 視。 D 當 Host-Based IDS 以誤用偵測技術發現系統有不正常紀錄(例 如:同一來源多次登入失敗),便將其導入陷阱系統進行嚴密監視。 E 正常之連線狀況。. 在 2001 年 6 月時,Dorene Kewley 及 John Lowry 在 IEEE 期刊 上提出一個很重要的概念[1],他們認為網路安全縱深防禦(Defense in Depth)不能只著重在單一攻擊行為上,還要針對廣度防禦(Defense in 20.
(31) Breadth)進行部署考量,且在考量部署安全防禦機制時,要考慮佈署的 層數不可太多,因為這樣反而會導致防禦產品太多造成維護過於複 雜,而增加被駭客入侵的風險,如果只在網路邊界安全上做縱深防禦 的規劃,對於企業內部環境防禦安全層級的提升是有限的,應該要在 不同的地方部署相對應的防禦措施,如此才能確保企業在各面向上都 做好安全防護,作者利用分組實驗,將攻擊者歸為紅隊,將防禦者歸 為藍隊,並且針對機密性、完整性及可用性三個面向設定不同的情境 進行四個階層的縱深防禦架構實驗測試,從實驗過程中可以得知,如 果在防禦相同的事情上面,多增加一個防禦機制並不會提升整體防禦 的效果,如圖 6 所示,在二層防禦架構下,駭客攻擊所花費的時間和 成功進入系統的時間和三層防禦架構下有顯著的差異,但在三層防禦 架構及四層防禦架構下,卻沒有差別太大。. 圖 6 縱深防禦層數及攻擊執行成功所花費之時間比較圖 但如果能夠對症下藥,根據各種不同的需求建構不同的防禦機制, 如此才能有效避免被駭客入侵成功,作者最後的結論認為深度防禦和 廣度防禦是同樣重要的,如圖 7 所示。 21.
(32) 圖 7 深度防禦 vs 廣度防禦 為了阻止各種網路攻擊行為,傳統的方法主要是採用單一的、靜態 的安全技術來防護。這些方法在真正的網路攻擊行為發生時,尤其在 遭受新型的網路攻擊方法攻擊時,可能會給系統帶來不可預期的損 失。因此需要研究一些積極主動的網路安全防禦手法和反擊手法,並 和傳統的網路防禦方法相結合,構建一個安全的網絡環境。在 2005 年 的 2 月解放軍理工大學的周海剛等人根據網路主動防禦安全模型和縱 深防禦策略,提出一種網路主動防禦系統體系結構[16]。如圖 8 所示。. 22.
(33) 圖 8 虛網路主動防禦系統體系結構示意圖 網路主動防禦系統體系結構是一個三維的立體結構,分為 3 個層 面:技術層面、策略和安全技術管理層面、管理層面。技術層面分為 六層和一個網路安全通訊協定。這 6 層分別是:預警、保護、檢測、 反應、恢復和反擊。策略和安全技術管理層面包括縱深防禦策略和安 全技術管理。安全技術管理對這六層的技術進行管理,縱深防禦策略 使得這六層的技術在統一的安全策略下能協調工作,來共同構築一個 多層縱深的防護體系。而這篇論文最大的特色在於其坐了提供一般預 警、保護、檢測等功能外,還提出反擊這樣的概念,反擊指的是網路 反向攻擊,其綜合運用各種網路攻擊手法對攻擊者進行反攻擊,迫使 其停止攻擊。這些攻擊手段包括探測類攻擊、阻塞類攻擊、漏洞類攻 擊、控制類攻擊、欺騙類攻擊和病毒類攻擊等。 23.
(34) 不過本研究的目的在於提出一個可行的網路安全防護機制,而非進 行攻擊機制之探討,因此這一個新穎的概念在本研究中並未採行。. 3.2.. 虛擬化技術之相關研究. 現今虚擬化技術的各方面都有了進步,虚擬化技術也從純軟體虛擬 化逐漸演進到處理器級虚擬化、平台級虚擬化及 I/O 虚擬化,在 x86 平台上代表性技術就是 2006 年 Intel 公司所提出的處理器輔助虚擬化 技術 Intel Virtualization Technology[2],這是 x86 虚擬化的第一步,其 分為 Itanium 平台的 VT-i 和對應 x86 平台的 VT-x 兩個版本。純軟體虚 擬化主要的問題是效能和隔離性。完全虚擬化技術(Full Virtualization) 可以提供較好的 Guest OS 隔離性,不過其效能不高,在不同的應用 下,可以消耗掉主機 10%~30%的資源。而作業系統虛擬化技術(OS Virtualization)可以提供良好的效能,然而各個 Guest OS 之間的隔離 性卻不强。無論是何種軟體方法,隔離性都是由 Hypervisor 層所提供 的,過多的隔離會導致效能下降。而這些問題主要跟 x86 設計時並没 有考慮到虚擬化有關。x86 架構為了保護指令的運行,提供了 4 個不 同 Privilege Level,術語稱為 Ring,從 Ring 0~Ring 3。Ring 0 的優 先級最高,Ring 3 最低。各個 Privilege Level 對可以運行的指令有所 限制,例如:GDT、IDT、LDT、TSS 等指令就只能運行於 Ring 0。 作業系統必須要運行一些 Ring 0 的特權指令,因此 Ring 0 是被用 於運行作業系統核心,Ring 1 和 Ring 2 是用於作業系統服務,Ring 3 則是用於應用程式。然而實際上並没有必要用完 4 個不同的 Privilege Level,一般的作業系統實作上都只使用兩個 Privilege,即 Ring 0 和 Ring 3,如圖 9 所示:. 24.
(35) 圖 9 Privilege Level 示意圖 也就是説在一個 x86 作業系統中,系統核心必須運行於 Ring 0, 而 VMM(Virtual Machine Monitor,虚擬機監視器)以及其管理下的 Guest OS 却不能運行於 Ring 0,因為那様就無法對所有虚擬機器進行 有效的管理。在没有處理器輔助的虚擬化情况下,挑戰就是採用 Ring 0 之外的等級來運行 VMM、Hypervisor 以及 Guest OS。但無論使用何 種等級來運行,Guest OS 還是無法運行於 Ring 0,則特權指令就必須 通過模擬的方式來運行,這會帶來很明顯的效能問題。 同時這些特權指令如果隔離不當可能嚴重威脅到其他 Guest OS 甚 至 Host OS。Ring Deprivileging 技術使用 IA32 架構的 Segment Limit 模式和 Paging 模式來隔離 VMM 和 Guest OS,但 64 位元的作業系統 並不支援 Segment Limit 模式,因此要運行 64 位元作業系統,就必須 使用 Paging 模式。對於虚擬化而言,Paging 模式無法區分 Privilege 25.
(36) 0/1/2 模式,因此 Guest OS 一定要運行在 Ring 3,這様 Paging 模式 才可以將 Host OS 和 Guest OS 隔離開來,然而在同一個 Privilege 模 式下的不同應用程式,例如:不同的虚擬機器是無法受到 Privilege 機 制所保護的,這就是目前 IA32 帶來的隔離性問題,這個問題被稱為 Ring Compression。 因此 Intel 公司提出了 Intel Virtualization Technology 來提升虚擬 化效率和虚擬機器的安全性,一般稱 IA32 平台為 VT-x,而在 Itanium 平台上的 VT 技術則稱為 VT-I,其架構如圖 10 所示。. 圖 10 Intel Vitrualization Technology 虚擬化架構示意圖 VT-x 將 IA32 的 CPU 運作分成兩層:VMX root operation 和 VMX non-root operation,VMX root operation 設計給 VMM/Hypervisor 使 用,而 VMX non-root operation 則是另一個處在 VMM 控制之下的 IA32 環境。每一層都支援四個 Privilege Levels,這様在 VMX non-root operation 環境下運行的虚擬機器就能完全地利用 Ring 0 等級。Intel VT 同時為 VMM 和 Guest OS 提供了所有的 Privilege Levels,而不是只 26.
(37) 讓它們分別占據一個 Privilege Level,因為 VMM 和 Guest OS 運行在 不同的兩個環境。 藉由這樣的設計,以往需要透過模擬運行的特權指令就能正常地運 行於虚擬機器内部了。而 VMM 也能從模擬運行特權指令當中解放出 來,這様既能解决 Ring Aliasing 問題(軟體運行的實際 Ring 與設計 運行的 Ring 不相同帶來的問題),又能解决 Ring Compression 問題, 從而大大地提升效率。 為 了 建 立 這 種 兩 個 虚 擬 化 窗 體 的 架 構 , VT-x 設 計 了 一 個 Virtual-Machine Control Structure(VMCS,虚擬機器控制結構)的資 料結構,包括了 Guest-State Area 和 Host-State Area,用來保存虚擬 機器以及主機的各種狀態參數,並提供了 VM entry 和 VM exit 兩種操 作 在 虚 擬 機 器 與 VMM 之 間 切 换 , 用 户 可 以 通 過 在 VMCS 的 VM-execution control fields 裡面指定在執行何種指令或發生何種事件 的時候,VMX non-root operation 環境下的虚擬機器就執行 VM exit, 從而讓 VMM 獲得控制權,因此 VT-x 解决了虚擬機器的隔離問題,又 解决了效能問題。 Inter VT 的出現解决了重要的虚擬處理器架構問題,讓純軟體虚擬 化解决方案的效能問題得以大大緩解。但對於效能之影響不僅只有處 理器,I/O 也是很重要的一部份,因此無論是儲存、網路或是顯示卡等, I/O 能力都是企業虛擬化架構的一個重要部分。隨著整體處理器資源的 利用效率的提升,對資料的 I/O 處理能力也提出了更高的要求。 當時的 I/O 設備虚擬化主要是利用模擬方式,因此效能上很容易成 為瓶頸,因此在 2007 年 5 月 Intel 公司就適時提出了 Intel Virtualization Technology for Directed I/O 的概念[3],簡稱為 Intel VT-d,其架構如 27.
(38) 圖 11 所示。 Intel Direct I/O 虚擬化的關鍵在於解决 I/O 設備與虚擬機器資料交 换的問題,而這部分主要相關的是 DMA 直接記憶體存取以及 IRQ 中 斷請求,只要解决好這兩個方面的隔離、保護以及效能問題,就能夠 成功的將 I/O 虚擬化。. 圖 11 Intel Direct I/O 虚擬化架構示意圖 和處理器上的 Intel VT-i 和 VT-x 一様,Intel VT-d 技術是一種基於 北橋晶片(North Bridge Chip)的硬體輔助虚擬化技術,透過在北橋晶片 中内置提供 DMA 虚擬化和 IRQ 虚擬化硬體,提供新型的 I/O 虚擬化方 式,Intel VT-d 能夠在虚擬環境中大大地提升 I/O 的可靠性、靈活性與 效能。 I/O 設備會産生很多的中斷請求,I/O 虚擬化必須要能分離這些中 斷請求,並正確傳送到不同的虚擬機器上。傳統設備的中斷請求可以 具有兩種方式:一種是透過 I/O 中斷控制器來送,另一種是透過 DMA 寫入請求直接發送出去,由於需要在 DMA 請求内嵌入目標記憶體位 28.
(39) 址,因此這個架構必須要能完全存取所有的記憶體位址。VT-d 進行的 改動還有很多,如硬體緩衝、位址轉換等,透過 VT-d 技術,虚擬機器 得以直接使用 I/O 設備或者 I/O 設備共享方式來代替傳統的設備模擬的 方式,從而大大提升了虚擬化的 I/O 效能。. 3.3.. 網路效能分析之相關研究. 在企業評估網路設備的流程中,實際測試佔了非常重要的一環,目 的是為了找出符合需求的設備,避免 IT 投資的浪費。一般來說,網路 設備的測試有兩種常見的做法,一種是將設備直接部署上線,觀察它 在真實流量下的運作情況,至於另外一種方式則是利用工具取得數據。 而透過工具測試網路設備,經常會與實際環境下的結果有所落差,不 過對於測試時間有限的企業來說,仍然是可行的做法,而我們所要使 用的工具是 Rutgers 大學的 Chung-Hsing Hsu 及 Ulrich Kremer 於 1998 年所發表的 Iperf[6]。網路吞吐量效能測試工具及 HP Rseach Lab 的 David Mosberger 及 Tai Jin 於 1998 年所發表的 httperf[7]網站效能 測試工具,Iperf 可以產生 TCP 及 UDP 流量,協助測試網路吞吐量, 而 httperf 則可以產生 http request 封包,藉由不同的參數設定,可用 來測試網站之效能。這二套常用的免費網路效能測試工具,可以幫助 企業測試網路架構的傳輸效能,或者找出實際環境當中的效能瓶頸。 在 2009 年 Y Koh 等人在 IEEE 期刊發表一篇利用委託的網路處理 機制改善虛擬機器 Windows 作業系統網路效能的論文[4],其所發表的 改善 Windows 虛擬機器網路效能的委託機制-Linsock 其主要架構如 圖 12 所示。 其主要是由 Winsock-Linsock Translator(簡稱 WLT)及 Linsock Server 所組成,WLT 安裝在 Guest OS 上,負責攔截 Winsock API 的 29.
(40) function call,Linsock Server 則安裝在 Host OS 上,負責透過 Host OS 上的 BSD sockets 來處理 Guest OS 的應用程式請求,並調整 Host OS 上的網路堆疊,而 WLT 和 Linsock server 都是跑在 Guest OS 及 Host OS 的 User-Level 的層級,並沒有修改其核心程式。. 圖 12 Linsock 委託機制 為了說明 Linsock 委託機制效能比裝置模擬機制及半虛擬化機制要 好,其利用 iperf 對這三種機制進行最大網路吞吐量效能測試,如圖 13 所示。. 圖 13 Iperf 最大網路吞吐量比較圖 圖 13 可以看到在封包長度只有 1K 時,三種機制的最大網路吞吐 30.
(41) 量差不多,但在封包長度為 8K 及 64K 時,Linsock 委託機制的網路吞 吐量效能只和利用實際主機架構的 windows 差 40%,但也比其他兩種 機制高出 30%左右。 該篇論文還有進行虛擬機器之間利用不同機制所進行的測試,如圖 14 所示,利用裝置模擬機制的效能非常差,在 10G 的網路下最大吞吐 量竟然只有 100Mbps 左右,而半虛擬化機制約有 550Mbps 左右,而 Linsock 機制在封包長度 1K 時約有 730Mbps 左右,在封包長度 8K 及 64K 時卻有 2.2Gbps 左右。. 圖 14 Inter-VM 網路吞吐量效能測試比較圖 而這篇研究為了要測試實際網路應用程式的效能如何,還架設了 Apache Web Server,並在上面放置一個 128K 的檔案,再利用 httperf 對這些機制進行回應時間效能測試比較,如圖 15 所示,可以看出利用 Linsock 機制,網頁伺服器的回應時間比其它兩種機制要低,其回應時 間約在 2.1ms 左右,而裝置模擬機制約為 10.3ms,半虛擬化機制約為 6.5ms 左右。. 31.
(42) 圖 15 Httperf 回應時間比較圖 本研究把 3.1 節及 3.2 節相關研究的特點整合,發展出一套虛擬化 技術之縱深防禦架構,將於第四章進行完整介紹,並利用 3.3 節介紹 的 iperf 及 httperf 等網路效能測試工具進行網路效能分析,將其測試過 程及分析結果於第五章進行完整說明。. 32.
(43) 第四章 植基於虛擬化技術之網路安全縱深防禦架 構設計(Network Security Defense-in-Depth Architecture Design based on Virtualization Technology) 隨著網際網路的持續發燒、駭客入侵或破壞網站事件的頻傳,網路 安全防護不單是企業界急於解決的重要難題,還希望防護成本能夠下 降,因此本研究希望藉由提出運用虛擬化技術將防火牆、入侵防禦系 統以及防毒牆等安全防護技術整合之構想,能達到有效加強網路系統 之安全防護之能力、增加駭客攻擊成本與改善企業資源浪費的問題, 使網路安全解決方案可臻至完美。 本章 4.1 節首先概述本研究之虛擬化網路安全縱深防禦架構之設 計,並於 4.2 節細部介紹各功能模組的作用,接著在 4.3 節說明本研究 建置方式以及建置過程中之注意事項說明,最後於 4.4 節描述虛擬化 技術所建置的縱深防禦架構所達到應有的防護效果。. 4.1.. 虛擬化網路安全縱深防禦架構概述. 本研究將進行虛擬化縱深防禦架構之設計,設計之層級架構如圖 16 所示,本研究將虛擬化網路安全縱深防禦架構分為四層,每一層的 特性如下: 實體層(Physical Layer): 實際的硬體資源,如 CPU、記憶體、網路卡、磁碟機等。 監督層(Hypervisor Layer): 支 援 虛 理 器 虛 擬 化 的 虛 擬 機 器 管 理 員 (Virtual Machine 33.
(44) Management,簡稱 VMM),其在 Guest 作業系統及硬體層之間提 供一個抽象層,在這個抽象層上允許任何作業系統在硬體上執行。 虛擬網路層(Virtual Network Layer): 其網路模組主要是模擬虛擬交換器及調整虛擬機器網路架構。 安全層(Security Layer): 其安全模組主要是針對網路闡道端流入流出的封包進行檢測。. 圖 16 虛擬化網路安全縱深防禦架構 圖 17 為虛擬化網路安全縱深防禦架構功能模組圖,其由三大 功能模組所組成,功能如下所示: 管理模組(Management Module): 協調硬體層的計算資源及控制各虛擬機器之 CPU、記憶 體、磁碟空間、網路卡等資源分配比例。 網路模組(Network Module): 管理虛擬機器之間封包交換的路徑,能夠準確的控制在虛 擬機器之間封包行經的路徑。 安全模組(Security Module): 過濾及檢測進出的封包是否有惡意連線或行為,做進一步 的存取控管機制,本研究所提的防禦機制皆部署於此。 34.
(45) 圖 17 虛擬化網路安全縱深防禦架構模組圖 本研究將於 4.2 節更細部的說明虛擬化網路安全縱深防禦架構中所 有模組之功能。. 4.2.. 虛擬化網路安全縱深防禦架構功能模組. 虛擬化網路安全縱深防禦架構除了有 4.1 節概述的三大功能模組 外,在安全模組中,本研究設計了三套針對不同防禦性質的子功能模 組,並且利用網路模組將其封包傳遞路徑定義清楚,底下我們將介紹 各功能模組之主要功能。 (1)管理模組(Management Module) 協調硬體層的計算資源及控制各虛擬機器之 CPU、記憶體、磁碟 空間、網路卡等資源分配比例。例如:可以針對不同防禦主機給於適 35.
(46) 當之計算資源,充份有效利用有限之硬體資源,而其管理模組不會佔 用過多計算資源,且能夠提供高可用性、高擴充性及高集中性的特性, 管理者可透過遠端終端機利用 VPN 技術連線至 VMM 對虛擬機器進行 管理,並且提供帳號驗證之功能,除了提高安全性外,也提高便利性。 (2)網路模組(Network Module) 在網路模組方面,有提供虛擬網路卡及虛擬交換器之模組,透過虛 擬網路卡,可使各虛擬機器擁有良好的擴展能力,而虛擬交換器則能 提供虛擬機器的切割及統一的封包傳遞路徑,另外還有提供對外線上 更新及遠端終端機的管理功能。 本研究中虛擬機器之網路架構必須建立 5 台虛擬交換器(Virtual Switch),這 5 台虛擬交換器之功能如表 2 所示。 表 2 虛擬交換器用途一覽表. 虛擬交換器名稱. 用途. Internal. 連接內部網路之網段. External. 連接外部網路之網段. FWtoIPS. 連接防火牆和入侵防禦系統之通道. IPStoAVW. 連接入侵防禦系統及防毒牆之通道. Update. 軟體更新. (3)安全模組(Security Module) 安全模組可提供過濾檢測進出之封包的能力,這一部份可以實作非 常多種防禦機制,本研究將網路安全縱深防禦機制部署於此,並且提 供三種不同性質之防禦機制進行實作,圖 18 為本研究封包傳遞的路 徑,當封包進到防火牆時,會有一些不允許的非法連線封包被被阻擋, 而通過的封包皆為合法的連線,當封包經過入侵防禦系統時,會發現 36.
(47) 合法連線中的非法行為,以網頁伺服器為例,如果有 Cross-Site Scripting 的網頁攻擊行為發生,在入侵防禦系統就會把它阻擋下來, 但如果封包是由使用者端所下載的惡意程式,那就入侵防禦系統就無 法進行阻擋,這時會透過防毒牆將其阻擋下來,進行封包重組,檔案 過濾後,將其刪除,讓真正正常的網路封包流進內部網路。底下將介 紹各個防護機制的檢測流程。. 圖 18 虛擬化縱深防禦網路封包流程示意圖 (1)虛擬化防火牆系統子模組(Virtual Firwall SubModule) 在虛擬化網路安全縱深防禦架構中,本研究使用 Netfilter/Iptables 這套頗富盛名的開放原始碼防火牆,Netfilter 是在 Linux 核心(Kernel) 的模組,它只會依照管理員訂下的規則,對網路封包進行過濾,並且 依靠 Iptables 應用程式將規則傳至 Netfilter 模組。 防火牆是透過一系列的規則而建成,而每個規則都包含了一個對封 包的描述(Match)和一個處置動作(Target)。每當封包符合規則中的描 述時,核心便會對封包進行相應的處置動作。而在 Netfilter 的角度中, 這些規則是記錄在不同的鏈(Chain)中,而鏈又會被歸納到不同的規則 37.
(48) 表(Table)中。封包會根據它在核心中不同的層次和狀態,被送到一個 或多個規則表和鏈中,並與當中的每條規則進行比對並執行相對應的 動作,在核心中有三個規則表,分別是 FILTER、NAT 及 MANGLE, 在本研究中僅使用到 FILTER 及 NAT 兩個規則表,而這兩個規則表又 有一些預設的鏈,在 FILTER 規則表中有 INPUT Chain (給目的地是本 機的封包)、 FORWORD Chain(給途經本機的封包)、OUTPUT Chain (給由本機所發出的封包)。而在 NAT 規則表中有 PREROUTING Chain (給所有進入本機而尚未經過路由處理的封包)、POSTROUTING (給所 有已經經過路由處理而目的地不是本機的封包)及 OUTPUT Chain,所 以我們將這兩個規則表中的鏈整合起來如圖 19 所示。. 圖 19 防火牆內部運作流程圖 圖 19 是網路封包流進 Iptables 防火牆之流程圖,封包一進來會先 進入 NAT 規則表,其主要是進行網路位址轉換 (Network Address Translation) 的功能。顧名思義網路位址轉換就是把封包標頭的位址和 38.
(49) 通訊埠的資料更改。這個功能主要的好處是可以讓內網所有使用者共 用同一個 IP 位址連上 Internet,且也可以隱蔽內路網路的拓撲,運用 網路位址轉換就可把所有內部網路對外的通訊轉換成同一個 IP 位址所 發出的封包一樣。NAT 轉換剛完成後,會進入路由表中選擇路徑,如 果是往防火牆主機本地,就會被導向 INPUT Chain 中過濾,如果是要 進入內部網路,則會導向 FORWARD Chain 中進行過濾,最後可被接 受的封包都會從 Postrouting Chain 往入侵防禦系統送過去。 (2)虛擬化入侵防禦系統子模組(Virtual IPS SubModule) 在本研究的虛擬化網路安全縱深防禦架構中,所使用的入侵防禦系 統是 Snort 這套頗具代表性的開放原始碼入侵偵測系統搭配 Iptables Queue 模組,這樣的搭配會將防火牆送進來的流量導向一個佇列中, 再由 Snort 將佇列的資料逐筆進行過濾,非法的封包即將其丟棄,合 法的封包即送往防毒牆。圖 20 顯示了封包進入入侵防禦系統後經過的 流程。. 圖 20 入侵防禦系統內部運作流程圖 39.
(50) 當網路封包進入入侵防禦系統時,會先進到 Iptables 的 Forward Chain(其他 Chain 預設為 Accept),並且從這裡將封包導向佇列之中, 而 Snort inline mode 會依序一筆一筆從 Queue 中讀取封包,並將封包 解碼,接著進行特徵碼(signature)比對的作業,最後決定是否放行或是 丟棄。放行後會往防毒牆的方向傳過去。 (3)虛擬化防毒牆系統子模組(Virtual Antiviruswall SubModule) 在本研究的虛擬化網路安全縱深防禦架構中,所使用的防毒牆是 ClamAV 這套在 Linux 底下非常有名的免費防毒軟體加上 HTTP Anti-Virus Proxy(HAVP)這套 HTTP 的防毒代理伺服器,並且 Iptables 要配合將封包重導向(Redirect)至本機 HAVP 所開啟的網路通訊埠 8080 進行封包重組及過濾,待利用 ClamAV 的病毒碼資料庫進行掃描 後,將合法的檔案轉成封包重新傳送至用戶端電腦上,非法的檔案即 將其丟棄。圖 21 顯示了封包進入入侵防禦系統後經過的流程。. 圖 21 防毒牆內部運作流程圖 40.
(51) 從圖 21 可以看到,當封包進入 NAT 規則表中的 PREROUTING Chain 後,會直接將網路通訊埠為 80 的封包重導向至本機的網路通訊 埠 8080,8080 埠是 HAVP 的掃描應用程式,經由 HAVP 透過 ClamAV 的病毒碼資料庫掃描完成後,正常的檔案會再經由路由表傳至使用者 端電腦,而異常的檔案會被拒絕存取,且會回傳給使用者端電腦一個 拒絕存取的網頁。. 4.3.. 虛擬化網路安全縱深防禦架構建置說明. 本研究係利用 VMWare 虛擬化技術做為管理模組,並利用其內建 的虛擬交換器做為網路模組,並以此建置出一個縱深防禦網路安全架 構,透過虛擬平台管理員可對環境組態進行設定,並對各虛擬機器進 行細項設定,例如:CPU 數量、記憶體大小、儲存空間及網路裝置等。 整個虛擬化網路安全縱深防禦架構如圖 22 實驗環境配置圖所示。 圖 22 為本研究的實驗環境配置,本研究使用 VMWare ESX Server 4.1 作為此架構之虛擬平台,搭配實際硬體使用的規格如表 3 所示。. 圖 22 實驗環境配置圖 41.
(52) 本研究實驗環境之 VMWare ESX Server、VMWare Client、Virtual Machine 及外部實際的伺服器、交換器及路由器之硬體規格、作業系 統及應用程式版本資訊如表 3 所示: 表 3 硬體設備與作業系統規格表 VMWare ESX Server. VMWare Client. Model. IBM System X3250 M2. Model. HP EliteBook 6930p. CPU. Intel xeon 2.66GHZ Quad Core. CPU. Intel Core 2 Due T9550 2.67GHZ. RAM. 8GB DDR2 800MHZ. RAM. 2GB DDR2 800MHZ. OS. VMWare ESX Server 4.1. OS. Windowns 7 Enterprise x86. LAN. Intel PRO/1000 PT Dual. APP. VMWare vSphere Client 4.1. DISK. LAN Segate 160G SAS x 2 (RAID0) DISK Virtual Machine(Firewall). Intel 86567LM Gigabit NIC Segate 250G SATA Virtual Machine(IPS). CPU. vCPU 2.66GHZ Single. CPU. vCPU 2.66GHZ Single. RAM. 2 GB. RAM. 2GB. OS. CentOS 5.5. OS. CentOS 5.5. Kernel Kernel-2.6.18.194.32.1. Kernel Kernel-2.6.18.194.32.1. APP. Iptables V1.3.5. APP. Iptables-1.3.5 Snort -2.8.6. LAN. vNIC(e1000) X3. LAN. vNIC(e1000) X3. DISK. 20G SCSI. DISK. 20G SCSI. Virtual Machine(AntiVirus Wall). Web Server. CPU. vCPU 2.66GHZ Single. CPU. Intel xeon 2.66GHZ Quad Core. RAM. 2 GB. RAM. 2GB DDR2 800MHZ. OS. CentOS 5.5. OS. CentOS 5.5. 42.
(53) Kernel Kernel-2.6.18.194.32.1. Kernel Kernel-2.6.18.194.32.1. APP. Iptables-1.3.5 ClamAV-0.97 HAVP-0.92. APP. Apache-2.2.3-43. LAN. vNIC(e1000) X3. LAN. Intel PRO/1000 PT Dual. DISK. 20G SCSI. DISK. Segate 160G SAS x 2 (RAID0). Attacker’s Computer. Cisco Switch. CPU. Intel xeon 2.66GHZ Quad Model Core. Catalyst 2950 Serials. RAM. 2GB DDR2 800MHZ. IOS. 12.2. OS. Windows XP SP3. PORT. 12 Fastethernet ports. APP. N-Stalker 2009 Apache-2.2.3-43(eicar 2.0 virus_sample file) NMAP-5.50. Cisco Router Model. Cisco-2600 Serials. IOS. 12.2. LAN. Intel PRO/1000 PT Dual. DISK. Segate 160G SAS x 2 PORT (RAID0). 2 Fastethernet ports. 設定虛擬機器之網路架構 圖 23 為本研究之網路架構示意圖。由圖中可看到虛擬平台利用兩 張 Intel 網路卡和外部網路對接,一張接在實體交換器上並設定為 vlan10,設定其為內路網路,而另一張接在外部網路並設定其為 vlan20,這樣實體交換器即可將封包送往 ESX 伺服器上的虛擬交換器 (Virtual Switch,vSwitch)中,而根據 4.2 節的網路架構設計,在 VMWare ESX Server 中會有 5 部虛擬交換器,且每部虛擬化防護主機皆有 3 張 虛擬網路卡,設定如圖 24 所示。. 43.
(54) 圖 23 虛擬化網路安全縱深防禦網路架構示意圖 如圖 24 所示,有 3 台虛擬交換器對外各自設定不同實體網路卡, vlan10 (Internal)虛擬交換器對外網路卡設定為 vmnic3,而 vlan20 (External)虛擬交換器對外網路卡設定為 vmnic0,而 ADSL (Update) 接在 vmnic2 的實體網路卡上,另外有兩台虛擬交換器不用設置對外網 路卡,其主要目的是給虛擬防護主機轉送網路封包到另一台虛擬防護 主機上。 本研究的網路邏輯接線規則為將防火牆虛擬機器之一張虛擬網路 卡(vNIC)接在 vlan20 虛擬交換器上,另一張虛擬網路卡接在 vlan30 虛擬交換器,而在入侵防禦系統虛擬機器中,將一張虛擬網路卡接在 vlan30 虛擬交換器上,另一張虛擬網路卡接在 vlan40 虛擬交換器,最 後在防毒牆虛擬機器中將一張虛擬網路卡接在 vlan40 虛擬交換器上, 44.
(55) 另一張虛擬網路卡接在 vlan10 虛擬交換器上,這樣就能夠確認所有的 網路封包會根據 4.1 節所設計出來的虛擬化網路安全縱深防禦架構所 限定的路徑傳送,不會有跳過某一種防護機制的風險存在,另外我們 將在各虛擬機器中保留一張虛擬網路卡做 ADSL 上網使用,主要目的 為更新軟體版本以及下載所需要之安裝套件。. 圖 24 虛擬交換器上 vlan 之設置 而每台虛擬交換器上都要開啟雜亂模式(Promiscuous Mode),如 圖 25 所示,因為 VMWare ESX Server 很嚴格規定虛擬交換器上 vlan 之間不能互通,這會讓本研究在虛擬機器上兩張不同 vlan 的虛擬網路 卡設置為橋接模式(Bridge Mode)時,導致封包無法進行轉送,因此虛 擬交換器上一定要開啟雜亂模式,封包才會依本研究所要求之路徑進 行轉送(forward)的動作。 另外在配置虛擬網路卡時要注意,要選擇 VMWare 公司所提供之 e1000 虛擬網路卡,如果使用預設的虛擬網路卡,將造成網路效能低 落 之 問 題 , VMWare 公 司 針 對 Windows-based 作 業 系 統 有 提 供 vmxnet2 及 vmxnet3 兩種虛擬網路卡,使得網路效能得以提升,而在 45.
(56) Linux-based 的作業系統下提供 e1000 虛擬網路卡,以提升網路效能。. 圖 25 在虛擬交換器中的 vlan 開啟雜亂模式 在 實 體 的 Cisco 交 換 器 上 須 將 本 研 究 中 攻 擊 者 網 段 設 置 為 vlan20(路由器連接到交換器上的連接埠),而將內部的網頁伺服器所連 接的網段設置為 vlan10(網頁伺服器的網路卡連接到交換器上的連接 埠),並且將 ESX Server 的兩張實體網路卡接在實體交換器上,並在 實體交換器上設定其分別為 vlan10 及 vlan20,如此實體 Cisco 交換器 才能和虛擬交換器交換封包。 虛擬機器之配置 當實體環境建置完成後,開始進行虛擬機器之配置說明,在本研究 的實驗中須利用 VMWare vSphere Clinet 連線至 VMWare ESX Server,並在其中建立三個虛擬機器(Virtual Machine),如圖 26 所示。. 46.
數據
Outline
相關文件
Name of School: HONG KONG TAOIST ASSOCIATION THE YUEN YUEN INSTITUTE CHAN LUI CHUNG TAK MEMORIAL SCHOOL.. Address: 5 KO CHIU PATH YAU TONG KLN Tel:
• If the cursor scans the jth position at time i when M is at state q and the symbol is σ, then the (i, j)th entry is a new symbol σ
• If the same monthly prepayment speed s is maintained since the issuance of the pool, the remaining principal balance at month i will be RB i × (1 − s/100) i. • It goes without
If I buy a call option from you, I am paying you a certain amount of money in return for the right to force you to sell me a share of the stock, if I want it, at the strike price,
We propose two types of estimators of m(x) that improve the multivariate local linear regression estimator b m(x) in terms of reducing the asymptotic conditional variance while
augmented matrix [A |I 4 ], elementary row operation A
We compare the results of analytical and numerical studies of lattice 2D quantum gravity, where the internal quantum metric is described by random (dynamical)
S15 Expectation value of the total spin-squared operator h ˆ S 2 i for the ground state of cationic n-PP as a function of the chain length, calculated using KS-DFT with various