发明名称 一种基于Web代理的间接分布式拒绝服务攻击抵御方法及系统
摘要 本发明涉及一种基于Web代理的间接分布式拒绝服务攻击抵御方法及系统。本发明通过提取proxy-to-server网络流的时空局地性来刻画proxy-to-server网络流的行为特性。通过非线性映射函数抑制小概率大值对有用信号的干扰。通过隐半马尔科夫模型(HsMM)构造proxy-to-server网络流的正常行为模型。利用模型得到的行为指标进行不同时间尺度下的正常度评估:长期行为评估与短期行为评估。对于被判定为异常的行为序列(HTTP请求序列),本发明采用“软控制”方法实施攻击响应。实施“软控制”的依据是代表代理正常行为的HsMM模型参数及结构指标。本发明所用来刻画proxy-to-server网络流的参量是时空局地性,它与目标服务器上的Web内容的变动无关;方法的检测性能是基于代理网络流的本质行为,与攻击流量的大小无关。该方法可以在攻击流消耗目标服务器资源之前实施攻击响应,因此可以有效实现早期检测。
申请公布号 CN102438025B 申请公布日期 2015.03.25
申请号 CN201210006766.1 申请日期 2012.01.10
申请人 中山大学 发明人 谢逸
分类号 H04L29/06(2006.01)I;H04L29/08(2006.01)I;H04L12/26(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 广州粤高专利商标代理有限公司 44102 代理人 邱奕才;禹小明
主权项 一种基于Web代理的间接分布式拒绝服务攻击抵御方法,其特征在于包括步骤S1:数据提取,接收web代理向目标服务器发送的请求,根据所接收的请求计算出其时空局地性值,对时空局地性值进行非线性映射处理后得到对应的观测向量序列,其中所述的时空局地性值由时间局地性值和空间局地性值组成;步骤S2:模型训练,对上述得到的观测向量序列采用隐半马尔科夫模型向前向后算法得出隐半马尔科夫模型参数,定义行为指标和结构指标用于衡量隐半马尔科夫模型的训练矢量序列中每个时间窗内代理行为的正常度,其中隐半马尔科夫模型的隐含状态包括正常态、过渡态、异常态;步骤S3:检测,对代理访问的检测包括长期行为正常度评估与短期行为正常度评估,长期行为正常度评估通过比较实测的行为指标和由上述训练数据集得到的行为指标分布的差异来判断长期行为是否为异常,短期行为正常度评估由行为指标的概率密度函数来判断短期行为是否为异常;步骤S4:控制,对上述被判断为异常的代理访问序列进行重构,重构后的代理请求序列被送到异常队列排队并等待目标服务器的响应,对于被判定为正常的代理请求序列则被送往正常队列排队,等待服务器响应;所述的时间局地性的提取方法如下:首先建立一个堆栈,当一个给定的Web代理发向服务器的P2S网络流中有一个HTTP请求访问目标服务器的一个文档f时,就在堆栈中搜索f,如果堆栈中能找到f,则把f的当前位置,即距离堆栈顶部的深度,记录下来作为当前HTTP请求对应的时间局地性值,然后把f从堆栈中抽出并放到该堆栈的顶部;如果堆栈中不包含f,则直接在堆栈顶部加入f,把该HTTP请求对应的时间局地性记为未定义或记为当前堆栈的深度;所述的空间局地性值的提取方法如下:使用O表示服务器上可以被访问的对象,设(a,b)∈O,<img file="FDA0000585060550000011.GIF" wi="92" he="90" />表示在第w个时间窗内a和b同时被访问的联合概率密度函数,<img file="FDA0000585060550000012.GIF" wi="498" he="92" />表示第w个时间窗内a和b的联合熵,用<img file="FDA0000585060550000013.GIF" wi="465" he="85" />表示在第w个时间窗内代理发向服务器的请求串,其中<img file="FDA0000585060550000021.GIF" wi="241" he="109" />用<img file="FDA0000585060550000022.GIF" wi="122" he="106" />表示第w个时间窗内第i个请求串的空间局地性,则可以得到:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msubsup><mi>d</mi><mrow><mo>(</mo><mi>w</mi><mo>,</mo><mi>i</mi><mo>)</mo></mrow><mi>S</mi></msubsup><mo>=</mo><mfrac><mn>1</mn><mrow><mo>|</mo><msub><mi>F</mi><mi>w</mi></msub><mo>|</mo></mrow></mfrac><munder><mi>&Sigma;</mi><mrow><mo>&ForAll;</mo><mi>j</mi><mo>&NotEqual;</mo><mi>i</mi></mrow></munder><msubsup><mi>e</mi><mrow><msup><msub><mi>f</mi><mi>i</mi></msub><mi>w</mi></msup><msubsup><mi>f</mi><mi>j</mi><mi>w</mi></msubsup></mrow><mi>w</mi></msubsup><mo>,</mo><mrow><mo>(</mo><msup><msub><mi>f</mi><mi>i</mi></msub><mi>w</mi></msup><mo>,</mo><msup><msub><mi>f</mi><mi>j</mi></msub><mi>w</mi></msup><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>F</mi><mi>w</mi></msub><mo>,</mo></mrow>]]></math><img file="FDA0000585060550000023.GIF" wi="1031" he="198" /></maths>把不同时间窗内不同序号的<img file="FDA0000585060550000024.GIF" wi="140" he="102" />串接起来,可以得到一个与HTTP请求串<img file="FDA0000585060550000025.GIF" wi="584" he="100" />对应的、完整的空间局地性值<img file="FDA0000585060550000026.GIF" wi="1048" he="135" />其中W表示时间窗口的总数;行为指标由下式定义:<img file="FDA0000585060550000027.GIF" wi="512" he="100" />其中T<sub>w</sub>和<img file="FDA0000585060550000028.GIF" wi="78" he="71" />分别表示第w个时间窗内代理的请求数和观测序列,<img file="FDA0000585060550000029.GIF" wi="75" he="73" />表示与<img file="FDA00005850605500000210.GIF" wi="70" he="75" />对应的最优的隐状态序列,用<img file="FDA00005850605500000211.GIF" wi="288" he="74" />表示<img file="FDA00005850605500000212.GIF" wi="70" he="76" />相对于给定模型λ的或然概率,通过训练得到模型参数λ后,<img file="FDA00005850605500000213.GIF" wi="79" he="76" />可以通过Viterbi算法或MAP算法推出,因此,对于包含W个时间窗的观测序列,得到对应的行为指标序列{BI<sub>1</sub>,BI<sub>2</sub>,...,BI<sub>W</sub>},{BI<sub>1</sub>,BI<sub>2</sub>,...,BI<sub>W</sub>}中的每一个元素看作是自独立同分布的随机变量,并遵循高斯分布,即<img file="FDA00005850605500000214.GIF" wi="350" he="83" />分布的参数<img file="FDA00005850605500000215.GIF" wi="210" he="76" />利用{BI<sub>1</sub>,BI<sub>2</sub>,...,BI<sub>W</sub>}和最大或然概率估计得到,结构指标由下式定义:<img file="FDA00005850605500000216.GIF" wi="425" he="154" />其中Num(i,w)表示在第w个时间窗内第i个隐状态产生的请求数,满足<img file="FDA00005850605500000217.GIF" wi="379" he="103" />且i∈M,然后可以计算出整个训练数据序列第i个隐状态的平均结构指标:<img file="FDA00005850605500000218.GIF" wi="448" he="141" />
地址 510275 广东省广州市海珠区新港西路135号