入侵分析十誡

OneAPM官方技術部落格發表於2016-03-03

這些年來,筆者一直積極參與入侵檢測分析師的培訓和發展工作,同時還擔任了 SANS 資訊保安課程《深入入侵檢測》(編號503)的授課導師。筆者發現自己一直在不斷改變對有效入侵檢測的哲學認識。然而,不論該哲學如何演化,有些主題總是保持不變。

通過這些經歷,筆者創作了「入侵分析十誡」,這十誡所突出的核心主題不僅是筆者想要灌輸給接受培訓的分析師的,也是希望在自身的入侵分析工作中能融會貫通的。這十誡不是命令你們做什麼,不過因為恰好有十條,所以取了「十誡」 這個還算切合的標題。入侵分析十誡可能不適合你或你所在公司的目標,或者不符合你的個人風格,但是它們對筆者的確用處匪淺!

1、分析師,分析師,分析師!

對分析師來說最重要的是深刻認識到他們自身的重要性。分析師是安全防護的第一道防線——他們在電腦前時刻關注著安全威脅的存在。分析師能阻擋攻擊,也能防止被攻擊後的情況惡化。在大多數資訊保安事件的開始,分析師會根據入侵檢測系統的告警給出解決提示;在事件的結尾,分析師會輸入新的簽名並基於已知安全事件的資訊開發新的工具。從資訊保安事件的開始到結束,分析師從始至終無處不在。好吧,也許是有點戲劇性,但入侵分析師的重要性是不可低估的。

2、除非是你自己建立的資料包,否則沒有絕對的安全。

假設是分析的前提,記住這點非常重要。你在未來做出的大多數決定將基於一個資料包或者一條日誌項,然後根據在研究中積累的經驗對其反覆斟酌。事實是,網路資料流並不是分析師生成的,因此我們所做的每個決定只是基於部分資料做出的假設。不過別擔心,這沒有什麼不對的。問問你在化學界和物理界的同僚們,他們的絕大部分工作也都是在假設的基礎上開展的,然而他們也取得了巨大成功。重點是沒有什麼是絕對的。這個 IP 地址真的對應一個已知的合法主機麼?這個域名真的屬於 XYZ 公司嗎?這臺 DNS 伺服器真的應該和那個資料庫伺服器進行互動嗎?沒有什麼是絕對的,有的只是假設,正因為如此,請記住假設的東西是可以改變的。總是懷疑自己,並保持警覺。

3、留意你從資料中抽取的資訊是否準確。

分析師需要依賴資料來採取行動。這些資料可能來源於 PCAP 檔案、IIS 日誌檔案或者系統日誌檔案。由於你會花大量時間通過各種工具與這些資料進行互動,因此知曉這些工具如何和資料互動至關重要。你是否知道執行 Tcpdump 時如果不對引數另做規定,它將只能捕捉一個資料包中前 68 個位元組的資料?是否知道 Wireshark 顯示 TCP 資料包中的序列號和應答號時預設顯示的是相對值而非真實值?工具是人開發的,然而有時候工具的“功能特徵”會模糊資料並阻礙正確的分析。剛剛舉例的兩個“功能特徵”其實是很好用的,但是也應該對它們保持警覺,才可以在需要時獲取所有的包資料,或檢視真實的序列號和應答號。當我們從事一份依賴資料且資料至上的工作時,必須要理解工具和資料是如何進行互動的。

4、兩個人的審視好過只有一人的審視。

作者配有編輯,警察配有搭檔,核武器庫裡總安排兩個人,這都是有原因的。不管你多麼富有經驗或者表現得多好,你總會遺漏掉什麼。之所以需要兩個人是因為不同的人背景相異。筆者在政府部門工作,因此在檢查網路流量時,第一件事就是檢視其來源國和目的國。筆者曾和擁有系統管理背景的人共事,因此,他會在檢查網路流量時最先檢視埠號。筆者甚至和從事數值計算處理的人共事過,他就會先檢視包的大小。這表明我們的不同經歷塑造了差異化的策略。這意味著做數值處理的人能發現做系統管理員的人沒發現的資訊,而為政府部門工作的人能發現做數字處理的人沒有發現的資訊。不管什麼時候,有另個人來審視你面臨的問題總是一個不錯的主意。

5、不要邀請攻擊者共舞

這是我在最初啟動一臺 Snort(輕量級網路入侵檢測系統)感測器主機那天就深信不疑的事情。後來我在大師 Mike Poor 的 SANS 課程上聽到了他更為精妙的表述——永遠不要邀請攻擊者共舞。對分析師來說,採用一些超出常規的手段來偵查惡意 IP 地址是件極具誘惑的事情。相信我,有很多次我都想對給我傳送大量明顯刻意製作的 UDP 資料包的惡意 IP 進行埠掃描。每次有人試圖對筆者防護的網路進行 DoS 攻擊時,除了拿他們可憐的毫無戒備的 DSL 連線發洩憤怒之外別無他求。這裡的問題是,99% 的時候我們都不知道面臨的是誰或者是什麼工具。雖然你可能看到他們的掃描活動,但是產生這些網路流量的主機有可能被一個龐大組織甚至是另一個國家的軍事部門操縱。即使一個簡單的 ping 命令都會讓攻擊者知道你發現了他們的存在,從而促使他們改變攻擊策略,切換源主機,甚至加強攻擊力度。你不知道你的對手是誰,亦不知他們的動機或具備怎樣的能力,所以在網路防護時永遠不要挑釁他們。

