DATE: 14/10/2009 陳威宇 格網技術組 雲端運算相關應用 (Based on Hadoop)
2 Two Topics ICAS : IDS-Log Analysis System Based on Hadoop and HBase NutchEz : An Easy Way to Crawl Web Pages by Nutch
3 ICAS IDS-Log Analysis System Based on Hadoop and HBase
4 網路型入侵偵測系統
5 警訊格式 [**] [1:538:15] NETBIOS SMB IPC$ unicode share access [**] [Classification: Generic Protocol Command Decode] [Priority: 3] 09/04-17:53: :1051 -> :139 TCP TTL:128 TOS:0x0 ID:4000 IpLen:20 DgmLen:138 DF ***AP*** Seq: 0x2E589B8 Ack: 0x642D47F9 Win: 0x4241 TcpLen: 20 [**] [1:1917:6] SCAN UPnP service discover attempt [**] [Classification: Detection of a Network Scan] [Priority: 3] 09/04-17:53: :1032 -> :1900 UDP TTL:1 TOS:0x0 ID:80 IpLen:20 DgmLen:161 Len: 133 [**] [1:1917:6] SCAN UPnP service discover attempt [**] [Classification: Detection of a Network Scan] [Priority: 3] 09/04-17:53: :1032 -> :1900 UDP TTL:1 TOS:0x0 ID:82 IpLen:20 DgmLen:161 Len: 133 ……….
6 Network IDS Interface
7 1. 重複的資訊太多 2. 難以瞭解全部的事件 3. 易忽略重要的訊息 These Events are MIS’s Nightmare !!!!
8 The Security Events Center 資訊安全事件中心 收集、整合、關聯惡意入侵警訊,於一個提供資安事 故訊息呈現的平台 主要功能 收集資訊 分析並整合事件
9 SEC Overview SEC
10 Alert Merge Example
11 What’s problem about the SEC ? 1. 大量的資料將導致效能變差 2. 資料庫毀損 3. 執行分析時,系統資源忙碌
12 ICAS ICAS, IDS Cloud Analysis System 透過雲端運算 Higher capability Fault tolerance 主要分析功能 Reducing redundancy Merge relation
13 ICAS Overview ICAS
14 System Architecture ICAS Component Overview
15 Program Procedure
16 Change SEC to ICAS (Architecture)
17 Change SEC to ICAS (components) MySQL Core Procedure Single Machine HBase Map-Reduce Multiple Machine Hadoop + LinuxLinux
18 Core ProcedureMap-Reduce Format Transfer Unit Setup Snort logging to MySQL Setup MySQL client logging to remote MySQL server Core Procedure Unit Fuse redundant data Merge data as event Program language Shell & PHP
19 Regular Parser Parsing original snort log and transfer to HDFS (hadoop file system) Analysis Procedure Dispatch job if pool is not empty and insert the result into database Data Mapper mapping Data Reducer Core ProcedureMap-Reduce
20 MySQLHBase sec_event 關聯式資料庫: 透過主鍵可與其他資 料表作關聯
21 MySQLHBase 雲端資料庫: 格式為三個維度 (Row Key, TimeStamp, Column) 搭配雲端運算架構
22 實驗環境 Machine: X6 CPU : Intel quad-core, Memory : 2g, OS : Linux : Ubuntu 8.04 server Software : version Hadoop : Hbase : Java : 6 Alerts Data Sets MIT Lincoln Laboratory, Lincoln Lab Data Sets Computer Security group at UCDavis, tcpdump file
23 Experimental Result The Calculation Time of Each Number of Data Sets
24 Experimental Result Throughput Data Overall
25 ICAS : 結論 由實驗結果可看出,雲端運算處理資料格式相 似且資料量大的情況下,能展現其效益,並提供 高容錯率、低獨占系統資源、多工作同時執行等 能力 ICAS 的特性適用於 Map/Reduce 演算法,故即 使都是一個運算節點的環境下, ICAS 也在大資 料量的分析有較好得效率 Hadoop 不適用要求即時性高、或是 latency 低 的系統,且每個版本的 API 差異大 關聯式資料庫對小量資料的讀寫的效率較好, 並且支援的語言也較多(如下頁)
26 ICAS : 結論 (2)
27 NutchEz : An Easy Way to Crawl Web Pages by Nutch
28 公司內部文件問題 有些內部資料雖放在網路上,但不適合 對外公開,僅在內部網路中的員工可以讀 取 搜尋引擎.. X => 靠印象找資料..O 新人 … 囧 rz 方法: 建立資料庫文件查詢系統: MIS=> 資料庫 用分類法建立樹狀資料結構:容易誤會 以上缺點:無法全文查詢
29 解決辦法 建立屬於公司內部的搜尋引擎 解析網頁內容 支援各種網頁格式 html, php, jsp… 統一的搜尋窗口 不同網站於不同主機,同一窗口 不用選擇資料類別 成本小 無痛 保密
30 全自動的搜尋解決方案 安裝簡單、操作方便 效率高、支援格式多、功能強大 開放原始碼 NutchEz
31 NutchEz 系統架構 Hadoop Nutch GUI Web Server NutchEz 使用者 管理者
32 What's Nutch 以 Java 來實做的 open source 搜索引擎 與 Hadoop 為同一創始者 以 Hadoop 為運算平台 目標: 一個月抓取幾十億網頁 為這些網頁維護索引 對索引文件進行每秒上千次的搜索 提供精準的搜索結果 以最小的成本運作
33 NutchEz : Nutch 的整合套件 簡易 安裝與操作都很簡便 透明 Opensource ,資訊不隱藏 廣泛 可分析不同檔案格式 隱私 可應用於搜尋內部資料 客製化 可設計成專用的 data mining 工具
34 可分析的格式與網路協定 text ext html js mp3 zip rtf msword msexcel msppt pdf rss openoffice swf file ftp http https 分析檔案格式網路協定
35 安裝
36 使用 - 建構搜尋內容 (1/5)
37 使用 - 建構搜尋內容 (2/5)
38 使用 - 建構搜尋內容 (3/5)
39 使用 - 建構搜尋內容 (4/5)
40 使用 - 建構搜尋內容 (5/5)
41 Running …
42 控制 – 網頁伺服器
43 實例: 機器: CPU Quad 4 2.4G / 4G mem 運作時系統平均使用率 : CPU 19% 、 MEM 20% 搜尋內容: 699 doc, 322 pdf, 9 ppt, 13 odt. 費時: 11 min Demo:
44 結論: NutchEz Nutchez 是一套 Opensource 的搜尋引 擎套件,核心為強大的 Nutch ,建構於 Hadoop 之上 適用於建立內部資料的索引、分析各 種檔案格式,且不會存放原始檔案 目前不支援搜索需登入帳號密碼的網 站,也無提供搜尋後統計資料
45 DATE:4/14/09 Thank You ! & Question ?