一种基于端状态迁移的网络安全防御方法与流程

文档序号:11156603阅读:440来源:国知局
一种基于端状态迁移的网络安全防御方法与制造工艺

本发明属于计算机网络安全防护技术领域,尤其涉及一种基于端状态迁移的网络安全防御方法。



背景技术:

目前网络通讯是以最为常见的TCP/IP协议为基础,两端通讯的核心是双方的IP地址和端口号。服务端通常为固定IP和固定的监听端口,客户端通常具有固定或非固定IP和随机的访问端口。双方通讯时,客户端发起一个随机访问端口,向服务端IP和端口发起访问请求,其间可能经过多个路由器、代理的中转,但访问源和访问目标不变。服务器接收到客户端的访问请求后给予回应,建立双方通讯链路和会话,完成通讯。如客户端与服务端有路由、代理等中转,都会在其中保存会话信息,保证通讯进行。通讯完成后,会话撤销。这种传统安全防护都是基于固定服务地址和端口的防护,是被动的防御,难免被攻击者寻觅到可乘之机。



技术实现要素:

鉴于上述问题,本发明的目的在于提供一种基于端状态迁移的网络安全防御方法及装置,旨在解决现有计算机网络内通信双方地址、端口固定易被侦测、分析和攻击的技术问题。

所述基于端状态迁移的网络安全防御方法,适用于计算机信息网络,所述计算机信息网络包括若干客户端和若干服务端以及相应的客户端端状态迁移管理器和服务端端状态迁移管理器,其中所述客户端端状态迁移管理器用于负责客户端端状态、目的服务端端状态以及自身外网端状态的映射管理,所述服务端端状态迁移管理器部用于负责承载对外服务的端状态,完成对外服务端状态与实际服务端端状态之间的转换和映射,所述方法包括下述步骤:

客户端、服务端在会话准备阶段时建立时间同步;

从建立连接的时间开始,每经过一个时间间隔,客户端、服务端双方的端状态就发生一次迁移;

客户端需要向服务端发起服务请求时,客户端端状态迁移管理器根据端状态迁移算法进行自身外部端状态以及目的服务端端状态映射,选择映射后的目的服务端端状态空间,发起访问服务请求;

服务端端状态迁移管理器接收到服务请求后,判断是否属于开放的服务端端状态空间,如果是,则提供相应的服务;如果不是,则拒绝提供服务。

进一步的,所述客户端、服务端在会话准备阶段时建立时间同步步骤,具体包括:

客户端和服务端均配置络时间协议NTP服务器;

根据NTP协议,客户端和服务端直接进行设置实现双方时间同步。

进一步的,客户端需要向服务端发起服务请求时,客户端端状态迁移管理器根据端状态迁移算法进行自身外部端状态以及目的服务端端状态映射,选择映射后的目的服务端端状态空间,发起访问服务请求步骤,具体包括:

设置客户端端信息三元组M(客户端内部端状态信息εsrc,服务端外部端信息εdest,客户端外部端状态信息εmap),其中εmap和εdest同步迁移;

客户端需要向服务端发起服务请求时,客户端从一个新的内部端状态信息εsrc发出数据包到服务端外部端信息εdest,在经过客户端端状态迁移管理器的过程中,将客户端内部端状态信息εsrc替换为外部端状态信息εmap,并形成一条映射记录,用于记录相关的映射规则;

户端根据映射记录可以找到当前客户端内部端状态信息εsrc所对应的映射后的外部端状态信息εmap,然后根据εmap和εdest同步迁移,即可找到数据包所要发送服务端的服务端外部端信息εdest。

进一步的,所述服务端端状态迁移管理器接收到服务请求后,判断是否属于开放的服务端端状态空间,如果是,则提供相应的服务;如果不是,则拒绝提供服务步骤,具体包括:

设置服务端端信息三元组N(服务端内部端状态信息εin,客户端外部端状态信息εmap,服务端外部端状态信息空间集合εout);

每当接收到客户端发出数据包到服务端外部端状态信息εdest时,会经过服务端端状态迁移管理器,判断εdest是否属于εout,即判断当前时间是否在开放窗口内,如果是,允许访问建立会话连接,并将εdest映射为相应的εin,如果不是,则拒绝提供服务。

进一步的,所述服务端端状态迁移管理器接收到服务请求后,判断是否属于开放的服务端端状态空间,如果是,则提供相应的服务;如果不是,则拒绝提供服务步骤之后,还包括:

