一种事件触发式的mtd防护系统及方法_2

文档序号:9202666阅读:来源:国知局
测包等类型的判别。如果判 定为正常系统业务连接请求数据包,则不做任何处理直接响应而不触发防护机制;如果判 定为旨在获取当前系统特性及对应特性值的探测包,则立刻触发防护机制,确保系统特性 信息的不外泄;
[002引所述指纹探测事件判定系统,其用于收集、存储和判断指纹探测的事件,在判定收 到了探测数据包时,首先在指纹探测事件集中比对,是否已在当前事件集中,如果已存在则 按当前事件的处理方法对应执行;如果未存在,则将探测包想要探测特性的值进行随机化 修改,然后将该种类型的探测行为定义一条新增事件记录并存储;
[0029] 所述特性值MTD修改系统,其用于在判定为指纹探测行为后,利用MTD思想,对被 探测部分特性的值在一定范围内执行随机化或布尔变换,然后将更改后的特性值封装成响 应数据包返回给指纹探测方。
[0030] 在特性值MTD修改系统在对特性值为布尔型时,不仅可W采用当前的非运算来更 改特性值,还可W采用非、异或等运算的随机化,使探测方更能对布尔型特性值指纹识别被 防护的操作系统。所述探测事件集如表1。
[0031] 表 1
[0032]
[0034] 本发明核屯、在于当前数据包是否属于探测包及属于哪种类型的探测。
[0035] 如图2所示,所述指纹探测包判定系统包括数据包解析模块、数据包类型判别模 块、数据包目标端口判别模块、数据包内容判别模块和数据包特征判别模块;所述数据包解 析模块是用于解析收到的请求数据包,拆开包的封装来查看数据包的包头、目的地址、目的 端口、数据包类型、数据包内容等,为后续判别的模块提供源数据;所述数据包类型判别模 块、数据包目标端口判别模块和数据包内容判别模块之间相互配合完成数据包是正常业务 包还是指纹探测数据包的判定,从而决定是否触发指纹探测事件集和MTD修改系统;所述 数据包特征判别模块是结合数据包类型判别模块、数据包目标端口判别模块和数据包内容 判别模块W及数据包特征判别模块等提供的源数据,判断当前指纹探测是属于哪种探测类 型。
[0036] 如图3所示,所述指纹探测事件判定系统包括探测类型判别模块、探测事件数据 库和探测事件分类模块;所述探测类型判别模块,对探测数据包按协议类型进行分类,类型 标签(tag)主要分为ICMP、IP、TCP和UDP四种,然后探测数据包传递给指纹探测事件判定 系统进行后续操作。所述探测事件数据库,事先存储好的IP、TCP、UDP和ICMP不同协议探 测的事件特征集;所述探测事件分类模块,用于将探测类型判别模块判断的数据与探测事 件数据库相匹配,如果与其中一项匹配成功,则执行该事件对应的MTD修改系统的执行步 骤,如果不能与其中一项匹配成功,则将当前探测类型按事件数据库的格式新增一条事件 规则,最后将本次探测类型所要探测的特性传递给下一步的特征值的MTD修改系统。
[0037] 如图4所示,所述特性值MTD修改系统包括对应特性的值更改模块;所述特征值的 MTD修改系统,是将当前探测包所要探测的特性值进行欺骗性修改,如果是一个数值,则在 指定范围内执行随机化;如果是一个布尔值,则将当前的布尔值进行非运算。最后将修改后 的结果按响应数据包格式封装,返回给指纹探测方。
[003引如图5所示,一种事件触发式的MTD防护方法,包括如下步骤:
[0039] 利用指纹探测包判定系统收到来自客户端发来的请求数据包时,进行对数据包是 属于正常业务数据包还是属于探测系统特性的指纹探测包等类型的判别,如果判定为正常 系统业务连接请求数据包,则不做任何处理直接响应而不触发防护机制;如果判定为旨在 获取当前系统特性及对应特性值的探测包,则立刻触发防护机制,确保系统特性信息的不 外泄;
[0040] 利用指纹探测事件判定系统收集、存储和判断指纹探测的事件,在判定收到了探 测数据包时,首先在指纹探测事件集中比对,是否已在当前事件集中,如果已存在则按当前 事件的处理方法对应执行;如果未存在,则将探测包想要探测特性的值进行随机化修改,然 后将该种类型的探测行为定义一条新增事件记录并存储;
[0041] 利用特性值MTD修改系统在判定为指纹探测行为后,利用MTD思想,对被探测部分 特性的值在一定范围内执行随机化或布尔变换,然后将更改后的特性值封装成响应数据包 返回给指纹探测方。
[0042] 如图6所示,所述数据包解析模块、数据包类型判别模块、数据包目标端口判别模 块和数据包内容判别模块之间相互配合完成数据包是正常业务数据包还是恶意探测包的 判定过程如下:
[0043] 步骤1. 1 ;数据包解析模块模块对数据包进行解封装;
[0044] 步骤1. 2 ;数据包类型判别模块对当前数据包是属于ICMP、TCP、UDP、IP中哪种协 议类型数据包进行判别。如果是ICMP协议,直接将当前数据包定义为探测包,执行步骤1. 5 并将当前探测包类型标签(tag)定义为ICMP;如果是IP协议,执行步骤1. 4的数据包内容 判别模块;如果是TCP或UDP协议,则执行步骤1. 3数据包目标端口判别模块;
[0045] 步骤1. 3 ;数据包目标端口判别模块对数据包中目标端口是否开放进行判别,如 果是开放,执行步骤1. 4数据包内容判别模块;如果是关闭的,则将当前数据包定义为探测 包,执行步骤1. 5,并根据协议类型将当前探测包类型标签(tag)定义为TCP或UDP;
[0046] 步骤1. 4 ;数据包内容判别模块对数据包中的数据部分进行判别,如果数据为空, 则将当前数据包定义为探测包,执行步骤1. 5 ;如果数据包不为空,则认为当前数据包为正 常的业务数据包并正常返回响应数据包;
[0047] 步骤1. 5 ;探测类型判别模块对探测数据包按协议类型进行分类,类型标签(tag) 主要分为ICMP、IP、TCP和UDP四种,然后探测数据包传递给指纹探测事件判定系统进行后 续操作。
[0048] 如图7所示,所述探测事件数据库,是已经事先存储好的IP、TCP、UDP和ICMP等不 同协议探测的事件特征集。所述探测事件分类模块,用于将探测类型判别模块判断的数据 与探测事件数据库相匹配,如果与其中一项匹配成功,则执行该事件对应的MTD修改系统 的执行步骤,如果不能与其中一项匹配成功,则将当前探测类型按事件数据库的格式新增 一条事件规则,最后将本次探测类型所要探测的特性传递给下一步的特征值的MTD修改系 统;
[0049] 所述一种指纹探测事件判定系统,其特征在于,所述探测事件分类模块与探测事 件数据库对当前探测数据包属于哪种探测事件进行判定的过程如下:
[0化0] 步骤2. 1 ;根据探测数据包的探测类型tag与探测事件数据库进行匹配,如果是已 知的探测事件,则执行步骤2. 2,如果是未知的探测事件,则将当前探测类型按事件数据库 的格式新增一条事件规则,最后将本次探测类型所要探测的特性传递给下一步的特征值的 MTD修改系统;
[0051] 步骤2. 2 ;根据步骤2. 1中的探测类型tag与探测事件数据库匹配判定当前探测 事件是当前数据库中包含已知的探测事件,执行一步switch匹配,根据不同类型的tag执 行相对应的MTD特性修改步骤;例如TCP探测事件,则执行将当前TCP中产生特性值的初始 序列号(ISN,initialsequencenumber)等执行MTD特性修改。
[005引如图8所示,所述特征值的MTD修改系统,是将当前探测包所要探测的特性值进行 欺骗性修改,如果是一个数值,则在指定范围内执行随
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1