觀點

挖出Netflow資訊

2006 / 03 / 06
NED LINDBERG 譯/李倫銓
挖出Netflow資訊


Cisco、Juniper、以及部分廠牌的網路設備,能產生所謂網路流量的紀錄資訊『Netflow』—包括網路流量的來源位址、目標位址、通訊埠、通訊協定、服務類型、以及路由器進入介面這些資訊等。從這些Netflow資訊中取得有意義資料並不簡單,但藉由一些免費或商業工具軟體,卻可以讓你在這一大堆流量資訊中,有效地排序、檢視,好讓你能有效率地進行分析。而這些分析結果可讓你找出Spam來源,甚至網路殭屍主機(Botnet),進行下一步處理。對於ISP來說, Netflow的分析資料更有價值—本文將會簡介ISP應用案例,藉由Netflow資訊的協助,保護ISP的客戶、電子商務用戶,以及企業網路。

建立基礎概念
Cisco定義一個flow為:在同一組來源位址、來源通訊埠、目標位址、目標通訊埠之間的通訊封包,在一個flow資訊裡還包含了日期與時間資訊、封包數、傳輸量等等。Netflow資訊已經被拿來分析網路、網路應用情況、使用者行為,藉此達到頻寬分配、安全分析、以及帳務應用。使用Netflow來分析網路狀況其實是一種「異常偵測」(anomaly detection)的應用。藉由分析網路狀態找出與正常情況不同,而不像特徵式入侵偵測系統一樣,利用網路封包的Payload來偵測攻擊行為。

舉例來說,某種網路異常狀況是某一個來源對外產生了大量連線,可能就代表發生了DoS攻擊、蠕蟲攻擊、對外掃描、或是發送Spam。再分析Netflow資料中某通訊埠的資訊,可以找出確切的蠕蟲或是木馬程式的種類(例如:Slammer是利用Port 1434來傳播)。或者你可以找出正在對外發送大量流量的未知IP,或是反過來,找出某個IP正在網路中對內發送大量流量。

  目前已有許多自動化的工具程式可以用來處理各種不同種類的威脅。但是實際上,將所有流量紀錄下來,並且有能力進行各種分析,才能有效地鑑別出問題所在,並且處理。使用本文所提之三樣工具程式,可讓ISP更能有效地運用Netflow資訊進行安全分析。