当服务端需要向客户端响应数据时,服务端端状态迁移管理器进行端状态信息转换,服务端端状态迁移管理器将内部端状态信息εin转换为εsrc,并返回响应数据包到客户端外部端状态信息εmap;

客户端端状态迁移管理器接收到服务端发送的响应数据包后,比较εmap是否为当前客户端端状态空间内地址和端口,如果是,端状态迁移管理器会在其映射中寻找一条可用的映射记录,来将外部数据包映射为客户端内部数据包,即将外部端状态信息εmap映射为内部端状态信息εsrc;如果不是,则舍弃。

本发明的有益效果是:本发明中,通信双方按照协定的策略随机地改变会话时的端状态(地址和端口)信息,从而防止被攻击者发现,破坏攻击者的攻击和干扰,主动防护网络通信过程中的安全。具体的,客户端端状态迁移管理器和服务端端状态迁移管理器采用基于时间同步的端状态迁移方法,控制客户端和服务端外部端状态迁移。通信双方协定一个共同的端状态迁移时间间隔,该时间间隔伪随机改变,从建立连接的时间开始,双方每过一个时间间隔,通信双方的端状态就发生一次迁移,对外呈现出网络中的多台不同机器在进行通信。即使是被攻击者所发现,由于其端状态都是动态变化的,等到攻击者有足够时间向服务端发起攻击时,主机的端状态已经发生了迁移,其攻击自然就失效。端状态迁移技术在主动防御网络安全方面具有良好的发展方向和应用前景。

附图说明

图1是计算机信息网络的结构图;

图2是本发明实施例提供的基于端状态迁移的网络安全防御方法的流程图;

图3是开放窗口示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供了一种基于端状态迁移的网络安全防御方法及装置,所述方法适用于计算机信息网络,如图1所示,所述计算机信息网络包括若干客户端1和若干服务端2以及相应的客户端端状态迁移管理器和服务端端状态迁移管理器,其中所述客户端端状态迁移管理器用于负责客户端端状态、目的服务端端状态以及自身外网端状态的映射管理,所述服务端端状态迁移管理器部用于负责承载对外服务的端状态,完成对外服务端状态与实际服务端端状态之间的转换和映射。所述客户端与服务端之间通过局域网或广域网互联。

客户端端状态迁移管理器部署于客户端,服务端端状态迁移管理器部署于服务器组中的一个服务端上,负责承载对外服务的端状态,完成对外服务端状态与实际服务端状态之间的转换和映射。需要说明的是,上述结构中仅列出了客户端与服务端会话的必要结构,但不否认该计算机信息网络还可以包括其他结构,比如防火墙、网关、数据库服务器、虚拟专网等。基于上述计算机信息网络,如图2所示,本实施例提供的基于端状态迁移的网络安全防御方法包括下述步骤:

步骤S1、客户端、服务端在会话准备阶段时建立时间同步。

本实施例中,首先客户端和服务端均配置络时间协议NTP服务器,通信双方采用NTP协议进行网内时间同步。NTP协议可以直接通过软件的方式在各种平台上实现,同步精度也较高,可以满足大量网络中存在的应用情形,其同步精度在局域网基本上可以达到1ms以内,而在广域网内也可以保持在50ms以内。对于本方案设定的端状态迁移时间间隔,NTP完全可以满足时间同步需要。

本发明支持互联网与局域网络。互联网可直接使用各类公共NTP服务进行时间同步。局域网络需架设NTP服务器提供内网时间同步服务,供客户端和服务端进行时间同步。NTP服务可使用Windows操作系统或Linux自带的NTP服务,也可使用第三方NTP服务程序,例如NTP。

为避免NTP服务器受到攻击而导致时间同步失效、进而导致地址端口跳变失败,可以在网内部署多套NTP服务器,提供分布式时间服务。

步骤S2、从建立连接的时间开始,每经过一个时间间隔,客户端、服务端双方的端状态就发生一次同步迁移。

该时间间隔伪随机改变,端状态迁移时间间隔设置是系统的核心参数,直接决定了迁移的效果。间隔设置过小,除了会加重服务端负载之外,还可能因时间窗口过小而导致大量通讯失败,造成丢包、重传等现象,轻则加重网络负载,重则导致通讯完全不可用;间隔设置过大,又可能为攻击者留下可乘之机,达不到主动防御的目标。

端状态信息包括IP地址和端口。每个设备有一个固定的内部端信息,以及一个变化的对外的外部端信息。客户端和服务端对外的端状态信息同步迁移。对外呈现出网络中的多台不同机器在进行通信。即使是被攻击者所发现,由于其端状态都是动态变化的,等到攻击者有足够时间向服务端发起攻击时,主机的端状态已经发生了迁移,其攻击自然就失效。

