樊同科
(西安外事學院 計算機中心,陜西 西安 710077)
隨著計算機技術日新月異的發展,計算機應用領域的不斷擴大,計算機在給人們的工作和生活帶來便利的同時,計算機犯罪也成幾何上升趨勢,給國家、公司和人民群眾帶來了巨大的損失,且這些黑客的攻擊技術及手段是越來越高明,他們可以在完成攻擊后全面徹底地銷毀證據或者篡改證據,事后即便使用最好的數據分析工具也無能為力,從而造成的惡果是:知道入侵者有罪,卻缺乏證據起訴,無法定罪。在入侵檢測方法和技術研究中,人們發現生物免疫系統(Immune System,IS)與入侵檢測系統(Intrusion Detection System,IDS)具有驚人的相似性。本文介紹的基于生物免疫系統(Bio-logical Immune System,BIS)的網絡入侵動態取證方法,對于幾種不同網絡入侵,可以實時進行證據的提取,有效地得到證據。
現代免疫學認為,人體內存在一個負責免疫功能的完整解剖系統及免疫系統,與神經系統和內分泌系統等一樣,這個系統有著自身的運行機制,并可與其他系統相互配合、相互制約,共同維持機體在生命過程中總的生理平衡[1]。
免疫系統是抗擊病源入侵的首要防御系統,包括許多補體種類的免疫細胞及制造這些免疫細胞的免疫器官,為數最多的免疫細胞是淋巴細胞。它主要包括B細胞和T細胞,除了淋巴細胞外,還有其他種類的免疫細胞在免疫系統中發揮著不可忽視的作用。能被T細胞及B細胞識別并刺激T及B細胞進行特異性應答的病原體,稱為抗原。在骨髓中的B細胞和在胸腺中的T細胞從不活躍、未成熟經自體耐受發展為成熟的免疫細胞,一旦人體受到有關攻擊時,迅速產生免疫應答。人體免疫系統是由免疫分子、免疫細胞、免疫組織和免疫器官組成的復雜系統。免疫防御指機體排斥外源性抗原異物的能力。這是人體籍以自凈、不受外來物質干擾和保持物種純潔的生理機制。免疫防御的關鍵是辨別“自身細胞”(機體內的無害分子)和“非自身細胞”(有害的病原體和外源性異物)。由于蛋白質是生命物質的基本成分,細胞不同,蛋白質也不同,因此它具有很好的識別性[2]。
“計算機取證”最早是1991年由國際計算機專家協會(IACIS)在美國舉行的一次年會上提出的。對于這一術語,目前還沒有一個準確而統一的定義。計算機取證方面的專業及資深人士Judd Robbins[3]給出定義:計算機取證不過是簡單地將計算機調查和分析技術應用于對潛在的、有法律效力的證據的確定與獲取上。New Technologies[4]是一家專業的計算機緊急事件響應和計算機取證咨詢公司,它擴展了Judd的定義:計算機取證包括了對以磁介質編碼信息方式存儲的計算機證據的保護、確認、提取和歸檔。
從計算機取證的概念中,可以看到,電子證據是計算機取證的核心。電子證據,是指以數字形式保存于計算機主存儲器或外部存儲介質中,能夠證明案件真實情況的數據或信息。它的外在物質形式為存有能夠證明案件真實情況的電子物品或者電子記錄設備。電子數據最終表現為文檔、圖形、圖像、聲音等形式[5]。電子證據除了必須具備傳統證據的可信性、準確性、完整性及能被法庭認可外,還具有其自身特點:1)電子證據是不斷變化的,并且容易受到破壞;2)電子證據不是直觀的,不能直接被人眼所識別,必須借助一定的取證工具才能獲取;3)電子證據能夠被反復使用;4)電子證據存在的形式具有多樣性。
基于人工免疫的網絡入侵動態取證系統體系結構如圖1所示。其中MoC為實時監控細胞,執行入侵檢測、監控功能;DFoC為動態取證細胞,實施網絡入侵動態取證。MoC和DFoC分布于內部網絡中的每一臺主機,從而形成一個分布式網絡入侵監控系統。MoC對網絡消息進行抗原提呈,實施免疫執行過程;檢測該抗原是否為網絡入侵,一旦確定為入侵事件,MoC分泌激素——當前主機環境、攻擊類型、攻擊主機地址和端口號等,刺激DFoC,DFoC開始對攻擊現場進行證據的提取,完成入侵攻擊的一次監控及取證過程[6]。

