• 沒有找到結果。

受感染主機對區域內其他主機所造成之影響經分析後其流程如圖 3-4 所示。

圖 3-4. 惡意程式感染途徑

對於第一個 Downloader.exe 的程式應是透過釣魚網站或其他的入侵途徑所執行,在 本研究中觀察的是在更新程式開始後的感染行為,在 Malware_exe02.exe 的程式為一 ARP 欺騙(ARP Spoofing)的攻擊程式,在下載執行後即在區域網路內對所有連線的主機 發動假的 ARP 封包竄改各主機中 ARP 快取(ARP Cache)的資料,使得所有要傳送到網 際網路上的封包完全流過這台受害的主機再加以轉送。這樣除了能監聽到區域網路內其 他主機所傳送的資訊外,本研究亦觀察到這個 ARP 欺騙的攻擊行為還利用這個轉送的 過程,根據轉送資料判定,若為瀏覽網頁資訊,則將回送給使用者之資料中多加上了一 個內嵌框架(iframe)[26],其內容指向某個惡意網站,讓其他受害主機前去下載惡意程

式,如圖 3-5 所示。這樣的模式會讓其他在區域網路內的其他使用者在不知不覺在使用 攻擊 (Man-in-the-Middle Attack)[27]的手法,去欺騙其他相同區域內的主機自行下載植 入,並開始自動更新的程式。

連線主動連往前次更新後所指定的惡意網站更新伺服器,在惡意網站發布新的 下載列表與惡意程式後,所有受感染的受害主機在極短的時間內就可以完成新 版惡意程式之更新,同時可安排下次更新的惡意網站網址,而新的惡意網站網 址可能已不同於先前的網址。

z 由於惡意程式更新機制採用 HTTP 協定連線,而企業、機關、組織乃至於個人

Domain Name 正解對映,

me 方式呈現的網址,而依據

並利用虛擬主機(Virtual Host)技術隱藏惡意站台的存在,致使以連結網址中的 Domian Name 為偵測基礎的方法無法有效防禦。

z 惡意程式所下載的更新列表內容為以 Domain Na

DNS 反查的結果是無法得知其所有的 Domain Name 為何,只要惡意網站頻繁 更換惡意程式更新列表內的 Domain Name 即可規避過濾 URL 的防禦方式,故 以 URL 過濾方式防堵惡意網站是非常沒有效率的。

z 全球資訊網網站技術中,虛擬主機(Virtual Host)技術極

由入侵合法網站在不影響正常服務下建立惡意程式更新機制之環境,利用此一

體、IDS、IPS 等病毒碼特徵比對的防禦方法,有可能因為病毒碼還來不及更新 即遭到惡意程式的零時差攻擊與感染,因此以病傳統病毒碼特徵比對的防禦方

早發現這類特殊的惡意網站,並做必要的處理。

第4章 惡意程式下載網站偵測模組

依據第三章的研究結果,該類型惡意網站及其惡意程式具有以下特徵:(1)採用具變 化彈性的 HTTP 自動更新機制,其更新機制核心為位於網際網路上之惡意網站,(2)利用 DNS 特性及 Virtual Host 等網站技術,多層次架構,多點於大範圍網路環境佈置,避開 網路安全系統的追查並提高隱匿性,(3)惡意程式的版本更新速度快,使得以特徵碼比對 方式可能無法即時有效偵測,(4)以 ARP 欺騙攻擊技術作為主要感染途徑。本研究以大 型網路環境管理者的立場,在分析上述惡意網站及其惡意程式的特性,針對大型網路環 境管理的需求,提出了一套分析成本較低的網路流量分析方法進行惡意網站的偵測方 式,其中以包含網路第三層 IP 資訊的 NetFlow 流量資料為分析的基礎,利用惡意程式 使用 ARP 欺騙攻擊手法感染及其更新機制集中連線至惡意網站更新時,所造成的行為 上時間與空間區域群聚特徵來彙整相關變數,並使用資料探勘分類分析方法來建立惡意 程式下載網站偵測模組。