服务端端状态迁移管理器需先设置可用端口池,端口空间为2048-65530。支持填写例外,例如真实服务器的4000端口是真实服务端口、不可用于端口跳变,则在例外表中填写4000,跳变管理将不使用4000端口。端状态迁移的端口从端口池中选取,如图3所示,假设随机端口序列的一个时间片的持续时间为T,设置一个开放窗口,只有在开放窗口的时间内,才认为是开放的端状态空间。

本方案建议服务端在满足端口迁移空间的情况下,减少真实服务端口的开放路径,符合最小化原则。

根据常见TCP/IP协议通讯情况,本实施例中,在局域网中,将时间间隔设定在500毫秒到1秒,开放窗口设置为4倍的时间片时间,即当前开放的IP地址和端口继续开放到下一个时间片,总共持续4个时间片,在此期间的同步迁移均认为有效;对于广域网,可设置为1秒到4秒,开放窗口设置为4倍或6倍时间片,可根据网络通讯情况调整。

步骤S3、客户端需要向服务端发起服务请求时,客户端端状态迁移管理器根据端状态迁移算法进行自身外部端状态以及目的服务端端状态映射,选择映射后的目的服务端端状态空间,发起访问服务请求。

令A为端状态迁移可选择的IP地址集合,记为A={a1,a2,...,an},令P为端状态迁移可选择的端口集合,记为P={p0,p1,...,pm}。于是有,系统的端状态空间E为

令端状态ε为包含IP地址a和端口p的网络信息组合,记为ε(a,p)。一般,端状态迁移函数与设备主机时间、密钥息息相关,可以表示为时间和密钥的函数,记为ε=ε(a(t),p(t),key)。本实施例不限定具体的端状态迁移函数的内容,只要是与时间变化和密钥相关即可。

记服务端端状态εn∈E为E中第n个端状态信息,客户端端状态εm∈E为E中第m个端状态信息。服务端通过εn在某时间段为端状态信息为εm的客户端提供服务。或者,客户端通过εm在某时间段为端状态信息为εn的服务端提供服务。

定义客户端端状态映射规则为端信息三元组,记为M(εsrc,εdest,εmap),包括客户端内部端状态信息εsrc、服务端外部端状态信息εdest和客户端映射后的外部端状态信息εmap,εmap和εdest同步迁移。这里每当客户端从一个新的内部端状态信息εsrc发出数据包到服务端外部端信息εdest时,会在经过客户端端状态迁移管理器的过程中,将客户端内部端状态信息εsrc替换为外部端状态信息εmap,并形成一条映射记录,用于记录相关的映射规则,即记录εsrc→εmap。

因此客户端根据映射记录可以找到当前客户端内部端状态信息εsrc所对应的映射后的外部端状态信息εmap,然后根据εmap和εdest同步迁移信息,即可找到数据包所要发送服务端的服务端外部端信息εdest。

步骤S4、服务端端状态迁移管理器接收到服务请求后,判断是否属于开放的服务端端状态空间,如果是,则提供相应的服务;如果不是,则拒绝提供服务。

定义服务端端状态映射规则同样为端信息三元组,记为N(εin,εmap,εout),包括服务端内部端状态信息εin、客户端外部端状态信息εmap,服务端外部端状态信息空间集合εout。每当接收到客户端发出数据包到服务端外部端状态信息εdest时,会经过服务端端状态迁移管理器,判断εdest是否属于εout,其中,εout={ε|ε=ε(a(t),p(t),key),t∈[开放窗口时间]},即判断当前时间是否在开放窗口内,如果是,允许访问建立会话连接,并将εdest映射为相应的εin,即记录映射εdest→εin,而εmap和εdest是同步迁移改变的,具有一一对应关系,因此整个访问过程中,实现了根据εsrc查找εin,并由εin提供响应数据。如果不是,则拒绝访问。

步骤S5、当服务端需要向客户端响应数据时,服务端端状态迁移管理器进行端状态信息转换。

服务端端状态迁移管理器将内部端状态信息εin转换为εsrc,并返回响应数据包到客户端外部端状态信息εmap。

步骤S6、客户端端状态迁移管理器接收到服务端发送的响应数据包后,比较εmap是否为当前客户端端状态空间内地址和端口,如果是,端状态迁移管理器会在其映射中寻找一条可用的映射记录,来将外部数据包映射为客户端内部数据包,即将外部端状态信息εmap映射为内部端状态信息εsrc。如果不是,则舍弃。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1