圖1 基于免疫的動態取證體系結構
MoC是基于動態克隆選擇原理[7-8]設計的網絡入侵監控細胞模型,由3個功能模塊構成:抗原提呈、免疫執行及激素分泌。
1)抗原提呈 將網絡請求提呈為抗原表達式——96位的二進制串。抗原包括自體和非自體,初始自體集由系統管理員定義。自體一方面來自隨機產生的未成熟檢測細胞,并且這些未成熟檢測細胞在骨髓模型中耐受成功;另一方面來自經過免疫執行過程剩余的抗原,這些抗原也在骨髓模型中耐受成功。自體和執行免疫功能的檢測細胞等同,不斷新增,又不斷死亡,從而產生動態性。而網絡信息中提呈為抗原表達式之后,那些不認為是自體的就構成非自體集合。
2)免疫執行 整個監控細胞的免疫執行功能由其中的檢測細胞(包括記憶檢測細胞和成熟檢測細胞)完成,過程如圖2所示,分3步實現:①首先記憶檢測細胞對抗原進行匹配,將檢測出的非自體刪除,并且刪除檢測出自體抗原的記憶檢測細胞,即記憶檢測細胞本身的死亡。②記憶檢測細胞檢測完畢,將處理后的抗原提交給成熟檢測細胞進行檢測,成熟檢測細胞檢測刪除非自體抗原;那些未激活的、年齡過大的成熟檢測細胞將被刪除,即成熟檢測細胞的死亡;匹配次數達到一定閥值的成熟檢測細胞激活為記憶檢測細胞。③被檢測抗原在經過上述兩個過程檢測之后剩下的為自體抗原,這些抗原送入骨髓模型中進行耐受,一旦耐受成功,激活為成熟檢測細胞,耐受不成功則死亡。為了保證檢測細胞的數量,隨機生成一定數目的未成熟檢測細胞,在骨髓模型中耐受成功后成為成熟檢測細胞,參與到免疫執行的過程中。

圖2 免疫執行過程
3)激素分泌 檢測細胞(記憶或成熟檢測細胞)對抗原實施免疫執行過程時,一旦檢測 到為非自體,該抗原則為網絡入侵,立即分泌激素至DFoC,DFoC開始對攻擊現場進行證據的提取。
動態取證細胞DFoC如圖3所示,它包括證據收集、數字簽名和傳遞3個模塊。

圖3 DFoC結構模型
1)證據收集 實現對攻擊現場的快照,將得到的信息寫進預定義好的文件中,形成原始證據。
2)數字簽名 對待發送的數據使用國家許可的算法進行數字簽名并加蓋時間戳,確保證據的原始性和權威性。
3)傳遞模塊 將數字簽名后的證據經安全VPN通過DFoC傳送至證據服務器。
證據服務器是一臺可信度非常高的機器,并且極少人接觸證據服務器。通過VPN與內部網絡相連,確保其獨立性和安全性。證據服務器用來存放通過DFoC提取的證據,以供日后進行證據分析。當證據服務器接收到證據后,也要對證據進行一次數據簽名并加蓋時間戳,完成證據的移交過程。
網絡入侵動態取證系統可對網絡中發生的攻擊過程及攻擊行為進行記錄和分析,并確保記錄信息的真實性與完整性,滿足計算機取證的要求,據此找出入侵者或入侵的機器,并解釋入侵的過程,從而確定責任人,并在必要時,采取法律手段維護受害者的利益。
圖4為對主機進行smurf攻擊后得到的證據,大量存在echo請求和icmp回復。該攻擊向網絡廣播地址發送一個欺騙性Ping分組 (echo請求),并將源地址偽裝成目標主機地址,子網內所有主機都回應廣播包請求向目標主機發送echo響應信息,使該主機受到攻擊。

圖4 smurf攻擊證據
大量存在于系統中的DFoC可在入侵發生時迅速、準確、全面地提取入侵證據。由于在提取證據的過程中可及時地獲取攻擊的特征、類別、發生層面(用戶層、系統層、進程層和網絡層)及其狀態、發生地點、時間等,這些信息完整地記錄了入侵的時間、地點、過程等,同時DFoC還可及時地從整個網絡環境中獲取入侵前后的狀態,將這些信息有機整合、排序,可再現入侵過程。該方法具有自適應性、分布性、實時性和可靠性,是動態計算機取證的一個較好的解決方案。
[1]馬啟肇.醫學免疫學[M].北京:人民衛生出版社,2001.
[2]于善謙,王洪海,朱乃碩,等.免疫學導論[M].北京:高等教育出版社,1999:5-9.
[3]陳龍,王國胤.計算機取證技術綜述[J].重慶郵電學院學報:自然科學版,2005,17(6):736-741.
[4]許榕生,吳海燕,劉寶旭.計算機取證概述[J].計算機工程與運用,2001,21(37):7-8.
[5]靳慧云,黃步根.計算機犯罪偵查[M].北京:中國人民公安大學出版社,2003.
[6]李濤.計算機免疫學[M].北京:電子工業出版社,2004.
[7]Kim Jungwon,Bentley Peter.Towards an artificial immune system for network intrusion detection:an investigation of clonal selection with a negative selection operator[C]//Proceedings of the Congress on Evolutionary Computation(CEC),Seoul,Korea,2001(5):215-225.
[8]Kim Jungwon,Bentley Peter.A model of gene library evolution in the dynamic clonal selection algorithm[C]//Proceedings of the first International Conference on Artificial Immune System(ICARIS)Canterbury,2002(9):158-266.