4.1 NetFlow 簡介

網路封包在網際網路(Internet)上傳遞時,所使用的傳輸協定都是仰賴網際網路協定 (IP, Internet Protocol)來進行傳遞,而在網際網路上依據網際網路協定擔任傳遞轉送封包 工作的設備就是路由器(Router),所有網路封包在網際網路上的傳遞都必須依賴沿途所 經過的路由器層層傳送方能到達目的地,因此路由器是封包在網際網路上的必經途徑,

也是適合記錄網際網路封包行為的網路節點。

Cisco 公司 Darren Kerr 和 Barry Bruins 在 1996 年發展一套名為 NetFlow 的網路流 量資訊紀錄技術,該技術依據同一連線路徑的網路封包會連續傳輸的特性,在路由器的 快取中存著連線的資訊,當路由器的 NetFlow 功能打開後,路由器就會擷取相關特定的 資訊彙整到 NetFlow 資料紀錄中,直到滿足 NetFlow 定義的 Flow 紀錄結束條件就會將 該筆 Flow 紀錄以 UDP datagramn 的方式送到管理者所指定的 NetFlow 收集設備之中儲 存起來供後續需要分析使用。

目前 NetFlow 開始發展至今已經擁有許多的版本,而目前最主要的版本有 V5、V7、

V9 三種,且各網路設備製造廠商亦有實作自家類似 NetFlow 的網路流量資訊記錄技術,

但目前受到最廣泛支援的當屬 NetFlow Version 5,本研究即是使用目前最普遍應用的 NetFlow Version 5 相關資料進行偵測模組的建立,其相關屬性與說明如表 4-1(Cisco, 2007)[5]所示。

表 4-1. NetFlow V5 資料屬性

資料屬性 說明

Flow 來源 IP 位址 Source IP Address

Flow 目標 IP 位址 Destination IP Address

轉送封包至下一個路由器的 IP 位置 Next-Hop Router IP Address

Flow 流入的路由器網路介面 SNMP 索引 Input Physical Interface Index 號

Flow 流出的路由器網路介面 SNMP 索引 Output Physical Interface Index 號

該 Flow 累計傳送的封包數量 Packet Count for this Flow

該 Flow 累計傳輸的 Byte 數量 Byte Count for this Flow

Flow 起始時間戳記 Start Of Flow Timestamp

Flow 結束時間戳記 End Of Flow Timestamp

Flow 來源端 L4 通訊埠 Source TCP/UDP Application Port

Flow 目的端 L4 通訊埠 Destination TCP/UDP Application Port

TCP 連線旗標(SYN, ACK, RST, FIN 等) TCP Flags

封包格式(TCP 或 UCP) IP Protocol (for example: TCP=6; UDP=17)

封包服務類型,通常做為流量控制用途 Type of Service(Tos) byte

來源端 AS 號碼 Source AS Number

目的端 AS 號碼 Destination AS Number

來源端 IP 的子網路遮罩 Source Subnet Mask

目標端 IP 的子網路遮罩 Destination Subnet Mask

在 NetFlow 的資訊定義中 Flow 紀錄是單向的流量資料,以 Source IP address、

Destination IP address、Source port number、Destination port number、IP protocol type、ToS byte、Input Physical Interface Index (ifIndex)等七項屬性來定義出獨一無二不重複的紀錄 項目;NetFlow 根據這七項屬性將單向、相同來源和目地且連續的一系列封包定義為一 個 Flow 紀錄,而路由器依此定義將所有流經的封包建立對應的 Flow 紀錄,並將符合同 一筆 Flow 紀錄的封包予以累計封包數量及封包 Byte 數等相關資訊。

此外,由於路由器儲存 Flow 記錄的空間有限,故在 NetFlow 的定義中,一筆 Flow 紀錄的開始條件為封包進入路由器且 Flow Table 中不存在符合該封包的紀錄;而 Flow 紀錄的終止條件則為以下任一條件發生時,即會將 Flow 匯出至其他網路伺服器儲存,