Mark Fullmer''s Flow-Tools (www.splintered.net/sw/flow-tools)
Flow-tools是一套可以分析與處理Netflow資訊的函式庫和程式集合。由於Netflow資訊的多樣化,這些程式可以產生超過50種的報表,像是來源目的IP組合、Top N報表、或是自行選定要輸出的欄位、針對特定網路來標定flow、以ASCII格式輸出/輸入資料。這個網站提供了許多資源與資訊,可用來作flow分析的參考。
另外還有一個免費的Netflow分析工具是SiLK (http://silktools.sourceforge.net),由CERT Analysis Center所開發。其他還有一些商業的工具軟體,像是 AdventNet''s ManageEngine NetFlow Analyzer (http://origin.manageengine.adventnet.com/products/netflow)。
WebView
WebView是一個網頁報表工具,由Berbee Information Networks所開發,該公司提供資訊安全管理服務。藉由Webview作為flow-tools的介面,他所提供的查詢功能非常彈性,如此可以很簡易並迅速從大量flow資訊中找出可疑特徵與趨勢。他允許使用者依照IP位址、通訊埠、peers、flow數目、以及資料量找出所需要的資訊。目前這套工具僅提供給Berbee的用戶,但他是open source,Berbee也預計將放置在SourceForge.net提供大家使用。
KEDIT
KEDIT是Mansfield Software Group (www.kedit.com)提供的一套強大文字編輯工具,可提供進階的排序、資訊處理等功能。可以以簡易的指令來減少資訊量,他也提供強大的巨集指令可以移掉一些不感興趣的資料,像是路由器彼此之間交換訊息的流量。
針對Netflow的資訊進行分析是一件耗時且複雜的過程,進行分析的過程也許會覺得令人厭煩,但是你可以藉由自動化排程報表,來對某個特定你感興趣的區域進行分析,以便快速地得知你想要的結果,並且可以與人工查詢互補。在我們的ISP環境底下,我們使用這些工具來做資料探戡(Data mining)和流量紀錄,保留數個月的流量資訊以便於資訊分析。

開始挖寶吧
最能讓網路安全分析師感到雀躍的事情,莫過於找出網路異常並成功地避免傷害發生,我們藉由本文所舉實際ISP案例,來介紹如何有效發揮Netflow分析的威力。

找出垃圾郵件主機來源
對於ISP而言的第一個應用,便是找出那些被入侵當做跳板,亂發送廣告信件的主機,藉由每日程式自動對SMTP流量進行分析,而不必靠人工作業。由這些報表結果可以有效地降低ISP內的Spam數量,協助ISP把那些主機列入e-mail 阻擋名單中。
其實方法不難,選取SMTP流量,並且依據連線數目來排序,任何不是登記為郵件伺服器的主機,在短時間內發送大量SMTP流量,即有可能是被當作為跳板來發送廣告信件,需要通知該用戶進行處理。如果數度告知後仍不處理者,可以停權處置。
就算是一部登記為郵件伺服器的主機如果發送大量不尋常的流量,也必須深入了解。舉例來說,某個小公司或是學校,在深夜突然因為極大量的郵件流量而列入警告報表中時,再深入檢視這些對外郵件流量發現都是對國外的IP,這並不符合常理。針對該異常主機進行更深入的流量分析,甚至可以得知被安裝了哪隻郵件木馬程式,並告知用戶進行處理。

預警或追查惡意程式
當新病毒或是蠕蟲發動攻擊時,藉由Netflow的分析通常可以抓到一些蛛絲馬跡,像是感染到哪些區域。在我們的ISP案例中,我們可以得知Internet上用戶的感染狀況。舉例來說,由Sasser/Sober蠕蟲,可以由他們所攻擊的通訊埠以及大量對外發送流量的徵狀來辨識得知。在短短20分鐘內產生數以千計針對Port 445的流量並不是一個正常的行為,我們可以得知該來源應該就是中了Sasser蠕蟲。賽門鐵克、McAfee、Internet Storm Center與其他網路安全中心都提供許多關於病毒、蠕蟲、還有間諜程式的活動特徵,可以藉這些資訊,來分析自己的網路流量。

釣魚網站緊急應變
當有用戶緊急來電告知他剛剛收到一封釣魚網站的詐騙信,而且告知此釣魚網站的IP,這時身為一個ISP的安全分析師你可以從Netflow資訊中找出過去一個禮拜內曾經連結過這個釣魚網站的用戶名單。

協助找出防火牆漏洞
我們在某叢集伺服器所設置的防火牆紀錄檔中發現了可疑的事情,但是卻又在紀錄檔中摸不出頭緒,經過深入調查與分析Netflow資訊,我們發現有未授權的流量進入。有來自歐洲與美國的IP位址,而這些位址並不是來自管理這些叢集伺服器的加拿大公司。
我們研判SSH可能被入侵(請參見“可疑流量之紀錄檔:疑似SSH被入侵”圖表),經過通訊埠的分析資料,我們還發現這些主機可能被安裝了IRC server,而且這些伺服主機還連往世界上其他IRC伺服器,而這些IP都不是正常的。流量資訊並發現這些伺服主機被拿來攻擊其他伺服器,來擴展IRC殭屍網路的控制版圖。
得知此一狀況,經過處理後,IRC服務已經被停止,SSH密碼也已更換,伺服器上了新的更新程式,並將防火牆的政策訂的更為嚴謹。而接下來我們還是發現有一些持續的攻擊行為,但都沒有成功。

發現學校流出的可疑流量
學校單位一直以來都要直接面對許多安全問題,在本案例中,藉由排序可疑通訊埠,並進階地分析學校內的流量後,找出了可疑的問題所在:該通訊埠有明顯對外流量、發現未授權的P2P檔案交換行為、還有最可疑的是,竟然發現有來自中國的IP對學校資料庫主機進行連線。由於新型態威脅與攻擊日益增多,為了面對這些新挑戰,藉由『資料探勘』的彈性與能力,才能鑑識並面對這些多變的網路問題。ISP、網路安全管理員,藉由Netflow的分析資訊與協助,可以有效地了解網路狀況並保護用戶安全,在最短時間內解決問題。

Ned Lindberg 是一位經驗豐富的資訊安全專家,從PC至超級電腦都曾經協助處理過各類問題,目前任職於威斯康辛某ISP網路服務商。