6、情境很重要!

網路情境可以徹底改變你的監控和檢測能力。為了有效防禦,必須具備你所防護的網路的上下文。網路圖、伺服器列表及其作用、IP 地址的分配故障等等都會是你最好的夥伴。基本上,一切可以記錄網路資產、它們如何運作以及它們和其他網路資產如何關聯的文件都會在處理異常事件時派上用場。也許以你在公司中的職位,無法獲取這些資訊,或者這些資訊現在仍未整理出來,那麼你將會花很長時間讓同事下大力氣把這些文件整理出來。雖然這會很困難,但仍然值得你的爭取和堅持。不管你做出的努力是硬著頭皮向資訊長提出你的依據和要求,亦或只是請你的網路工程師們喝一杯他們最愛的酒精飲料,你終將獲得回報。

7、總的來說,資料包是合法的。

人生的終極爭論是人之初性本善還是性本惡。對於資料包來說,這個爭論同樣存在。作為分析師,你可以認為所有的資料包都是惡意的,也可以認為所有的資料包都是合法的。筆者注意到,大多數分析師在職業生涯的初期都抱著前一種觀點,然後很快就過渡到了後一種觀點。那是因為把網路流量中的所有資料都當成潛在的根級別入侵危害來處理是根本不可行的。如果你那樣做,你會因為花了整整一天卻只處理了一個告警而被解僱,或者被你自己折騰得精疲力竭。有些事要說清楚,資料包有合法的有惡意的,但事實的真相是網路流量中的絕大部分資料包都不是惡意的,因此在資料包被證實是惡意的之前,應當視作合法資料包來處理。

8、tcpdump 工具之於入侵分析猶如望遠鏡之於天文學

每當面試入門級以上的入侵分析師時,筆者都會讓他們描述下如何研究一個典型的入侵檢測系統告警。然而讓筆者感到沮喪的是這些人總是回答「我會使用 tcpdump、Wireshark Network Miner、 Netwitness、Arcsight、 Xeyes 等工具研究告警」,而不做進一步的具體解釋。雖然它們是進行入侵分析的工具和技術,但是入侵分析本身不是工具和技術,而是藝術。如果不是這樣的話,那麼在入侵分析的過程中人的存在就不是必要的了。一個高效的分析師應該明白,即使使用這些工具是工作最重要的部分,但它們也只是拼圖中的一塊塊碎片。就像天文學家的望遠鏡只是其工具庫中幫助他發現行星圍繞太陽運轉原理的一個工具一樣,Wireshark 也只是分析師的工具庫中幫助他找出是什麼讓一個資料包繞過防火牆規則的一個工具。從技術開始,加上一些工具和軟體,統觀大局,留意細節,再結合你從過往經歷中獲取的經驗,你將創造出一套屬於自己的入侵分析哲學。至此,你才將自己的分析上升到藝術的層面,從而使你極具價值,無法被機器取代。

9、有時候,我們會失敗。

不管你多麼努力阻止攻擊,總會出現你防護的網路被成功攻擊和入侵的情況。在現代資訊保安格局中,這是不可避免的,你能做的事情也很有限。這些時候,分析師很可能因為攻擊事件而受到批評。因此,你需要為防護失敗的發生做好準備。成功入侵事件不會因為如何發生而被記住,但會因為如何被應對、當機時長、丟失的資訊量以及其最終造成了公司多少財產損失而被記住。你能給管理者什麼建議以保證此類事件不再發生?你怎麼給自己的上司解釋這次入侵攻擊為什麼沒被成功檢測?你使用的工具有什麼缺陷?在發生入侵事件之前,這些問題都是無法得到充分的解答。但是你現在絕對可以開始考慮這些問題,並制定向關鍵人物回答以上問題的方案。你會措手不及,遭遇偷襲,但重要的是你不會表現出來並保持堅定嚴肅的姿態。這是決定你將獲得晉升還是被解僱的關鍵。

10、深度挖掘

到你光榮退休的那天,你需要代表榮譽的桂冠來證明你的功勳,而你的功勳應該是你盡職盡責並拼盡全力的事實。筆者在入侵分析方面的“座右銘”是“深度挖掘”。網路防護人員必須控制 65535 個埠,而攻擊者只需入侵一個就足夠了。網路防護人員必須保護一萬名使用者,而攻擊者只需要欺騙一個使用者就足夠了。網路防護人員必須檢查成百上千萬的資料包,而攻擊者只需要在一個資料包中隱藏好惡意資料就足夠了。你要怎麼樣做才能對資料有更敏銳的感知?你要鍛鍊什麼樣的能力,才能與攻擊者相抗衡?你有一種預感,事情並不像看到的那麼簡單,你要怎麼樣做才能深度挖掘?

原文連結:http://chrissanders.org/2011/01/the-10-commandments-of-intrusion-analysis/

如今,多樣化的攻擊手段層出不窮,傳統安全解決方案越來越難以應對網路安全攻擊。OneRASP 實時應用自我保護技術,可以為軟體產品提供精準的實時保護,使其免受漏洞所累。想閱讀更多技術文章,請訪問 OneAPM 官方技術部落格

本文轉自 OneAPM 官方部落格

相關文章