並將已匯出之 Flow 紀錄從 Flow Table 中移除:

z 該筆 Flow 紀錄超過指定時間沒有任何封包符合該 Flow

z 該筆 Flow 紀錄雖有封包持續進入,但已超過 Flow 記錄保留之最長限制時間

z 路由器儲存 Flow 紀錄的 Flow Table 已滿,便將 Flow Table 所有的紀錄匯出

z 依據 TCP 通訊協定的特性,當 Flow 的通訊協定為 TCP 時,收到含有 FIN 或 RST 旗標的封包,TCP 連線所屬的 Flow 結束匯出

本研究收集國立高雄大學校園網路骨幹核心路由器 NetFlow 流量資料供本研究分析 使用,NetFlow 流量資料收集架構如圖 4-1,高雄大學校園網路中底下連線接取單位為 各行政單位、教學單位、研究單位及學生宿舍等數十單位;依據高雄大學校園網路之架 構,所有高雄大學校園網路下轄單位對高雄大學校園網路外之連線,除少部分單位元擁 有額外擁有其他 ISP 接取線路外,大部分網路流量都會經過高雄大學校園網路骨幹核心 路由器,因此收集高雄大學校園網路骨幹核心路由器之 NetFlow 資料便可掌握高雄大學 校園網路內所有流經該核心路由器的連線資料,其中這些資料包含了高雄大學校園網路 內電腦與外界的正常流量資料及來自外界網路威脅流量資料。

圖 4-1. NetFlow 資料收集架構圖

4.2 系統架構

本研究建立惡意網站偵測系統架構如圖 4-2,以已知分類之 NetFlow 資料作為訓練 資料,分別依據惡意程式更新行為在時間上與空間上的特徵進行 NetFlow 變數資料彙 整,透過分類學習演算法的分析學習建立惡意網站分類偵測模組。建立惡意網站分類偵 測模組後,將即時收集的 NetFlow 資料以相同之時間、空間變數彙整方式彙整相關變數,

再利用已建立之惡意網站分類偵測模組對這些彙整完的變數資料進行分類判斷,以區別 是否為惡意網站或是一般正常使用的網站[7]。

圖 4-2. 惡意網站偵測系統架構

4.3 建立偵測模組的方法

本研究的目標就是想要找出網路上正在活動的惡意程式下載網站,而具體的方法就

是將網際網路上的網站正確的區分成正常的網站以及惡意程式下載網站。故本研究利用 NetFlow 網路流量資料進行彙整,將正常的網站與惡意網站在時間上與空間上行為特徵 的相關變數資料彙整成資料探勘的分類變數,再透過分類分析方法建立惡意程式下載網 站偵測模組。在分類分析法部分,本研究基於訓練及分類判斷時所需的時間成本考量,

採用了下列三種分類方法:貝氏分類法(Naïve Bayesian)、決策樹分類法(Decision Tree) 與支援向量機分類法(Support Vector Machine)。

NetFlow 變數彙整部份,依據本研究第三章惡意網站行為分析結果,惡意網站每次 連線所傳輸的資料大小並不固定,且變化頻繁,而網路上亦有入口網站、拍賣網站、軟 體下載網站等各式網站,使得正常網站的流量資料亦無一定的規則特徵,因此單純以 NetFlow 變數進行資料探勘的分類分析,並無法將網站的流量之中的惡意網站流量資料

NetFlow 變數彙整部份,依據本研究第三章惡意網站行為分析結果,惡意網站每次 連線所傳輸的資料大小並不固定,且變化頻繁,而網路上亦有入口網站、拍賣網站、軟 體下載網站等各式網站,使得正常網站的流量資料亦無一定的規則特徵,因此單純以 NetFlow 變數進行資料探勘的分類分析,並無法將網站的流量之中的惡意網站流量資料

相關文件