前瞻的遠見、熱血的團隊、一流的技術,
造就「將防毒帶上雲端」的奇蹟!
當世界還不知道什麼是「雲端」,他們已在默默「造雲」;
當所有人跟上造雲時,他們已積極為客戶提供雲端服務。
一個熱血團隊、一次發現之旅,看趨勢科技如何讓防毒走上雲端。大家都在畫雲端大餅,架構雲端藍圖,虛擬雲端理論;只有趨勢科技敢大方公開雲端應用研發歷程和技術。本書獨家披露趨勢雲端發展歷程與研發祕辛,告訴你,趨勢科技如何使用目前的熱門技術如機器學習、資料探勘和Hadoop,來解決網路安全威脅的問題。
全球第一本結合雲端運算和資料探勘、網路防毒的雲端應用技術寶典。內容完全出自研發工程師之手,內含真實的研發實戰案例,最接近現今網際網路現況。想了解雲端運算、認識網路資安技術、探索雲端實戰應用,絕對不能錯過!
1. 這是市面上絕無僅有的一本書
2. 全球第一本資訊工程師的雲端技術入門指南
3. 全球第一部雲端應用技術必備寶典
4. 全球第一本結合雲端計算和資料探勘的技術書
5. 這是全球第一本完完全全寫自於研發工程師的書
6. 內含三十位趨勢科技資深研發團隊菁英經驗和心血
7. 最接近現今網際網路現況的研發案例和解決方向
8. 真實的研發實戰案例,不是只有理論敘述
9. 著重於雲端的實際相關應用,包含最重要的資料探勘
10. 揭發並探討網際網路的安全問題
11. 告訴讀者最真實的網路安全廠商研發技術
作者簡介:
陳永強
國立台灣大學數學系畢業, 美國威斯康辛大學(University of Wisconsin)資訊科學(Computer Sciences)博士;曾任教於馬里蘭大學(University of Maryland),教授作業系統(Operating Systems)、編譯器建構(Compiler Constructions)及電腦演算(Computer Algorithms)等資訊科學。先後任職於AT & T貝爾實驗室(AT&T Bell Laboratories)、甲骨文公司(Oracle)等科技業。
2002 年進入趨勢科技,採用機器學習(machine learning)、資料探勘(data mining)、Hadoop 等技術,推動趨勢科技雲端運算服務的開發;並有兩項機器學習和資料探勘的相關研究,獲得美國專利。2010年退休後,仍致力於Hadoop 系統的圖像探勘(graph mining)和組合最佳化(combinatorial optimization)研究。
趨勢科技雲端防毒團隊
防毒評比全球第四名、台灣第一名的防毒團隊。2004年首次推出雲端服務,為資安界創舉;2008年又更進一步提出主動式雲端截毒技術,是業界第一個以雲端為主的防毒方案,雲端防毒技術為國內業界龍頭。
各界推薦
名人推薦:
趨勢科技董事長 張明正
趨勢科技共同創辦人 陳怡蓁
趨勢科技執行長 陳怡樺
資策會董事長 史欽泰
中華電信董事長 呂學錦
緯創集團董事長 林憲銘
資深媒體人 陳文茜
台灣大學資工系教授 劉邦鋒
名人推薦:趨勢科技董事長 張明正
趨勢科技共同創辦人 陳怡蓁
趨勢科技執行長 陳怡樺
資策會董事長 史欽泰
中華電信董事長 呂學錦
緯創集團董事長 林憲銘
資深媒體人 陳文茜
台灣大學資工系教授 劉邦鋒
章節試閱
簡單的國小數學題
——雲端防毒的起點
有一天,公司的執行長希望我們團隊提出一份報告:我們到底保護了多少客戶?找出我們的客戶有誰曾經造訪過這些惡意連結。
這是一個非常基本和重要的問題,但在當時卻是我們的噩夢。因為那時,光是在台灣,我們就有一百萬個用戶,我們根本沒有技術知道每個用戶的電腦每分每秒發生什麼事。直到我們真的實際去做時,才發現這不是什麼高深的資訊技術,而是一題簡單的小學數學題:
想知道有多少客戶曾經嘗試瀏覽某個惡意網站,我們會去檢查每個客戶曾經瀏覽過的網頁連結,如果有一個客戶曾經瀏覽這個惡意網站的連結,就在記錄上加一,接著繼續檢查下一個客戶,然後不斷重複一樣的步驟,直到每個客戶的瀏覽歷史都檢查過。
是不是感覺很熟悉?回想一下,這跟小學時代數學課堂中,老師要我們找出一到一百內所有質數的問題,是不是很相似?
在這網際網路發達、社群網路興起的時代中,駭客們不再以搞掛你的電腦為樂,而是汲汲於偷取個人資料為主要目的,包括:銀行帳號、密碼、信用卡卡號、個人身分敏感資料或私人照片等。不得不佩服駭客們對技術追求的執著與熱情,只可惜他們把天分用錯了地方。
歷年來有關駭客題材的影視作品無計其數,還有人精心挑選了三十部最好的駭客電影,其中包括:眾所皆知的○○七系列電影的〈黃金眼〉(Golden Eye)、珊卓.布拉克主演的〈網路上身〉(The Net)、基努.李維主演的〈駭客任務〉(The Matrix)、布魯斯.威利主演的〈終極警探4.0〉(Die Hard 4)等,成功藉由一般民眾對駭客的恐懼之心,吸引他們走進戲院。
其實在趨勢科技內,每天也都不斷上演類似的電影情節,只是工程師們長得沒電影中男女主角們帥或美麗而已。這樣的情節就如同我們設計程式如何從一堆網路封包及行為中,找出駭客的攻擊一樣有挑戰性。在趨勢科技的雲端系統中,每天收到數以百億筆的資料,如何從中找出不尋常的行為或攻擊手法,不是一件容易的事情。很幸運的,最近幾年開始流行的「資料探勘(Data Mining)」和「機器學習(Machine Learning)」的技術,可以說是我們的救星。
啤酒與尿布的關係
資料探勘就是從資料中挖掘出潛在、明確和有意義關係及法則的過程。不知大家是否聽過超級市場的「啤酒與尿布」故事?一九九○年代,美國沃爾瑪超市經長年的資料分析,發現每個週末晚上,尿布與啤酒的銷售量最好,再進一步了解,發現原來一般小家庭,做太太的通常是留在家中看小孩,而由先生去超市幫小嬰兒買尿布,此時先生就會順便帶一手啤酒回家,這樣的情況最常發生於週末夜晚。這是在行銷管理學上相當著名的「購物車分析」案例。而這個案例就是一種頻繁樣式探勘的應用。
頻繁樣式探勘是近年來資料探勘領域最重要的演算法之一。主要是由於IBM 在一九七○年代藉由銷售營運系統(POS),獲得大量的交易資料,公司的資訊人員面對這些資料不禁想問:這些資料的背後是不是隱藏了什麼重要的知識。頻繁樣式分析便是針對這樣的交易資料,企圖找出哪些商品最常被消費者一起購買,因此出現在同一筆交易記錄當中。
這個問題之所以困難,是因為這是一個組合性(combinatorial)的問題,小數目的產品就能產生大量可能的組合。舉例來說,假如一家超商有四個商品,顧客購買商品的所有組合就有十六種可能。然而,一般商店所販賣的商品少說也有數百種,因此,所有可能的組合成了天文數字。以當時的計算機能力,要檢查所有的組合是否出現夠多次,是一個很大的挑戰。
另外,針對啤酒與尿布的案例我們可以觀察到一個有趣的現象,就是只要列出出現在某個次數以上的所有排列組合即可,並不需要檢查在這個空間中的所有組合。比方說,若是買A 產品的人次為一百,同時購買A與B 的人次就一定少於或等於一百;而若是購買B 的人次不足所訂定的目標次數,那所有組合中有A 產品的,也就根本不可能出現夠多次數。
這是一九九一年被提出的反單調性規則(Anti-monotone),藉由這樣的原則可以快速的從大量的資料庫中篩選出,出現次數夠頻繁的組合。這些找出來的頻繁樣式對於管理者有很多有趣的幫助。比如商場的管理員會知道哪種商品與哪些商品搭配最容易被賣出,因此在商品的擺設上就可以運用這些知識來做調整,以增加銷售;你可能觀察到各大賣場出口處都會擺一些口香糖、電池等,超商中擺洋芋片和可樂的距離,會比可樂和報紙的距離近,其背後都有隱藏的祕密。
對我們防毒團隊而言,就能發現惡意軟體會偷藏檔案在某個目錄下,也常會在Registry 中多加一筆AutoRun 的動作;或者是使用者瀏覽了提供下載的網站時,被暗地執行了Javascript 等;這些有趣的關連會成為我們進一步分析的觀察對象。關連式規則是頻繁樣式探勘後一個非常有意思的應用,藉由不同頻繁樣式的數據分析結果,可以用機率模型來建立關連式規則。比如我們可以推論惡意軟體在做了A 行為和B 行為後,接下來最有可能會做那個惡性的動作呢?這種規則所產生的預測能力可以協助我們偵測惡意的行為,並提高防毒的正確率。
讓電腦預測未來
機器學習應算是人工智慧領域中,近幾年比較活躍的子領域,是因為網際網路風行及各種數位資訊普及所因應而生的學科。嚴格的說,機器學習是要找出電腦寫程序的方法,使電腦能夠利用過去的經驗或例子來學習出一個模型,然後我們可以用這個模型替我們解決問題。
比如說,如果我們收集一組已知的垃圾郵件和一組正常的電子郵件,我們可以建立出一種學習模型,該模型可以用來預測任何新的電子郵件為垃圾郵件或正常郵件。就某種意義上說,我們希望找到一個學習的模型,可以為我們做準確的推論,它和統計推論有非常相似的目的,所以機器學習採用很多統計的觀念。
坊間一般將機器學習粗分為「監督式學習」和「非監督式學習」兩大類,學術上也常用「分類演算法」和「分群演算法」來分別描述其主要特性。每一種演算法都有其合適解決的問題及不合適解決的問題,主要是依據對要解決的問題資料「了解程度」和「完整度及變異度」的不同,來決定使用那種方法。
所謂的「了解程度」是指你要解決問題的資料是否已被正確的標記及分類;所謂的資料「完整度」,是指目前你手上有的資料與世界上所有資料(包括過去、現在與未來的資料)的完整度比較,而資料的「變異度」指的是資料特徵隨時間變化的速度及程度。
若是你只收集了一百萬封從某地寄來的賣假錶的垃圾郵件來讓機器學習,這時就很難讓機器學得其他賣假威而鋼(Viagra)或印度神油、西班牙金蒼蠅等垃圾郵件的模型;所以資料收集是一個決定預測正確性高低的重要因素。當然,最難的還是預測未來的新攻擊模式,這也是所有網路安全公司及學術單位所積極尋找解決方案的主要方向。
雲端防毒的第一步
網際網路之所以迷人,就在於它的變化無常。網站的更新時時刻刻,我們必須有一個更有效率的方式,能夠即時知道哪裡有惡意的網路威脅、哪裡有客戶可能去瀏覽的惡意網站。
正當大家一窩蜂的把所有運算處理都往雲端上丟,我們想到了一個反其道而行的方法:利用用戶端。不難想像,同一個網頁在同一個時間可能有無數的人同時去存取;所以,在同時間內,我們可能有許多客戶用戶端同時去存取,因此我們的客戶其實就是最好的前哨站、探測器。尤其,客戶電腦中都裝有我們的防毒或安全產品,當用戶端瀏覽到惡意網站時,我們在用戶端的代理程式便可以即時分析這個網頁,如果分析結果發現這個網頁疑似惡意網頁,就可以將相關的資訊送回趨勢研究中心,經過趨勢研發中心的雲端伺服器做即時分析,確認為惡意網頁之後,便可以立即更新雲端上的病毒碼或資料庫,如此一來,下一個客戶再嘗試去連結同樣的惡意網頁時,我們的用戶端代理程式便會防止這個連結,進而達到即時保護客戶的目的;這就是我們已經申請專利的雲端服務中的守望相助反饋功能(Feed back service)。
這些用戶端代理程式分析過、反饋傳送回來的資訊,對我們來說可是非常珍貴的資訊,因為我們在用戶端的代理程式已經替我們做了第一次的分析過濾,而透過分析這些反饋的資訊,其中包含了垃圾郵件、惡意網頁,甚至病毒檔案等,這些不同來源的資訊,其實背後有相當大的關連性,藉由研究發現這些不同來源之間的關連性,我們甚至可以預測某些暗藏的網路威脅——這正是我們所做的Smart Protection Network(主動式雲端截毒系統)。
簡單的國小數學題
——雲端防毒的起點
有一天,公司的執行長希望我們團隊提出一份報告:我們到底保護了多少客戶?找出我們的客戶有誰曾經造訪過這些惡意連結。
這是一個非常基本和重要的問題,但在當時卻是我們的噩夢。因為那時,光是在台灣,我們就有一百萬個用戶,我們根本沒有技術知道每個用戶的電腦每分每秒發生什麼事。直到我們真的實際去做時,才發現這不是什麼高深的資訊技術,而是一題簡單的小學數學題:
想知道有多少客戶曾經嘗試瀏覽某個惡意網站,我們會去檢查每個客戶曾經瀏覽過的網頁連結,如果有一個客戶曾經瀏覽這個惡...
目錄
1飛上雲端的趨勢——不得不面對的巨量資料
2簡單的國小數學題——雲端防毒的起點
3讓水蒸氣變成雲——Hadoop、HDFS、Hive系統
4重心法,不重招式——資料探勘與機器學習
5金鐘罩鐵布衫——主動式雲端截毒
6雲端的垃圾分類——電子郵件信譽評等服務
7當垃圾信件如雪片——雲端郵件安全代管服務
8雲端警報器——網頁信譽評等服務
9雲端駭客任務——對抗網路惡意威脅
10獵殺長尾變形蟲——檔案信譽評等服務
11讓雲不只是雲——巨量資料的雲端運用
12架起美麗的彩虹橋——高智慧的「端」
13熱血集中營——雲端團隊的文化和工作模式
14比雲更高的世界——展望大未來
附錄:相關用詞中英文對照表
1飛上雲端的趨勢——不得不面對的巨量資料
2簡單的國小數學題——雲端防毒的起點
3讓水蒸氣變成雲——Hadoop、HDFS、Hive系統
4重心法,不重招式——資料探勘與機器學習
5金鐘罩鐵布衫——主動式雲端截毒
6雲端的垃圾分類——電子郵件信譽評等服務
7當垃圾信件如雪片——雲端郵件安全代管服務
8雲端警報器——網頁信譽評等服務
9雲端駭客任務——對抗網路惡意威脅
10獵殺長尾變形蟲——檔案信譽評等服務
11讓雲不只是雲——巨量資料的雲端運用
12架起美麗的彩虹橋——高智慧的「端」
13熱血集中營——雲端團隊的文化和工作模...