• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于DCA的主動安全防御算法

      2015-08-14 21:01:46張陽張琛唐朝京
      現(xiàn)代電子技術 2015年15期

      張陽+張琛+唐朝京

      摘 要:對于目前計算機防御技術的不成熟和日益突出的網(wǎng)絡安全問題,運用人工免疫中的DCA算法,提出一種以改進單分類器DCA算法為基礎的主動安全防御算法。DCA算法作為最新的人工免疫算法,以危險信號為基礎對異物進行識別,而主動安全DCA算法弱化了主觀人為因素對實驗結果的影響。對算法進行驗證,結果表明,該算法對于smurf攻擊具有較高的檢測率。

      關鍵詞: 危險理論; DCA算法; 主動安全防御; smurf攻擊

      中圖分類號: TN915.08?34 文獻標識碼: A 文章編號: 1004?373X(2015)15?0053?04

      Defense algorithm for active safety based on DCA

      ZHANG Yang, ZHANG Chen, TANG Chaojing

      (School of Electronic Science and Engineering, National University of Defense Technology, Changsha 410073, China)

      Abstract: Since the current computer defense technology is immature and the network security problem becomes more prominent, an defense algorithm for active safety based on the modified single classifier dendritic cell algorithm (DCA) is proposed. DCA is the latest artificial immune algorithm, which takes danger signal as the foundation to recognize foreign body. The active safety DCA weakened the subjective human factors influencing on the experimental results. In this paper, the algorithm is verified, and the verification results show that the algorithm has higher detection rate for the smurf attack.

      Keywords: danger theory; DCA; active safety defense; smurf attack

      0 引 言

      主動防御系統(tǒng)能夠自主識別影響主機正常運行的各種異常行為,相對于傳統(tǒng)的防護體系,需要較少或極少的人工干預,因此也相對比較智能。例如,主動安全防御系統(tǒng)通過對外部、內(nèi)部網(wǎng)絡入侵知識的獲取及運用,能夠自動發(fā)現(xiàn)網(wǎng)絡入侵行為;通過對本機系統(tǒng)調(diào)用及日志的查看,能夠識別出異常進程。

      然而,主動安全防御系統(tǒng)的研究也相對不是很成熟,隨著近年來人工智能算法的深入研究,主動安全防御技術也獲得了一些突破與進展,越來越多的學者把諸如蟻群算法、遺傳算法、神經(jīng)網(wǎng)絡和人工免疫等運用于防御系統(tǒng)。

      人工免疫算法在計算機安全方面的運用具有先天的優(yōu)勢,其模擬自然界生物的免疫進行異常檢測。本文將較新的DCA算法運用于主動安全系統(tǒng),結果表明,該算法具有較好的檢測效果。

      傳統(tǒng)的人工免疫算法基于自我/非我模型,有時也會對非入侵行為發(fā)出錯誤的報警信息,造成一定的誤檢和漏檢的發(fā)生。

      危險理論基于危險信號的識別與檢測技術,其中的關鍵技術是對危險信號的定義和提取工作。本文主要研究了危險理論中的DCA算法,首先根據(jù)攻擊等特點定義危險信號,以及DCA算法中的遷移閾值、權值矩陣等參數(shù)值,由于本文重在檢驗算法,基于篇幅考慮故將危險信號的提取部分略去,直接使用KDD Cup99數(shù)據(jù)集進行測試。

      鑒于算法的通用性,可以根據(jù)不同危險信號的定義和提取將該算法用于各種攻擊行為的檢測,其中包括網(wǎng)絡蠕蟲的檢測與防御技術。

      1 危險理論和DCA算法介紹

      1.1 危險理論

      傳統(tǒng)的自體/非自體理論對于一些現(xiàn)象解釋出現(xiàn)矛盾,比如,在懷孕、衰老等情況下自身發(fā)生變化,但并沒引起免疫應答。免疫系統(tǒng)對一些明顯發(fā)生細胞突變的腫瘤卻不發(fā)生排斥。太多的現(xiàn)象使人們感到“自我和非我”起碼不能完全決定機體的免疫應答。1994年Matzinger首先提出危險理論,她認為免疫系統(tǒng)所能區(qū)分的實際上是“從某些非我中區(qū)分出某些自我”,并且聲稱危險模式理論提出的不僅僅是一個新的概念,而且是一種避開區(qū)分自我和非我的方法。危險理論假定免疫系統(tǒng)的激活不是由非自體的檢測惟一決定,也不對一個潛在的入侵做出響應,直到危險被檢測到。結果顯示這些危險信號是由病原感染細胞的壞死導致的。危險信號的出現(xiàn)與被稱為抗原的潛在感染體分泌的蛋白質相結合,是引起HIS防御應答的必要條件。

      1.2 DCA理論

      樹突狀細胞(Dendritic Cell,DC)作為先天性免疫系統(tǒng)中專職的抗原提呈胞,能夠融合處理多種環(huán)境信號,并將信號與抗原相關聯(lián),分析得到抗原的異常指標。受DC功能的啟示,Greensmith等人通過對DC抗原提呈行為進行抽象建模設計實現(xiàn)了樹突狀細胞算法(Dendritic Cell Algorithm,DCA),開創(chuàng)了一種全新的免疫算法。

      DCA的基本原理就是仿真了生物免疫中DC狀態(tài)轉換的過程,把DC抽象為一個類似于信號處理器的數(shù)據(jù)結構,通過線性信號處理模型模擬DC的信號處理過程,對輸入信號進行計算得到輸出信號決定DC的狀態(tài)。

      輸入信號包括:

      (1) PAMP表示存在異常,PAMP的增強表明存在異常的可靠度增加;

      (2) DS表示可能存在異常,DS的增強表明存在異常的可能性增加,相比于PAMP的可靠度較低;

      (3) SS表示異常的可能性非常小,SS的增強表明正常的可能性增加,存在異常的可能性減少,用于抵消PAMP和DS的影響。

      IC用于放大前3種信號的影響。

      輸出信號包括:

      (1) 協(xié)同刺激分子csm(co?stimulatory molecules)用于決定DC是否進行狀態(tài)轉換;

      (2) 半成熟樹突狀細胞因子semi(semi?mature DC cytokines)表示抗原所處組織環(huán)境的安全程度;

      (3) 成熟樹突狀細胞因子mat(mature DC cytokines)表示抗原所處組織環(huán)境的危險程度。

      DC分化過程的抽象化表示[1],如圖1所示。

      2 基于DCA的主動防御算法的實現(xiàn)

      2.1 主動防御DCA算法流程及說明

      本實驗采用了樹突狀細胞算法[2]并進行了改進,為了盡可能減小人為主觀因素對結果的影響,算法對遷移閾值采用隨機選取,并通過多輪處理來修正結果。

      算法的偽代碼如下:

      輸入:抗原和經(jīng)過預處理的信號

      輸出:抗原類型和其MCAV值

      初始化DC種群,在一定范圍內(nèi)隨機選取遷移閾值;

      for 每輪處理 do

      for 每個抗原 do

      更新組織抗原向量和信號向量

      隨機從DC種群選取Mc個DC

      for 每個被選擇的DC do

      得到并存儲抗原;

      得到并存儲該抗原的三組預處理信號;

      由輸入信號計算得到輸出信號;

      if 累積Csm≥遷移閾值then

      if 累積Mat≥累積Semi then

      ContextValue=1;

      else

      ContextValue=0;

      end if

      DC遷移到淋巴結;

      組織中增加一個新DC;

      end if

      if ContextValue == 1 then

      更新抗原記錄;

      更新DC種群;

      end if

      end for

      end for

      end for

      for每個抗原 do

      計算抗原的MCAV值;

      對抗原進行標記處理;

      end if

      圖1 生物分化過程抽象模型

      2.2 數(shù)據(jù)預處理及說明

      為了檢驗模型設計,本文采用KDD Cup99數(shù)據(jù)集進行測試。數(shù)據(jù)來源于kddcup.data_10_percent文件,總共包括494 021條數(shù)據(jù),其中97 278條正常連接和396 743條攻擊,10%的子集與完整數(shù)據(jù)集保持相同的統(tǒng)計特性。

      考慮到原始數(shù)據(jù)有41個特征屬性,首先需要對數(shù)據(jù)集進行簡化處理。參照文獻[3],通過計算相應屬性間的信息熵,計算公式如下:

      [Gain(S,A)=Entropy(S)-v∈Values(A)SvSEntropy(Sv)]

      式中:[S]為正常/攻擊類型;[A]為屬性;Entropy是計算熵值。

      根據(jù)各個屬性間的信息熵計算結果,得到各個屬性與攻擊間的相關程度,選取部分屬性列舉見表1。

      表1 正常/攻擊類型與相關屬性

      [正常/攻擊類型\&相關屬性\&normal\&1,6,12,15,16,17,18,19,31,32,37\&smurf\&2,3,5,23,24,27,28,36,40,41\&neptune\&4,25,26,29,30,33,34,35,38,39\&]

      綜合考慮各個攻擊與屬性相關性[2],選取10個屬性值:12,23,24,25,26,29,31,32,38,40,作為下面檢測攻擊的數(shù)值進行計算。

      2.3 抗原及信號的定義

      本文將數(shù)據(jù)集的每一條記錄信息看作是一個抗原,由于算法中采用在(50,100)內(nèi)隨機選取遷移閾值,具有一定的隨機波形特性,運行結果進行了[L]輪(在程序中具體設置)計算后給出。

      DCA模型使用的信號是經(jīng)過預分類和預規(guī)格化的數(shù)據(jù)源。各種信號根據(jù)應用領域的相關知識預分類為PAMP,SS(安全信號),DS(危險信號),之后需進行預規(guī)格化,以取得預期的效果。本文將PAMP,SS,DS信號統(tǒng)一規(guī)格化到[0,100],規(guī)格化函數(shù)定義如下:

      [f(x)=0,x∈0,mxn-m×100,x∈m,n100,x∈n,+∞]

      式中:[x]為原始信號值,當[x∈[m,n]]時進行線性映射,[x]的最大值和最小值分別為100和0。

      定義抗原和信號如下:

      抗原:494 021個數(shù)據(jù)記錄;

      信號:

      PAMP(五個屬性):serror_rate(25),srv_serror_rate(26),same_srv_rate(29),dst_host_serror_rate(38),dst_host_rerror_rate(40);

      SS(三個屬性):logged_in(12),srv_diff_host_rate(31),dst_host_count(32);

      DS(兩個屬性):count(23),srv_count(24)。

      定義輸入到輸出信號的權值矩陣(可調(diào)整)見表2。

      表2 算法權值矩陣

      [\&PAMP\&DS\&SS\&Csm\&2\&0\&2\&Semi\&0\&0\&2\&Mat\&2\&1\&-2\&]

      3 測試結果及分析

      3.1 測試結果

      為了對主動防御DCA算法進行驗證,選取數(shù)據(jù)集的前10 000條記錄進行測試,前10 000條記錄中,smurf攻擊數(shù)據(jù)記錄從第7 794條記錄開始到第10 000條,其余均為正常數(shù)據(jù)記錄。算法測試結果如圖2所示。

      圖2是對kddcup.data_10_percent文件的前10 000個點測試的結果,分析原始數(shù)據(jù)可以看到,數(shù)據(jù)集從第7 794個數(shù)據(jù)點開始出現(xiàn)smurf攻擊,一直到第10 000個點。

      圖2 算法測試結果

      測試結果總體吻合,其中在前一部分出現(xiàn)了少部分噪點,說明算法還存在一定的誤差。通過分析數(shù)據(jù)集和輸出結果可得,結果在第7 794個點處準確地區(qū)分了攻擊的出現(xiàn),如圖3所示,這也在很大程度上看出了主動安全DCA算法對smurf攻擊的辨別比較準確。

      3.2 測試結果性能評估

      依據(jù)常用的單類分類問題的性能衡量指標的方法,下面對實驗數(shù)據(jù)進行準確的性能評估。分別計算實驗結果的檢測率(DR),誤報率(FPR)和漏報率(FNR),結果見表3。

      表3 測試性能評估數(shù)據(jù)表

      [Number\&Total\&TPs\&FPs\&TNs\&FNs\&\&10 000\&7 779\&8\&2173\&40\&Ratio\&TP\&FP\&TN\&FN\&\&\&0.998 973\&0.001 027\&0.981 925\&0.018 075\&\&Ratio\&DR\&FPR\&FNR\&\&\&\&0.981 925\&0.001 027\&0.018 075\&\&\&]

      由算法測試評估計算結果可知,該測試的DR達到了98.19%,對于smurf攻擊具有較高的檢測率,而算法的FPR和FNR分別為0.1%和1.8%,由此可見,該算法對于smurf攻擊的檢測很有效。

      圖3 測試攻擊開始放大圖

      4 結 語

      本文對DCA算法進行了研究及改進,并將其應用于主動安全防御系統(tǒng)。作為人工免疫的最新算法,DCA算法表現(xiàn)出了較高的準確率,而改進算法則運用隨機特性弱化了人為主觀因素對危險信號的影響,提高了算法的準確性。本文在后文給出了算法用于KDD Cup99數(shù)據(jù)集的測試結果及性能評估,結果表明,該算法對smurf攻擊具有較高的檢測率。

      鑒于算法的通用性,可以根據(jù)不同的危險信號的定義和提取而將該算法用于各種攻擊行為的檢測,其中包括網(wǎng)絡蠕蟲的檢測與防御等技術。

      參考文獻

      [1] ZANERO S. ULISSE, a network intrusion detection system [C]// Proceedings of 2008 the 4th Annual Workshop on Cyber Security and Information Intelligence Research. New York: ACM, 2008: 45?49.

      [2] GU F, GREENSMITH J, AICKELIN U. Further exploration of the dendritic cell algorithm [C]// Proceedings of 2008 International Conference on Artificial Immune Systems. Phuket: Springer Verlag, 2008: 142?153.

      [3] KAYACIK H G, ZINCIR?HEYWOOD A N, HEYWOOD M I. Selecting features for intrusion detection:a feature relevance analysis on KDD 99 intrusion detection datasets [C]// 2005 IEEE Third Annual Conference on Privacy, Security and Trust. New Brunswick: IEEE, 2005: 75?80.

      [4] NIEMI O P, LEVOMAKI L, MANNER M. Dismantling intrusion prevention systems [C]// Proceedings of 2012 ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication. New York: ACM, 2012: 285?286.

      [5] 盧天亮.基于人工免疫系統(tǒng)的惡意代碼檢測技術研究[D].北京:北京郵電大學,2013.

      [6] 王維,張鵬濤,譚營,等.一種基于人工兔疫和代碼相關性的計算機病毒特征提取方法[J].計算機學報,2011,34(2):204?215.

      南川市| 龙江县| 额敏县| 长丰县| 永德县| 临夏县| 台南市| 稷山县| 乃东县| 临夏县| 东方市| 安溪县| 独山县| 嘉黎县| 康马县| 宝兴县| 德令哈市| 富源县| 西峡县| 新乡县| 阳城县| 永靖县| 龙南县| 保德县| 武威市| 城口县| 峨边| 华蓥市| 泰顺县| 和政县| 柳州市| 正镶白旗| 察雅县| 新和县| 青州市| 堆龙德庆县| 荔浦县| 山阳县| 闻喜县| 高唐县| 大姚县|