趨勢科技SPN研發部經理黃振修表示,Google實作PageRank的演算法是架構於Bigtable上,而Hbase正是Bigtable的開源版本,這也是他們選擇Hbasex來進行大資料圖學分析的原因。

圖片來源: 

iThome

全球惡意軟體數量成長率一年比一年快,2008年全球惡意軟體數量還不到2千萬支,統計至2013年,不重複的惡意程式已飆破快1.7億支。日前趨勢科技在臺灣Hadoop社群年會揭露了他們分析巨量惡意軟體背後的技術關鍵。趨勢科技SPN研發部經理黃振修表示,他們採用支援Hadoop的資料庫Hbase結合改良Google的PageRank演算法,來辨識出未知的惡意軟體。

在社交工程及網路戰爭的推波助瀾下,惡意軟體的數量不只龐大,且攻擊形式多樣,趨勢科技在防毒產品中採取了多種防毒策略因應不同的攻擊,例如當使用者瀏覽網頁和接收E-mail時,防毒軟體要防止這些惡意軟體進入使用者電腦中;萬一使用者的系統遭病毒感染了,防毒軟體則再透過病毒特徵辨識出被感染的檔案並加以移除;而當系統中有惡意程式執行時,防毒軟體要透過行為偵測,中止有害的程序。

不過,這些策略奏效的前提,是作用在已知的惡意程式,而每天都有新的病毒產生,因此能猜測出未知的來源是否為惡意,顯得日益重要。趨勢科技旗下有一項服務ThreatConnect(威脅情報入口網站),能整合各種資料來源,再從這些資料來源包含沙盒、病毒資料庫或是檔案偵測等,找出檔案、網址或是IP等實體(Entity)的相互關係,繪製出威脅實體關係圖(Threat Entities Relation Graph),可用來發現潛在的惡意威脅。黃振修說,他們從Google的PageRank演算法得到啟發,只要能收集足夠多的惡意程式及行為,便能從關係圖中已知的實體,預測其他未知實體的好壞。

關係圖中多數為未知實體

以一個名為FakeAV的木馬程式為例,根據趨勢科技所計算出的關係圖,FakeAV與13,000個檔案、50,000個網址以及6個漏洞有關,而這麼多相關的檔案、網址甚至E-mail,僅能辨識其中一小部分的好壞,絕大多數的實體都是未知的狀態。

黃振修表示,他們面臨大資料層級的課題,有大量的關係圖資料需要儲存、存取和處理,因此選擇符合需求的資料庫是關鍵。就儲存關係圖有3個需要考量的因素,一、資料庫不只要能處理龐大的資料,且還需高度可擴展性,二、儲存的資料是否能夠簡易的被處理及分析,三、資料庫的背後是否有健康的社群在維護。經過考量後,他們認為Apache Hbase完全符合他們的需求。

關係圖中存在頂點(Vertex)與邊(Edge),頂點為檔案、網址或IP等實體,而邊代表實體之間的關係。黃振修以八點檔連續劇中,人際關係網絡作例子,假設人物有Jack、Merry和John,把人物看作是關係圖中的頂點,頂點具有屬性,就如同Jack的名字,性別男性和婚姻狀態是已婚,而Merry是女性已婚,以及John是男性也已婚。以3人來解釋頂點之間的關係,Jack與Merry存在婚姻關係,而John單戀著Merry,這些關係以邊表示。趨勢科技將ThreatConnect所產生的惡意程式的關係圖存進Hbase。

黃振修表示,他們每天會從3GB的原始資料中,萃取出約450MB的關係圖資料放入Hbase中,這些資料會存放3個月,因此在Hbase中隨時有約20GB經過壓縮的資料,大概是4千萬個頂點與1億個關係。

以2表格分別記錄頂點與邊的資訊

趨勢科技在Hbase中創建2個表格(Table),一個用來存放頂點資訊,另一個存放表示頂點間關係的邊。頂點格式有鍵值與屬性,鍵值由頂點ID與實體型態(Entity type)組成,屬性可用來紀錄型態與值。邊的格式也有鍵值與屬性,邊的鍵值由1個代表2頂點關係的標籤連接2個頂點鍵值組成。

趨勢科技從多個來源收集資料後,先以HDFS形式儲存,經前處理後,從這些原始資料中計算出頂點與邊的資訊,存入Hbase的關係圖表格中。

他們以批次的方式執行一些演算法,如改良的PageRank演算法,能由已知的實體狀態預測未知的威脅,並將這些結果存回關係圖表格中。經過實驗,他們計算42,133,610個頂點與108,355,774個邊,其中4.1%為已知惡意實體,0.1%為已知安全實體,其餘皆為未知狀態,經過34小時運算,共找出1,291個惡意程式,經過排名取前200名,其中只有2個誤判案例,精確度高達99%。

關係圖資料庫能服務多重客戶端

除了用來預測惡意實體外,這個Hbase資料庫還服務3個主要客戶端,分別為:一、即時的客戶端,黃振修說,這通常為自動化系統,透過他們提供的API查詢關係圖資訊。二、批次運算客戶端,資安專家會挑選特定的頂點,並查詢與此頂點的關聯,系統會產生關係圖的檔案,用視覺化與瀏覽他們感興趣的資訊。三、關係圖挖掘工具,黃振修表示,資安專家有時候無法確定欲搜尋的特定頂點,便可透過一些規則查詢他們感興趣的結果。趨勢也開源釋出這套以Hbase資料庫打造的圖學分析程式HGraph,並於Github上免費下載。

熱門新聞

Advertisement