2009年11月4日 星期三

[觀點] 從記錄收集分析談IT Log管理

在現今的資訊系統和網路環境裡,Log幾乎無所不在,無論是在作業系統、應用系統和資料庫中,還是網路設備如router、switch,或是常見的資安設備像是入侵偵測系統、防火牆、防毒系統等,每天都會產生大量的Log資料,留下了系統與設備運作的各項記錄。

根據SANS機構針對全球2000大公司的調查顯示,驅使企業收集Log的前三項原因,第一是為了要偵測和分析與資安或效能有關的事件;其次則是想藉由IT控制和產生報表來預防系統的濫用,並提供法律上的鑑證;第三則是為了遵循像是沙賓法案、PCI資料安全標準、GLBA和HIPPA等法規的要求。

除了以上原因之外,像是協助評估和IT相關的事件,以減少可能的停機時間;或是需要去收集、分析、警示和歸檔與網路相關的資料,這些也是企業收集Log的原因。

Log收集保存的重要性

到底什麼是Log?其實Log就是資訊系統或設備在連線和運作時所產生的記錄。俗話說:「凡走過必留下痕跡」,藉由Log的收集和分析過程,可以讓IT人員能夠監控系統的運作狀態,並且判斷可能發生的事件,以及分析資料存取行為和使用者的作業活動。

換句話說,藉由Log的詳實記錄,可以幫助我們了解在企業的IT環境裡,究竟發生了什麼事,例如網路是否遭到惡意的嘗試入侵?系統和網路運作是否有異常情況發生?通常IT人員只要針對Log進行主動監控,就可以判斷可能的問題,或是在狀況未明時,透過Log的查詢分析,也能夠在很短的時間內找出原因。

從法規的觀點來看,Log管理更應視為IT營運策略中的一環,企業為了要遵守法規對營運和財務資訊的各項要求,Log的保存即顯得非常重要,尤其是它提供了稽核軌跡,讓稽核人員能透過對於Log的查驗,來確認企業的內部控制是否符合法規要求。如果萬一不幸發生了舞弊事件,Log也可以成為事件追蹤的管道,除了能釐清事件的發生過程,甚至可成為法庭上的證據,所以對於需遵循法規的企業,Log管理已經是必須要去落實的工作。

大量Log所產生的問題

隨著企業的規模和資訊系統與設備的增長,首先會面臨的問題就是眾多不同的設備和應用系統,產生了不同格式的Log,到底該如何去收集?而每天不斷產生的Log資料,一旦資料量超出人力可以判讀的範圍,又缺少適當的管理工具,對IT人員來說,反而會變成一種負擔。

過去,對於Log的管理方式,大多限制在單一的設備上,以防火牆為例,IT人員只能在單一介面上進行Log的查詢。不過,隨著混合式攻擊手法的普遍,只從單一的設備上,很難解讀出對於攻擊手法有效的判斷資訊,所以必須要透過不同的設備之間,利用時間或IP位址作關聯性的比對,才有辦法找出其中隱含的真相。

但是,如果要做到不同設備之間的Log分析,勢必就要針對Log進行集中式儲存與正規化處理,可是不同廠牌的資訊設備,產生的Log都分散在各地,即使能夠集中收集,隨著大量且不斷湧入的資料,到底該如何進行分類?資料要如何保存?如何查詢利用?這些都形成了管理上必須要面對的問題。

傳統Log管理的作法

基本上,針對Log的收集有二種作法,一種是讓設備自己將資料傳送到Log Server中,另一種則是讓Log Server定期自動地到各個設備去收集資料。不過,在某些應用系統上有時會很難運作,幸運的話,可能只需要安裝代理程式(Agent),就可以協助收集到所需要的資料,但若不幸的話,一些委外開發的應用系統,甚至連產生Log的作法都沒有。

目前,Syslog是普遍被應用的Log server架構,但也有一些作業系統並沒有支援它,需要透過額外的工具來進行資料轉換才行。此外,Syslog的缺點是當網路傳輸流量大的時候,部份資料可能會因此而遺失,再加上預設的Syslog流量本身是沒有加密的,並且使用UDP通訊協定來進行溝通,在過程中很容易被假冒的訊息來攻擊。而除了Syslog,SNMP trap也是用來傳遞資料給Log Server的一種常見的方法,但SNMP一樣在傳輸過程中沒有加密,所以也容易遭到偽冒攻擊。

Log管理方面的建議

SANS機構的調查報告指出,在Log資料方面,最讓IT人員感到頭痛的地方,依序是收集資料、搜尋資料和產出報表。因此,在Log管理方面,有以下幾點建議,可做為IT人員的參考:
  • 擬定適當的管理政策 - 在文件化的政策之中,首先應說明到底有哪些人需要存取Log資訊?通常可能會包括IT、稽核或法務人員;接著,必須決定哪些是重要的系統和設備,要如何去收集不同格式的Log資料;然後,還要定義哪些事件是需要優先監控和分析的,以Windows作業系統為例,需要留意的Log記錄可能會有:帳號登入失敗、帳號鎖定、建立了新帳號、使用者帳號狀態變更、修改安全群組、修改安全記錄、政策變更等。
  • 選擇適合的收集方式 - 請先進行企業的網路環境分析,再決定收集資料的方法,若要採取集中化方式進行,就需要特定的Log server來處理,但是要注意當大量Log資料傳輸時,可能會造成的網路壅塞情況。另外,Log server本身也需要進行系統安全強化,以避免受到攻擊而失效。
  • 應用適當的分析工具 - 大量的Log資料需要被分類、組織和搜尋,但是設備所內建的工具方面有時不是那麼容易使用,因此應選擇適當的整合式Log管理工具,並且測試確認是否能快速查詢分析,並產出符合法規或清晰易懂的報表,以滿足經營階層的需求。
  • 選擇適當的儲存方式 - 許多法規都要求Log必須保存一定的年限,以PCI資料安全標準為例,它要求企業需針對Log資料進行審查,並至少保存一年以上,因此Log資料的儲存與查詢,會是能否符合稽核時的重點。在國外的訴訟方面,Log有可能也會成為法庭上的證據,因此必須要確保資料的完整性,在歸檔與查詢時應避免修改原始資料,另外也可考慮加密儲存,以避免資料遭到竄改,並將儲存Log的媒體,放置在安全的地點。
  • 時間同步是重要關鍵 - 在Log管理之中,還有一個非常重要的地方,那就是必須確保各系統與設備時間的一致性,如果因為記錄的時間不同,在進行分析時,各個設備的Log資料即無法串連,甚至可能會誤導在問題處理時的方向,因此最好在企業內部架設一部Time server,以便所有設備可以進行時間同步。
最後,在本文所談到的Log管理和所謂的資安事件管理(SIEM),兩者之間還是有些不同,Log管理可說是資安事件管理的基礎,主要著重在Log的收集、分析、儲存與查詢,以解決IT運作問題與法規稽核的要求。至於SIEM則著重在從Log之中,進行即時的關聯性分析,以識別出可能的資安威脅攻擊,同時還可發出警示,並進入後續的資安事件處理流程,這也是目前所謂資安營運中心(SOC)的主要運作模式。(本文刊載於2008年11月號網管人雜誌)

沒有留言: