統計 分析過去 ... 預知未來 http://project.honeynet.org/ 資料來源: http://project.honeynet.org/papers/stats/ 在過去的幾年裡,Honeynet Project 已經收集和歸檔了 backhat 的活動訊息,我們盡我們最大的能力來記錄和捕捉對 Honeynet 每一個探測,攻擊,和使用。這些原始的數據有很高價值。我們的重點會放在兩個部分,第一,我們打算演示 Blackhat 團體是怎樣活動的。不管你是誰,你是不安全的,我們的目標是讓你認識到這些威脅的存在。其二,為了對一些早期警告和預報內容的進行測試,通過鑒別方法和傾向,可能預測在攻擊發生之前的攻擊和進行一定程度的對抗。我們使用 Honeynet Project 採集到的數據來測試這個理論。 The Collected
Data Honeynet 網路是用來捕捉數據的網路,是一些使用普通的網路作業統,如:Red Hat Linux 或者 Windows NT 並在預設的設定情況下執行現的。Honeynet 既沒有對企圖來標榜 Honeynet 也沒有企圖來 "引誘" 攻擊者。理論上來說這個站只會有很少的活動跡象,就想我們沒有廣告任何服務和系統。 Honeynet 數據有價值的地方是 Honeynet 減少了主動錯誤訊息(false positives) 和被動錯誤訊息(false negatives) 所產生的問題。主動錯誤訊息(false positives) 指的是當組織由於惡意活動而被通知警報時候,經檢查其實沒有任何事情發生,而當這個組織持續的被主動錯誤訊息(false positives) 所觸發警報,他們開始忽略他們的警報系統和數據採集,導致警告系統發生人為的失效。舉個例子,MAIL 入侵偵測系統警告管理員系統被攻擊,可能是一般已知的攻擊被偵測到,但是,這個警告可能是由一封包含對這個已知漏洞的警告並包含了攻擊者所需的 Souce Code 來通知管理員的郵件錯誤觸發的,或者可能是網路監視通訊程序 SNMP 或者 ICMP 錯誤觸發的。主動錯誤訊息(false positives) 對於大多數組織機構來說是是一項持續的挑戰。Honeynet 通過不包含任何實際的產品通訊所觸發的訊息來減少這個問題,即不安裝任何相關應用產品。因為 Honeynet 網路沒有實際用途,它只是為了捕獲未授權的活動,這表示任何訊息封包的進入和離開 Honeynet 都會被認為是有嫌疑的(因為沒有任何應用平台),就簡化了數據捕獲和程序分析,減少主動錯誤訊息(false positives) 的產生. 被動錯誤訊息(false negatives) 是多數組織機構需要面對的另一項挑戰,被動錯誤訊息(false negatives) 就是對於真實的惡意攻擊者或者未授權活動偵測失敗。多數組織機構有適當的機制來檢測攻擊,如入侵偵測系統,防火牆日誌,系統日誌和程序記錄。這些工具的目的是為了偵測有可疑或者未授權活動,但是,其中有兩個重要的問題會導致產生被動錯誤訊息(false negatives) 偵測失敗:數據負載過重和新的漏洞,數據負載過重是當組織機構捕獲過多的數據,而沒有全部被查看,因此攻擊者被忽略過,如,多數組織機構記錄 G 等級的防火牆或者系統活動訊息,這樣對與重新複查這些成噸的訊息來鑑別可疑行為變的極其困難。第二個問題就是新型漏洞的攻擊,而造成安全軟體沒有能力來偵測這種個攻擊。Honeynet 通過絕對的捕獲所有進出 honeynet 的訊息來減少這種新型攻擊產生的漏捕。記住:Honeynet 裡只有很少或者沒有的相關應用平台和程序所產生的活動,這表示所有捕獲的相關訊息是有一定嫌疑的。即使我們漏捕最初始的攻擊,我們仍然截獲這個活動,如 Honeynet 中有 2 個系統在沒有任何警告給 Honeynet 管理員的情況下被入侵,我們沒有探測到這次攻擊知道被入侵的主機發起對外的連接,一旦這些嘗試被我們探測到,我們就檢查了所有捕獲的活動訊息來鑑定這個攻擊:它是怎樣成功的,為何我們漏捕了,通過這些研究,honeynet 減少了被動錯誤訊息(false negatives) 所產生的問題. 對於有價值的數據的複查可以很明顯的減少主動錯誤訊息(false positives) 和被動錯誤訊息(false negatives) 的產生。記住:下面我們所討論的發現是特定我們的網路,這不意味著你的組織機構中會看到同樣的模式或者行為,我們使用這個採集到的數據來演示部分 blackhat 的性質和早期警告和預測的可能性。
Analyzing the
Past 攻擊後的分析:
Predicting the
Future OK,讓我們開始吧……
我們努力對攻擊情況做出合理的預測,期間 Honeynet 的兩位成員提出了兩個不同的方法,但是最終發現他們的結果是大同小異的,幾乎所有的入侵者都在他們實施真正攻擊前的兩到三天被發現。 使用統計學原理對事件做預警[Statistical Process Controls(SPC)]: 首先是非常基礎的統計學分析,類似於工廠裡對生產情況進行統計對比。這種方法雖然看起來相當簡單,但卻能夠精確地判斷出短時期內(三天會更短)對 Honeynet 可能發生的攻擊情況,簡單的操作如下:
在這裡,我們並沒有區分入侵嘗試及成功攻擊,只是在圖表畫出來後,再標記上成功及企圖的攻擊,所有的數據可以在 Honeynet 的網站上獲取。下面是我們的一些發現:
第二種方法對於第一種方法是一個有益的補充,比如它可以顯示出在有人違反 snort 的 rpc 規則後,大概多長時間系統遭攻陷,明確兩者間的關聯。在一段連續的時間內,有些簡單的模型可以對違反 rpc 規則與系統真正被攻陷間做出清晰的關聯。 從下面的圖表模型中我們可以看出,利用 rpc.statd 進行攻擊的行為其實早幾天就能被發現。橫座標表示日期,在這裡是從 1-180 天,向下的曲線通常表明有一些重要的事件發生,這能夠預報一些攻擊行為,比如在第 68 天我們受到攻擊之前的 10 天內,就出現了這樣的行為,而在其後又有三次向下的曲線,緊接著就是一次同樣的 rpc 攻擊發生在第 177 天。這裡我也不太瞭解向上的曲線代表什麼,但通常處在這種情況下,是一個平穩時期,沒有太多的意外情況發生。
需要說明的是,在這些分析模型中肯定會存在一些錯誤,我們需要更多的數據,以及對這些分析預測模型更完善的利用方式,這樣才能夠有效地得出攻擊預警的一些思路。 利用 ARIMA 模型找出攻擊前的特徵 另一個研究的領域是識別出某些類型的攻擊或者掃瞄存在著的特徵,這兩個事例都來自於我們 Honeynet 小組成員的 "每月掃瞄" 中,下面的圖形描述了在一個月中我們遭受的通訊埠掃瞄的數量。這裡我們很樂於回答的另一個問題是對於不同的掃瞄及準備攻擊的行為: "在一段時期內的數據收集之後,我們想要觀察什麼呢?" 在這個簡單的 ARIMA(回歸滑動平均模型,Auto Regression Integrated with Moving Averages)案例中,是直接按捕獲的數據資料進行分析的,ARIMA 是一個可以用在對一定時期內搜集的數據進行深度分析的基本模型,下面的圖表表明了在九月份我們遭受的通訊埠掃瞄的頻繁程度。
![]()
我們歡迎安全組織測試或者開發這樣的理論,並且將其應用於實際的統計分析上,對於不同的分析方法我們尤其感興趣。我們在這裡提供給大家的並不是最好的分析方法,事實上,一切研究都剛起步。從 2000 年 4 月起至 2001 年 2 月止 honeynet_data.tar.gz
結論
|
|
||||||||||||||||||||||||










