Page 415 - 《软件学报》2025年第8期
P. 415

3838                                                       软件学报  2025  年第  36  卷第  8  期


                 检率. 这一缺陷产生的原因在于此类方法仅关注源目地址自身的变化, 未能利用源地址与目的地址熵的相关性, 从
                 而容易被网络中正常的熵值波动所影响.

                           ×10 4                                   ×10 4
                        8.5                                      8.5
                                                                        源地址熵
                        8.0                                      8.0    目的地址熵
                        7.5
                                                                 7.5
                       熵值计算结果  7.0                              熵值计算结果  7.0
                                                                 6.5
                        6.5
                        6.0
                                                  源地址熵           6.0
                        5.5                                      5.5
                                                  目的地址熵
                        5.0                                      5.0
                          0   20  40  60  80  100  120  140  160   0  20  40  60  80  100  120  140  160
                                      观察窗口序号                                  观察窗口序号
                                      (a) 安全状态                              (b) DDoS 攻击状态
                                               图 6 安全状态与      DDoS  攻击状态

                    为了解决这一问题, 本文采用基于熵差的             DDoS  检测机制. 首先将计算得到的源地址熵与目的地址熵记为                  S src
                   S dst , 通过分析源目地址的熵值之差, 可以判断当前窗口中是否含有                DDoS  攻击流量, 若之差超过预先设定的阈
                 和
                 值, 则认为当前的观察窗口中可能包含            DDoS  攻击流量, 这一过程可以由公式         (3) 表示.

                                                   {
                                                    S src −S dst > T S , DDoS
                                                                                                      (3)
                                                    S src −S dst ⩽ T S , Safe
                 其中,  T S  表示一个预先设定的固定阈值. 在此判别方式下, 熵值差仍可能会由于正常波动, 使得在个别时间点中正
                 常状态下的熵值差超过阈值或在受到攻击的状态下熵值差小于阈值. 为了避免这一现象所导致的假阳性与假阴性
                             a 个观察窗口中的熵差均高于阈值时, 观察窗口才会被认定为受到                     DDoS  攻击. 同理, 当该机制目
                 错误, 仅当连续
                 前认为网络正发生       DDoS  攻击时, 仅当连续    a 个观察窗口中的熵差均低于阈值时, 观察窗口才会被认定                  DDoS  攻
                 击结束, 回到正常状态, 否则将会保持原有的状态不变. 其中, 参数                a 的值可以根据具体网络状况由用户定义.

                 3.3   基于源目地址计数值差的攻击数据包过滤
                    基于熵差的     DDoS  攻击检测机制仅能实现观察窗口级的攻击检测, 无法查找到具体的被攻击主机                         IP  地址, 从
                 而难以进行有效的防御. 为解决这一问题, 在            DDoS  攻击检测机制检测到观察窗口发生            DDoS  攻击后, 利用网络中
                 的流量特征实现一种恶意流量分离机制, 从而实现对                 DDoS  攻击的防御. 从总体上看, 本文机制所采用的是一种两
                 段式的   DDoS  攻击检测与防御, 仅当基于熵差的检测机制报告               DDoS  攻击发生时才会启动恶意流量的分离. 相比
                 于原有的直接基于阈值的过滤方法            [39] , 通过两段式的配合避免了在      DDoS  攻击未发生时对合法流量产生的误检.
                    对于被攻击者的识别以及攻击流量的过滤问题, 采用了一种基于源目地址计数值差的攻击数据包过滤机制.
                 在  DDoS  攻击发生时网络中将新增大量僵尸主机产生的攻击流量, 此时可编程交换机中记录的源目                             IP  地址计数
                 值将会发生不对称的变化, 对于源地址, 新增的攻击流量在源                   IP  地址上的计数值会被大量攻击者分散, 每个攻击
                 者的源   IP  地址计数值不会产生大幅上升; 对于目的地址, 被攻击者               IP  地址的计数值会因为攻击流量的集中流入
                 而显著提升, 从而产生了源目地址计数不对称变化的现象. 为了衡量上述不对称变化特征, 针对某一对源目                                 IP  地
                 址的出现频次, 使用公式       (4) 衡量其不对称特征.

                                                                                                      (4)
                                                        D = k dst −k src
                 其中,  k dst  是该目的  IP  地址在当前观察窗口中的计数值,      k src  是当前窗口中源地址的计数值,      D 是两者之差. 与正常
                 状态下相比, 当目的      IP  地址受到  DDoS  攻击时, 其计数值会显著上升, 但对于源地址而言, 由于僵尸网络中大量主
                 机对攻击任务的分摊, 其计数值上升并不明显. 因此, 二者的计数值差在发生                      DDoS  攻击时将会升高. 根据这一原
                 理, 设计了如公式     (5) 所示的规则来判断目的       IP  地址是否受到攻击.
   410   411   412   413   414   415   416   417   418   419   420